<?xml version="1.0" encoding="utf-8" ?>
<otrs_package version="1.1">
    <Name>TimeAccounting</Name>
    <Version>11.1.1</Version>
    <Vendor>Rother OSS GmbH</Vendor>
    <URL>https://otobo.io/</URL>
    <License>GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007</License>
    <ChangeLog Date="2026-06-22 09:41:33" Version="11.1.1">Update to OTOBO 11.1.</ChangeLog>
    <Description Lang="en">A Time Registration Module.</Description>
    <Description Lang="de">Ein Zeiterfassungsmodul.</Description>
    <Description Lang="hu">Egy munkaidő nyilvántartás modul.</Description>
    <Framework Minimum="11.1.0">11.1.x</Framework>
    <IntroInstall Lang="en" Title="Install Information" Type="pre">

        &lt;br&gt;
        &lt;b&gt;WELCOME&lt;/b&gt;
        &lt;br&gt;
        &lt;br&gt;
        You are about to install the OTOBO package TimeAccounting.&lt;br&gt;
        &lt;br&gt;
        &lt;br&gt;
        ((enjoy))&lt;br&gt;
        &lt;br&gt;

    </IntroInstall>
    <IntroInstall Lang="de" Title="Installation Information" Type="pre">

        &lt;br&gt;
        &lt;b&gt;WILLKOMMEN&lt;/b&gt;
        &lt;br&gt;
        &lt;br&gt;
        Sie sind im Begriff das OTOBO-Paket TimeAccounting zu installieren.&lt;br&gt;
        &lt;br&gt;
        &lt;br&gt;
        ((enjoy))&lt;br&gt;
        &lt;br&gt;

    </IntroInstall>
    <IntroInstall Lang="es" Title="Install Information" Type="pre">

        &lt;br&gt;
        &lt;b&gt;BIENVENIDO&lt;/b&gt;
        &lt;br&gt;
        &lt;br&gt;
        Ud. está a punto de instalar el paquete Contabilidad de Tiempo de OTOBO.&lt;br&gt;
        &lt;br&gt;
        &lt;br&gt;
        ((enjoy))&lt;br&gt;
        &lt;br&gt;

    </IntroInstall>
    <IntroInstall Lang="hu" Title="Telepítési információk" Type="pre">

        &lt;br&gt;
        &lt;b&gt;ÜDVÖZÖLJÜK&lt;/b&gt;
        &lt;br&gt;
        &lt;br&gt;
        Ön a TimeAccounting OTOBO csomag telepítésére készül.&lt;br&gt;
        &lt;br&gt;
        &lt;br&gt;
        ((enjoy))&lt;br&gt;
        &lt;br&gt;

    </IntroInstall>
    <IntroInstall Lang="en" Title="Installation Information" Type="post">

        &lt;br&gt;
        &lt;b&gt;NOTICE&lt;/b&gt;
        &lt;br&gt;
        &lt;br&gt;
        In order to grant users access to the time accounting 'settings' and 'reporting' features, you need to add them as member to the group 'admin'.
        &lt;br&gt;
        &lt;br&gt;
        The menu items that were added by this package will be visible after you log-in to the system again.
        &lt;br&gt;
        &lt;br&gt;
        ((enjoy))&lt;br&gt;
        &lt;br&gt;

    </IntroInstall>
    <IntroInstall Lang="de" Title="Installation Information" Type="post">

        &lt;br&gt;
        &lt;b&gt;HINWEIS&lt;/b&gt;
        &lt;br&gt;
        &lt;br&gt;
        In order to grant users access to the time accounting 'settings' and 'reporting' features, you need to add them as member to the group 'admin'.
        &lt;br&gt;
        &lt;br&gt;
        Die von diesem Paket hinzugefügten Menü-Punkte sind erst nach einem erneuten Anmeldevorgang im System sichtbar.
        &lt;br&gt;
        &lt;br&gt;
        ((enjoy))&lt;br&gt;
        &lt;br&gt;

    </IntroInstall>
    <IntroInstall Lang="es" Title="Installation Information" Type="post">

        &lt;br&gt;
        &lt;b&gt;NOTA&lt;/b&gt;
        &lt;br&gt;
        &lt;br&gt;
        Para permitirles a los usuarios el acceso a las functiones de contabilidad de tiempo 'ajustes' y 'reporteo', es necesario añadirlos como miembros del grupo 'admin'.
        &lt;br&gt;
        &lt;br&gt;
        Los elementos del menú agregados por este paquete, serán visibles luego de reiniciar sesión en el sistema.
        &lt;br&gt;
        &lt;br&gt;
        ((enjoy))&lt;br&gt;
        &lt;br&gt;

    </IntroInstall>
    <IntroInstall Lang="hu" Title="Telepítési információk" Type="post">

        &lt;br&gt;
        &lt;b&gt;FIGYELMEZTETÉS&lt;/b&gt;
        &lt;br&gt;
        &lt;br&gt;
        Annak érdekében, hogy hozzáférést adjon a felhasználók számára az időelszámolás „beállítási” és „jelentési” funkcióihoz, hozzá kell adnia őket az „admin” csoporthoz tagként.
        &lt;br&gt;
        &lt;br&gt;
        Azok a menüpontok, amelyeket ez a csomag adott hozzá, azután lesznek láthatóak, miután ismét bejelentkezik a rendszerbe.
        &lt;br&gt;
        &lt;br&gt;
        ((enjoy))&lt;br&gt;
        &lt;br&gt;

    </IntroInstall>
    <IntroUninstall Lang="en" Title="Uninstallation Information" Type="pre">

        &lt;br&gt;
        &lt;b&gt;ATTENTION&lt;/b&gt;
        &lt;br&gt;
        &lt;br&gt;
        If you uninstall this package, all database tables that were created during installation will be deleted.
        All data from these tables will be irrevocably lost!
        &lt;br&gt;
        &lt;br&gt;
        The group 'time_accounting' that was created during package installation will be deactivated.
        You can activate this group again in the admin area.
        &lt;br&gt;
        &lt;br&gt;
        ((enjoy))&lt;br&gt;
        &lt;br&gt;

    </IntroUninstall>
    <IntroUninstall Lang="de" Title="Uninstallation Information" Type="pre">

        &lt;br&gt;
        &lt;b&gt;ACHTUNG&lt;/b&gt;
        &lt;br&gt;
        &lt;br&gt;
        Bei der Deinstallation werden die von diesem Paket angelegten Datenbank-Tabellen gelöscht.
        Alle darin enthaltenen Daten gehen unwiderruflich verloren!
        &lt;br&gt;
        &lt;br&gt;
        Die von diesem Paket angelegte Gruppe 'time_accounting' wird deaktiviert.
        Sie kann jederzeit im Admin-Bereich wieder aktiviert werden.
        &lt;br&gt;
        &lt;br&gt;
        ((enjoy))&lt;br&gt;
        &lt;br&gt;

    </IntroUninstall>
    <IntroUninstall Lang="es" Title="Uninstallation Information" Type="pre">

        &lt;br&gt;
        &lt;b&gt;ATTENTION&lt;/b&gt;
        &lt;br&gt;
        &lt;br&gt;
        Si usted desinstala este paquete, todas las tablas de la base de datos que se crearon durante la instalación del mismo, se eliminarán y
        el contenido de dichas tablas se perderá irrevocablemente.
        &lt;br&gt;
        &lt;br&gt;
        El grupo 'time_accounting' que se dió de alta durante la instalación del paquete, se desactivará.
        Es posible reactivar dicho grupo en el área de administración.
        &lt;br&gt;
        &lt;br&gt;
        ((enjoy))&lt;br&gt;
        &lt;br&gt;

    </IntroUninstall>
    <IntroUninstall Lang="hu" Title="Eltávolítási információk" Type="pre">

        &lt;br&gt;
        &lt;b&gt;FIGYELEM&lt;/b&gt;
        &lt;br&gt;
        &lt;br&gt;
        Ha eltávolítja ezt a csomagot, akkor a telepítés során létrehozott összes adatbázistábla törlésre kerül.
        Az ezekben a táblákban lévő összes adat visszavonhatatlanul el fog veszni!
        &lt;br&gt;
        &lt;br&gt;
        A csomagtelepítés során létrehozott „time_accounting” csoport ki lesz kapcsolva.
        Ezt a csoportot az adminisztrációs területen tudja ismét bekapcsolni.
        &lt;br&gt;
        &lt;br&gt;
        ((enjoy))&lt;br&gt;
        &lt;br&gt;

    </IntroUninstall>
    <IntroUpgrade Lang="en" Title="Upgrade Information" Type="pre">

        &lt;br&gt;
        &lt;b&gt;WELCOME&lt;/b&gt;
        &lt;br&gt;
        &lt;br&gt;
        You are about to upgrade the OTOBO package TimeAccounting.&lt;br&gt;
        &lt;br&gt;
        &lt;br&gt;
        ((enjoy))&lt;br&gt;
        &lt;br&gt;

    </IntroUpgrade>
    <IntroUpgrade Lang="de" Title="Upgrade Information" Type="pre">

        &lt;br&gt;
        &lt;b&gt;WILLKOMMEN&lt;/b&gt;
        &lt;br&gt;
        &lt;br&gt;
        Sie sind im Begriff das OTOBO-Paket TimeAccounting zu aktualisieren.&lt;br&gt;
        &lt;br&gt;
        &lt;br&gt;
        ((enjoy))&lt;br&gt;
        &lt;br&gt;

    </IntroUpgrade>
    <IntroUpgrade Lang="es" Title="Upgrade Information" Type="pre">

        &lt;br&gt;
        &lt;b&gt;BIENVENIDO&lt;/b&gt;
        &lt;br&gt;
        &lt;br&gt;
        Ud. está a punto de actualizar el paquete Contabilidad de Tiempo de OTOBO.&lt;br&gt;
        &lt;br&gt;
        &lt;br&gt;
        ((enjoy))&lt;br&gt;
        &lt;br&gt;

    </IntroUpgrade>
    <IntroUpgrade Lang="hu" Title="Frissítési információk" Type="pre">

        &lt;br&gt;
        &lt;b&gt;ÜDVÖZÖLJÜK&lt;/b&gt;
        &lt;br&gt;
        &lt;br&gt;
        Ön a TimeAccounting OTOBO csomag frissítésére készül.&lt;br&gt;
        &lt;br&gt;
        &lt;br&gt;
        ((enjoy))&lt;br&gt;
        &lt;br&gt;

    </IntroUpgrade>
    <PackageMerge Name="TimeAccountingTicketTimeUnitsSync" TargetVersion="10.1.1"></PackageMerge>
    <CodeInstall Type="post">

        # create the package name
        my $CodeModule = 'var::packagesetup::' . $Param{Structure}-&gt;{Name}-&gt;{Content};

        $Kernel::OM-&gt;Get($CodeModule)-&gt;CodeInstall();
    </CodeInstall>
    <CodeUpgrade Type="post" Version="4.0.91">

        # create the package name
        my $CodeModule = 'var::packagesetup::' . $Param{Structure}-&gt;{Name}-&gt;{Content};

        $Kernel::OM-&gt;Get($CodeModule)-&gt;CodeUpgradeFromLowerThan_4_0_91();
    </CodeUpgrade>
    <CodeUpgrade Type="post" Version="5.0.92">

        # create the package name
        my $CodeModule = 'var::packagesetup::' . $Param{Structure}-&gt;{Name}-&gt;{Content};

        $Kernel::OM-&gt;Get($CodeModule)-&gt;CodeUpgradeFromLowerThan_5_0_92();
    </CodeUpgrade>
    <CodeUpgrade Type="post" Version="10.1.2">

        # create the package name
        my $CodeModule = 'var::packagesetup::' . $Param{Structure}-&gt;{Name}-&gt;{Content};

        $Kernel::OM-&gt;Get($CodeModule)-&gt;CodeUpgradeFromLowerThan_10_1_2();
    </CodeUpgrade>
    <CodeUninstall Type="pre">

        # create the package name
        my $CodeModule = 'var::packagesetup::' . $Param{Structure}-&gt;{Name}-&gt;{Content};

        $Kernel::OM-&gt;Get($CodeModule)-&gt;CodeUninstall();
    </CodeUninstall>
    <BuildCommitID>97ccd8c94f6ef9c3586f909a0156bf0a95ee4fc7</BuildCommitID>
    <BuildDate>2026-06-22 09:41:36</BuildDate>
    <BuildHost>opms.rother-oss.com</BuildHost>
    <Filelist>
        <File Location="doc/timeaccounting-database.png" Permission="660" Encode="Base64">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</File>
        <File Location="Kernel/Config/Files/XML/TimeAccounting.xml" Permission="660" Encode="Base64">PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiID8+CjxvdG9ib19jb25maWcgdmVyc2lvbj0iMi4wIiBpbml0PSJBcHBsaWNhdGlvbiI+CiAgICA8U2V0dGluZyBOYW1lPSJGcm9udGVuZDo6TW9kdWxlIyMjQWdlbnRUaW1lQWNjb3VudGluZ0VkaXQiIFJlcXVpcmVkPSIwIiBWYWxpZD0iMSI+CiAgICAgICAgPERlc2NyaXB0aW9uIFRyYW5zbGF0YWJsZT0iMSI+RnJvbnRlbmQgbW9kdWxlIHJlZ2lzdHJhdGlvbiBmb3IgdGhlIGFnZW50IGludGVyZmFjZS48L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPkZyb250ZW5kOjpBZ2VudDo6TW9kdWxlUmVnaXN0cmF0aW9uPC9OYXZpZ2F0aW9uPgogICAgICAgIDxWYWx1ZT4KICAgICAgICAgICAgPEl0ZW0gVmFsdWVUeXBlPSJGcm9udGVuZFJlZ2lzdHJhdGlvbiI+CiAgICAgICAgICAgICAgICA8SGFzaD4KICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9Ikdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgPEFycmF5PgogICAgICAgICAgICAgICAgICAgICAgICA8L0FycmF5PgogICAgICAgICAgICAgICAgICAgIDwvSXRlbT4KICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9Ikdyb3VwUm8iPgogICAgICAgICAgICAgICAgICAgICAgICA8QXJyYXk+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvQXJyYXk+CiAgICAgICAgICAgICAgICAgICAgPC9JdGVtPgogICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iRGVzY3JpcHRpb24iIFRyYW5zbGF0YWJsZT0iMSI+VGltZSBhY2NvdW50aW5nIGVkaXQuPC9JdGVtPgogICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iTmF2QmFyTmFtZSI+VGltZUFjY291bnRpbmc8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJUaXRsZSIgVHJhbnNsYXRhYmxlPSIxIj5FZGl0PC9JdGVtPgogICAgICAgICAgICAgICAgPC9IYXNoPgogICAgICAgICAgICA8L0l0ZW0+CiAgICAgICAgPC9WYWx1ZT4KICAgIDwvU2V0dGluZz4KICAgIDxTZXR0aW5nIE5hbWU9IkxvYWRlcjo6TW9kdWxlOjpBZ2VudFRpbWVBY2NvdW50aW5nRWRpdCMjIzAwMi1UaW1lQWNjb3VudGluZyIgUmVxdWlyZWQ9IjAiIFZhbGlkPSIxIj4KICAgICAgICA8RGVzY3JpcHRpb24gVHJhbnNsYXRhYmxlPSIxIj5Mb2FkZXIgbW9kdWxlIHJlZ2lzdHJhdGlvbiBmb3IgdGhlIGFnZW50IGludGVyZmFjZS48L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPkZyb250ZW5kOjpBZ2VudDo6TW9kdWxlUmVnaXN0cmF0aW9uOjpMb2FkZXI8L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SGFzaD4KICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iQ1NTIj4KICAgICAgICAgICAgICAgICAgICA8QXJyYXk+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtPlRpbWVBY2NvdW50aW5nLkRlZmF1bHRzLmNzczwvSXRlbT4KICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0+VGltZUFjY291bnRpbmcuVGFibGUuY3NzPC9JdGVtPgogICAgICAgICAgICAgICAgICAgIDwvQXJyYXk+CiAgICAgICAgICAgICAgICA8L0l0ZW0+CiAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IkphdmFTY3JpcHQiPgogICAgICAgICAgICAgICAgICAgIDxBcnJheT4KICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0+VGltZUFjY291bnRpbmcuQWdlbnQuanM8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtPlRpbWVBY2NvdW50aW5nLkFnZW50LkNvbmZpcm1hdGlvbkRpYWxvZy5qczwvSXRlbT4KICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0+VGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzLmpzPC9JdGVtPgogICAgICAgICAgICAgICAgICAgIDwvQXJyYXk+CiAgICAgICAgICAgICAgICA8L0l0ZW0+CiAgICAgICAgICAgIDwvSGFzaD4KICAgICAgICA8L1ZhbHVlPgogICAgPC9TZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iRnJvbnRlbmQ6Ok5hdmlnYXRpb24jIyNBZ2VudFRpbWVBY2NvdW50aW5nRWRpdCMjIzAwMi1UaW1lQWNjb3VudGluZyIgUmVxdWlyZWQ9IjAiIFZhbGlkPSIxIj4KICAgICAgICA8RGVzY3JpcHRpb24gVHJhbnNsYXRhYmxlPSIxIj5NYWluIG1lbnUgaXRlbSByZWdpc3RyYXRpb24uPC9EZXNjcmlwdGlvbj4KICAgICAgICA8TmF2aWdhdGlvbj5Gcm9udGVuZDo6QWdlbnQ6Ok1vZHVsZVJlZ2lzdHJhdGlvbjo6TWFpbk1lbnU8L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8QXJyYXk+CiAgICAgICAgICAgICAgICA8RGVmYXVsdEl0ZW0gVmFsdWVUeXBlPSJGcm9udGVuZE5hdmlnYXRpb24iPgogICAgICAgICAgICAgICAgICAgIDxIYXNoPgogICAgICAgICAgICAgICAgICAgIDwvSGFzaD4KICAgICAgICAgICAgICAgIDwvRGVmYXVsdEl0ZW0+CiAgICAgICAgICAgICAgICA8SXRlbT4KICAgICAgICAgICAgICAgICAgICA8SGFzaD4KICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJHcm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QXJyYXk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0FycmF5PgogICAgICAgICAgICAgICAgICAgICAgICA8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iR3JvdXBSbyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QXJyYXk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0FycmF5PgogICAgICAgICAgICAgICAgICAgICAgICA8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iRGVzY3JpcHRpb24iIFRyYW5zbGF0YWJsZT0iMSI+VGltZSBhY2NvdW50aW5nLjwvSXRlbT4KICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJOYW1lIiBUcmFuc2xhdGFibGU9IjEiPlRpbWUgQWNjb3VudGluZzwvSXRlbT4KICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJMaW5rIj5BY3Rpb249QWdlbnRUaW1lQWNjb3VudGluZ0VkaXQ8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iTGlua09wdGlvbiI+PC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9Ik5hdkJhciI+VGltZUFjY291bnRpbmc8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iVHlwZSI+TWVudTwvSXRlbT4KICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJCbG9jayI+SXRlbUFyZWE8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iQWNjZXNzS2V5Ij48L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iUHJpbyI+NjAwMDwvSXRlbT4KICAgICAgICAgICAgICAgICAgICA8L0hhc2g+CiAgICAgICAgICAgICAgICA8L0l0ZW0+CiAgICAgICAgICAgICAgICA8SXRlbT4KICAgICAgICAgICAgICAgICAgICA8SGFzaD4KICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJHcm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QXJyYXk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0FycmF5PgogICAgICAgICAgICAgICAgICAgICAgICA8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iR3JvdXBSbyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QXJyYXk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0+PC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9BcnJheT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IkRlc2NyaXB0aW9uIiBUcmFuc2xhdGFibGU9IjEiPkVkaXQgdGltZSByZWNvcmQuPC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9Ik5hbWUiIFRyYW5zbGF0YWJsZT0iMSI+RWRpdDwvSXRlbT4KICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJMaW5rIj5BY3Rpb249QWdlbnRUaW1lQWNjb3VudGluZ0VkaXQ8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iTGlua09wdGlvbiI+PC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9Ik5hdkJhciI+VGltZUFjY291bnRpbmc8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iVHlwZSI+PC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IkJsb2NrIj48L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iQWNjZXNzS2V5Ij48L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iUHJpbyI+MjAwPC9JdGVtPgogICAgICAgICAgICAgICAgICAgIDwvSGFzaD4KICAgICAgICAgICAgICAgIDwvSXRlbT4KICAgICAgICAgICAgPC9BcnJheT4KICAgICAgICA8L1ZhbHVlPgogICAgPC9TZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iRnJvbnRlbmQ6Ok1vZHVsZSMjI0FnZW50VGltZUFjY291bnRpbmdPdmVydmlldyIgUmVxdWlyZWQ9IjAiIFZhbGlkPSIxIj4KICAgICAgICA8RGVzY3JpcHRpb24gVHJhbnNsYXRhYmxlPSIxIj5Gcm9udGVuZCBtb2R1bGUgcmVnaXN0cmF0aW9uIGZvciB0aGUgYWdlbnQgaW50ZXJmYWNlLjwvRGVzY3JpcHRpb24+CiAgICAgICAgPE5hdmlnYXRpb24+RnJvbnRlbmQ6OkFnZW50OjpNb2R1bGVSZWdpc3RyYXRpb248L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SXRlbSBWYWx1ZVR5cGU9IkZyb250ZW5kUmVnaXN0cmF0aW9uIj4KICAgICAgICAgICAgICAgIDxIYXNoPgogICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iR3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICA8QXJyYXk+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvQXJyYXk+CiAgICAgICAgICAgICAgICAgICAgPC9JdGVtPgogICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iR3JvdXBSbyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxBcnJheT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9BcnJheT4KICAgICAgICAgICAgICAgICAgICA8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJEZXNjcmlwdGlvbiIgVHJhbnNsYXRhYmxlPSIxIj5UaW1lIGFjY291bnRpbmcgb3ZlcnZpZXcuPC9JdGVtPgogICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iTmF2QmFyTmFtZSI+VGltZUFjY291bnRpbmc8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJUaXRsZSIgVHJhbnNsYXRhYmxlPSIxIj5PdmVydmlldzwvSXRlbT4KICAgICAgICAgICAgICAgIDwvSGFzaD4KICAgICAgICAgICAgPC9JdGVtPgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+CiAgICA8U2V0dGluZyBOYW1lPSJMb2FkZXI6Ok1vZHVsZTo6QWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3IyMjMDAyLVRpbWVBY2NvdW50aW5nIiBSZXF1aXJlZD0iMCIgVmFsaWQ9IjEiPgogICAgICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPkxvYWRlciBtb2R1bGUgcmVnaXN0cmF0aW9uIGZvciB0aGUgYWdlbnQgaW50ZXJmYWNlLjwvRGVzY3JpcHRpb24+CiAgICAgICAgPE5hdmlnYXRpb24+RnJvbnRlbmQ6OkFnZW50OjpNb2R1bGVSZWdpc3RyYXRpb246OkxvYWRlcjwvTmF2aWdhdGlvbj4KICAgICAgICA8VmFsdWU+CiAgICAgICAgICAgIDxIYXNoPgogICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJDU1MiPgogICAgICAgICAgICAgICAgICAgIDxBcnJheT4KICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0+VGltZUFjY291bnRpbmcuRGVmYXVsdHMuY3NzPC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbT5UaW1lQWNjb3VudGluZy5UYWJsZS5jc3M8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgPC9BcnJheT4KICAgICAgICAgICAgICAgIDwvSXRlbT4KICAgICAgICAgICAgPC9IYXNoPgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+CiAgICA8U2V0dGluZyBOYW1lPSJGcm9udGVuZDo6TmF2aWdhdGlvbiMjI0FnZW50VGltZUFjY291bnRpbmdPdmVydmlldyMjIzAwMi1UaW1lQWNjb3VudGluZyIgUmVxdWlyZWQ9IjAiIFZhbGlkPSIxIj4KICAgICAgICA8RGVzY3JpcHRpb24gVHJhbnNsYXRhYmxlPSIxIj5NYWluIG1lbnUgaXRlbSByZWdpc3RyYXRpb24uPC9EZXNjcmlwdGlvbj4KICAgICAgICA8TmF2aWdhdGlvbj5Gcm9udGVuZDo6QWdlbnQ6Ok1vZHVsZVJlZ2lzdHJhdGlvbjo6TWFpbk1lbnU8L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8QXJyYXk+CiAgICAgICAgICAgICAgICA8RGVmYXVsdEl0ZW0gVmFsdWVUeXBlPSJGcm9udGVuZE5hdmlnYXRpb24iPgogICAgICAgICAgICAgICAgICAgIDxIYXNoPgogICAgICAgICAgICAgICAgICAgIDwvSGFzaD4KICAgICAgICAgICAgICAgIDwvRGVmYXVsdEl0ZW0+CiAgICAgICAgICAgICAgICA8SXRlbT4KICAgICAgICAgICAgICAgICAgICA8SGFzaD4KICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJHcm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QXJyYXk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0FycmF5PgogICAgICAgICAgICAgICAgICAgICAgICA8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iR3JvdXBSbyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QXJyYXk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0+PC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9BcnJheT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IkRlc2NyaXB0aW9uIiBUcmFuc2xhdGFibGU9IjEiPk92ZXJ2aWV3LjwvSXRlbT4KICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJOYW1lIiBUcmFuc2xhdGFibGU9IjEiPk92ZXJ2aWV3PC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IkxpbmsiPkFjdGlvbj1BZ2VudFRpbWVBY2NvdW50aW5nT3ZlcnZpZXc8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iTGlua09wdGlvbiI+PC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9Ik5hdkJhciI+VGltZUFjY291bnRpbmc8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iVHlwZSI+PC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IkJsb2NrIj48L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iQWNjZXNzS2V5Ij48L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iUHJpbyI+MTAwPC9JdGVtPgogICAgICAgICAgICAgICAgICAgIDwvSGFzaD4KICAgICAgICAgICAgICAgIDwvSXRlbT4KICAgICAgICAgICAgPC9BcnJheT4KICAgICAgICA8L1ZhbHVlPgogICAgPC9TZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iRnJvbnRlbmQ6Ok1vZHVsZSMjI0FnZW50VGltZUFjY291bnRpbmdTZXR0aW5nIiBSZXF1aXJlZD0iMCIgVmFsaWQ9IjEiPgogICAgICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPkZyb250ZW5kIG1vZHVsZSByZWdpc3RyYXRpb24gZm9yIHRoZSBhZ2VudCBpbnRlcmZhY2UuPC9EZXNjcmlwdGlvbj4KICAgICAgICA8TmF2aWdhdGlvbj5Gcm9udGVuZDo6QWdlbnQ6Ok1vZHVsZVJlZ2lzdHJhdGlvbjwvTmF2aWdhdGlvbj4KICAgICAgICA8VmFsdWU+CiAgICAgICAgICAgIDxJdGVtIFZhbHVlVHlwZT0iRnJvbnRlbmRSZWdpc3RyYXRpb24iPgogICAgICAgICAgICAgICAgPEhhc2g+CiAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJHcm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxBcnJheT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtPmFkbWluPC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8L0FycmF5PgogICAgICAgICAgICAgICAgICAgIDwvSXRlbT4KICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9Ikdyb3VwUm8iPgogICAgICAgICAgICAgICAgICAgICAgICA8QXJyYXk+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvQXJyYXk+CiAgICAgICAgICAgICAgICAgICAgPC9JdGVtPgogICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iRGVzY3JpcHRpb24iIFRyYW5zbGF0YWJsZT0iMSI+VGltZSBhY2NvdW50aW5nIHNldHRpbmdzLjwvSXRlbT4KICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9Ik5hdkJhck5hbWUiPlRpbWVBY2NvdW50aW5nPC9JdGVtPgogICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iVGl0bGUiIFRyYW5zbGF0YWJsZT0iMSI+U2V0dGluZ3M8L0l0ZW0+CiAgICAgICAgICAgICAgICA8L0hhc2g+CiAgICAgICAgICAgIDwvSXRlbT4KICAgICAgICA8L1ZhbHVlPgogICAgPC9TZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iTG9hZGVyOjpNb2R1bGU6OkFnZW50VGltZUFjY291bnRpbmdTZXR0aW5nIyMjMDAyLVRpbWVBY2NvdW50aW5nIiBSZXF1aXJlZD0iMCIgVmFsaWQ9IjEiPgogICAgICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPkxvYWRlciBtb2R1bGUgcmVnaXN0cmF0aW9uIGZvciB0aGUgYWdlbnQgaW50ZXJmYWNlLjwvRGVzY3JpcHRpb24+CiAgICAgICAgPE5hdmlnYXRpb24+RnJvbnRlbmQ6OkFnZW50OjpNb2R1bGVSZWdpc3RyYXRpb246OkxvYWRlcjwvTmF2aWdhdGlvbj4KICAgICAgICA8VmFsdWU+CiAgICAgICAgICAgIDxIYXNoPgogICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJDU1MiPgogICAgICAgICAgICAgICAgICAgIDxBcnJheT4KICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0+VGltZUFjY291bnRpbmcuRGVmYXVsdHMuY3NzPC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbT5UaW1lQWNjb3VudGluZy5UYWJsZS5jc3M8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgPC9BcnJheT4KICAgICAgICAgICAgICAgIDwvSXRlbT4KICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iSmF2YVNjcmlwdCI+CiAgICAgICAgICAgICAgICAgICAgPEFycmF5PgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbT5UaW1lQWNjb3VudGluZy5BZ2VudC5qczwvSXRlbT4KICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0+VGltZUFjY291bnRpbmcuQWdlbnQuQ29uZmlybWF0aW9uRGlhbG9nLmpzPC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbT5UaW1lQWNjb3VudGluZy5BZ2VudC5FZGl0VGltZVJlY29yZHMuanM8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgPC9BcnJheT4KICAgICAgICAgICAgICAgIDwvSXRlbT4KICAgICAgICAgICAgPC9IYXNoPgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+CiAgICA8U2V0dGluZyBOYW1lPSJGcm9udGVuZDo6TmF2aWdhdGlvbiMjI0FnZW50VGltZUFjY291bnRpbmdTZXR0aW5nIyMjMDAyLVRpbWVBY2NvdW50aW5nIiBSZXF1aXJlZD0iMCIgVmFsaWQ9IjEiPgogICAgICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPk1haW4gbWVudSBpdGVtIHJlZ2lzdHJhdGlvbi48L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPkZyb250ZW5kOjpBZ2VudDo6TW9kdWxlUmVnaXN0cmF0aW9uOjpNYWluTWVudTwvTmF2aWdhdGlvbj4KICAgICAgICA8VmFsdWU+CiAgICAgICAgICAgIDxBcnJheT4KICAgICAgICAgICAgICAgIDxEZWZhdWx0SXRlbSBWYWx1ZVR5cGU9IkZyb250ZW5kTmF2aWdhdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgPEhhc2g+CiAgICAgICAgICAgICAgICAgICAgPC9IYXNoPgogICAgICAgICAgICAgICAgPC9EZWZhdWx0SXRlbT4KICAgICAgICAgICAgICAgIDxJdGVtPgogICAgICAgICAgICAgICAgICAgIDxIYXNoPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9Ikdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxBcnJheT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SXRlbT5hZG1pbjwvSXRlbT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQXJyYXk+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvSXRlbT4KICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJHcm91cFJvIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxBcnJheT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQXJyYXk+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvSXRlbT4KICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJEZXNjcmlwdGlvbiIgVHJhbnNsYXRhYmxlPSIxIj5FZGl0IHRpbWUgYWNjb3VudGluZyBzZXR0aW5ncy48L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iTmFtZSIgVHJhbnNsYXRhYmxlPSIxIj5TZXR0aW5nczwvSXRlbT4KICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJMaW5rIj5BY3Rpb249QWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmc8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iTGlua09wdGlvbiI+PC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9Ik5hdkJhciI+VGltZUFjY291bnRpbmc8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iVHlwZSI+PC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IkJsb2NrIj48L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iQWNjZXNzS2V5Ij48L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iUHJpbyI+OTAwPC9JdGVtPgogICAgICAgICAgICAgICAgICAgIDwvSGFzaD4KICAgICAgICAgICAgICAgIDwvSXRlbT4KICAgICAgICAgICAgPC9BcnJheT4KICAgICAgICA8L1ZhbHVlPgogICAgPC9TZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iRnJvbnRlbmQ6Ok1vZHVsZSMjI0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmciIFJlcXVpcmVkPSIwIiBWYWxpZD0iMSI+CiAgICAgICAgPERlc2NyaXB0aW9uIFRyYW5zbGF0YWJsZT0iMSI+RnJvbnRlbmQgbW9kdWxlIHJlZ2lzdHJhdGlvbiBmb3IgdGhlIGFnZW50IGludGVyZmFjZS48L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPkZyb250ZW5kOjpBZ2VudDo6TW9kdWxlUmVnaXN0cmF0aW9uPC9OYXZpZ2F0aW9uPgogICAgICAgIDxWYWx1ZT4KICAgICAgICAgICAgPEl0ZW0gVmFsdWVUeXBlPSJGcm9udGVuZFJlZ2lzdHJhdGlvbiI+CiAgICAgICAgICAgICAgICA8SGFzaD4KICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9Ikdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgPEFycmF5PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0+YWRtaW48L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvQXJyYXk+CiAgICAgICAgICAgICAgICAgICAgPC9JdGVtPgogICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iR3JvdXBSbyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxBcnJheT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9BcnJheT4KICAgICAgICAgICAgICAgICAgICA8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJEZXNjcmlwdGlvbiIgVHJhbnNsYXRhYmxlPSIxIj5UaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLjwvSXRlbT4KICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9Ik5hdkJhck5hbWUiPlRpbWVBY2NvdW50aW5nPC9JdGVtPgogICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iVGl0bGUiIFRyYW5zbGF0YWJsZT0iMSI+UmVwb3J0aW5nPC9JdGVtPgogICAgICAgICAgICAgICAgPC9IYXNoPgogICAgICAgICAgICA8L0l0ZW0+CiAgICAgICAgPC9WYWx1ZT4KICAgIDwvU2V0dGluZz4KICAgIDxTZXR0aW5nIE5hbWU9IkxvYWRlcjo6TW9kdWxlOjpBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nIyMjMDAyLVRpbWVBY2NvdW50aW5nIiBSZXF1aXJlZD0iMCIgVmFsaWQ9IjEiPgogICAgICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPkxvYWRlciBtb2R1bGUgcmVnaXN0cmF0aW9uIGZvciB0aGUgYWdlbnQgaW50ZXJmYWNlLjwvRGVzY3JpcHRpb24+CiAgICAgICAgPE5hdmlnYXRpb24+RnJvbnRlbmQ6OkFnZW50OjpNb2R1bGVSZWdpc3RyYXRpb246OkxvYWRlcjwvTmF2aWdhdGlvbj4KICAgICAgICA8VmFsdWU+CiAgICAgICAgICAgIDxIYXNoPgogICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJDU1MiPgogICAgICAgICAgICAgICAgICAgIDxBcnJheT4KICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0+VGltZUFjY291bnRpbmcuRGVmYXVsdHMuY3NzPC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbT5UaW1lQWNjb3VudGluZy5UYWJsZS5jc3M8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgPC9BcnJheT4KICAgICAgICAgICAgICAgIDwvSXRlbT4KICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iSmF2YVNjcmlwdCI+CiAgICAgICAgICAgICAgICAgICAgPEFycmF5PgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbT5UaW1lQWNjb3VudGluZy5BZ2VudC5SZXBvcnRpbmcuanM8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgPC9BcnJheT4KICAgICAgICAgICAgICAgIDwvSXRlbT4KICAgICAgICAgICAgPC9IYXNoPgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+CiAgICA8U2V0dGluZyBOYW1lPSJGcm9udGVuZDo6TmF2aWdhdGlvbiMjI0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcjIyMwMDItVGltZUFjY291bnRpbmciIFJlcXVpcmVkPSIwIiBWYWxpZD0iMSI+CiAgICAgICAgPERlc2NyaXB0aW9uIFRyYW5zbGF0YWJsZT0iMSI+TWFpbiBtZW51IGl0ZW0gcmVnaXN0cmF0aW9uLjwvRGVzY3JpcHRpb24+CiAgICAgICAgPE5hdmlnYXRpb24+RnJvbnRlbmQ6OkFnZW50OjpNb2R1bGVSZWdpc3RyYXRpb246Ok1haW5NZW51PC9OYXZpZ2F0aW9uPgogICAgICAgIDxWYWx1ZT4KICAgICAgICAgICAgPEFycmF5PgogICAgICAgICAgICAgICAgPERlZmF1bHRJdGVtIFZhbHVlVHlwZT0iRnJvbnRlbmROYXZpZ2F0aW9uIj4KICAgICAgICAgICAgICAgICAgICA8SGFzaD4KICAgICAgICAgICAgICAgICAgICA8L0hhc2g+CiAgICAgICAgICAgICAgICA8L0RlZmF1bHRJdGVtPgogICAgICAgICAgICAgICAgPEl0ZW0+CiAgICAgICAgICAgICAgICAgICAgPEhhc2g+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iR3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPEFycmF5PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtPmFkbWluPC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9BcnJheT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9Ikdyb3VwUm8iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPEFycmF5PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9BcnJheT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IkRlc2NyaXB0aW9uIiBUcmFuc2xhdGFibGU9IjEiPlByb2plY3QgdGltZSByZXBvcnRpbmcuPC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9Ik5hbWUiIFRyYW5zbGF0YWJsZT0iMSI+UmVwb3J0aW5nPC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IkxpbmsiPkFjdGlvbj1BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nPC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IkxpbmtPcHRpb24iPjwvSXRlbT4KICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJOYXZCYXIiPlRpbWVBY2NvdW50aW5nPC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IlR5cGUiPjwvSXRlbT4KICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJCbG9jayI+PC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IkFjY2Vzc0tleSI+PC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IlByaW8iPjUwMDwvSXRlbT4KICAgICAgICAgICAgICAgICAgICA8L0hhc2g+CiAgICAgICAgICAgICAgICA8L0l0ZW0+CiAgICAgICAgICAgIDwvQXJyYXk+CiAgICAgICAgPC9WYWx1ZT4KICAgIDwvU2V0dGluZz4KICAgIDxTZXR0aW5nIE5hbWU9IkZyb250ZW5kOjpNb2R1bGUjIyNBZ2VudFRpbWVBY2NvdW50aW5nVmlldyIgUmVxdWlyZWQ9IjAiIFZhbGlkPSIxIj4KICAgICAgICA8RGVzY3JpcHRpb24gVHJhbnNsYXRhYmxlPSIxIj5Gcm9udGVuZCBtb2R1bGUgcmVnaXN0cmF0aW9uIGZvciB0aGUgYWdlbnQgaW50ZXJmYWNlLjwvRGVzY3JpcHRpb24+CiAgICAgICAgPE5hdmlnYXRpb24+RnJvbnRlbmQ6OkFnZW50OjpNb2R1bGVSZWdpc3RyYXRpb248L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SXRlbSBWYWx1ZVR5cGU9IkZyb250ZW5kUmVnaXN0cmF0aW9uIj4KICAgICAgICAgICAgICAgIDxIYXNoPgogICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iR3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICA8QXJyYXk+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvQXJyYXk+CiAgICAgICAgICAgICAgICAgICAgPC9JdGVtPgogICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iR3JvdXBSbyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxBcnJheT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9BcnJheT4KICAgICAgICAgICAgICAgICAgICA8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJEZXNjcmlwdGlvbiIgVHJhbnNsYXRhYmxlPSIxIj5UaW1lIGFjY291bnRpbmcgdmlldy48L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJOYXZCYXJOYW1lIj5UaW1lQWNjb3VudGluZzwvSXRlbT4KICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IlRpdGxlIiBUcmFuc2xhdGFibGU9IjEiPlZpZXc8L0l0ZW0+CiAgICAgICAgICAgICAgICA8L0hhc2g+CiAgICAgICAgICAgIDwvSXRlbT4KICAgICAgICA8L1ZhbHVlPgogICAgPC9TZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iTG9hZGVyOjpNb2R1bGU6OkFnZW50VGltZUFjY291bnRpbmdWaWV3IyMjMDAyLVRpbWVBY2NvdW50aW5nIiBSZXF1aXJlZD0iMCIgVmFsaWQ9IjEiPgogICAgICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPkxvYWRlciBtb2R1bGUgcmVnaXN0cmF0aW9uIGZvciB0aGUgYWdlbnQgaW50ZXJmYWNlLjwvRGVzY3JpcHRpb24+CiAgICAgICAgPE5hdmlnYXRpb24+RnJvbnRlbmQ6OkFnZW50OjpNb2R1bGVSZWdpc3RyYXRpb246OkxvYWRlcjwvTmF2aWdhdGlvbj4KICAgICAgICA8VmFsdWU+CiAgICAgICAgICAgIDxIYXNoPgogICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJDU1MiPgogICAgICAgICAgICAgICAgICAgIDxBcnJheT4KICAgICAgICAgICAgICAgICAgICAgICAgPEl0ZW0+VGltZUFjY291bnRpbmcuRGVmYXVsdHMuY3NzPC9JdGVtPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbT5UaW1lQWNjb3VudGluZy5UYWJsZS5jc3M8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgPC9BcnJheT4KICAgICAgICAgICAgICAgIDwvSXRlbT4KICAgICAgICAgICAgPC9IYXNoPgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+CiAgICA8U2V0dGluZyBOYW1lPSJGcm9udGVuZDo6TmF2aWdhdGlvbiMjI0FnZW50VGltZUFjY291bnRpbmdWaWV3IyMjMDAyLVRpbWVBY2NvdW50aW5nIiBSZXF1aXJlZD0iMCIgVmFsaWQ9IjAiPgogICAgICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPk1haW4gbWVudSBpdGVtIHJlZ2lzdHJhdGlvbi48L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPkZyb250ZW5kOjpBZ2VudDo6TW9kdWxlUmVnaXN0cmF0aW9uOjpNYWluTWVudTwvTmF2aWdhdGlvbj4KICAgICAgICA8VmFsdWU+CiAgICAgICAgICAgIDxBcnJheT4KICAgICAgICAgICAgICAgIDxEZWZhdWx0SXRlbSBWYWx1ZVR5cGU9IkZyb250ZW5kTmF2aWdhdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgPEhhc2g+CiAgICAgICAgICAgICAgICAgICAgPC9IYXNoPgogICAgICAgICAgICAgICAgPC9EZWZhdWx0SXRlbT4KICAgICAgICAgICAgPC9BcnJheT4KICAgICAgICA8L1ZhbHVlPgogICAgPC9TZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iVGltZUFjY291bnRpbmc6OkRlZmF1bHRQcm9qZWN0TmFtZSIgUmVxdWlyZWQ9IjEiIFZhbGlkPSIxIj4KICAgICAgICA8RGVzY3JpcHRpb24gVHJhbnNsYXRhYmxlPSIxIj5EZWZhdWx0IG5hbWUgZm9yIG5ldyBwcm9qZWN0cy48L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPkZyb250ZW5kOjpBZ2VudDo6Vmlldzo6VGltZUFjY291bnRpbmdTZXR0aW5nPC9OYXZpZ2F0aW9uPgogICAgICAgIDxWYWx1ZT4KICAgICAgICAgICAgPEl0ZW0gVmFsdWVUeXBlPSJTdHJpbmciIFZhbHVlUmVnZXg9IiI+PC9JdGVtPgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+CiAgICA8U2V0dGluZyBOYW1lPSJUaW1lQWNjb3VudGluZzo6RGVmYXVsdFByb2plY3RTdGF0dXMiIFJlcXVpcmVkPSIxIiBWYWxpZD0iMSI+CiAgICAgICAgPERlc2NyaXB0aW9uIFRyYW5zbGF0YWJsZT0iMSI+RGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy48L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPkZyb250ZW5kOjpBZ2VudDo6Vmlldzo6VGltZUFjY291bnRpbmdTZXR0aW5nPC9OYXZpZ2F0aW9uPgogICAgICAgIDxWYWx1ZT4KICAgICAgICAgICAgPEl0ZW0gVmFsdWVUeXBlPSJTZWxlY3QiIFNlbGVjdGVkSUQ9IjEiPgogICAgICAgICAgICAgICAgPEl0ZW0gVmFsdWVUeXBlPSJPcHRpb24iIFZhbHVlPSIwIiBUcmFuc2xhdGFibGU9IjEiPmludmFsaWQ8L0l0ZW0+CiAgICAgICAgICAgICAgICA8SXRlbSBWYWx1ZVR5cGU9Ik9wdGlvbiIgVmFsdWU9IjEiIFRyYW5zbGF0YWJsZT0iMSI+dmFsaWQ8L0l0ZW0+CiAgICAgICAgICAgIDwvSXRlbT4KICAgICAgICA8L1ZhbHVlPgogICAgPC9TZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iVGltZUFjY291bnRpbmc6OkRlZmF1bHRBY3Rpb25OYW1lIiBSZXF1aXJlZD0iMSIgVmFsaWQ9IjEiPgogICAgICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPkRlZmF1bHQgbmFtZSBmb3IgbmV3IGFjdGlvbnMuPC9EZXNjcmlwdGlvbj4KICAgICAgICA8TmF2aWdhdGlvbj5Gcm9udGVuZDo6QWdlbnQ6OlZpZXc6OlRpbWVBY2NvdW50aW5nU2V0dGluZzwvTmF2aWdhdGlvbj4KICAgICAgICA8VmFsdWU+CiAgICAgICAgICAgIDxJdGVtIFZhbHVlVHlwZT0iU3RyaW5nIiBWYWx1ZVJlZ2V4PSIiPjwvSXRlbT4KICAgICAgICA8L1ZhbHVlPgogICAgPC9TZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iVGltZUFjY291bnRpbmc6OkRlZmF1bHRBY3Rpb25TdGF0dXMiIFJlcXVpcmVkPSIxIiBWYWxpZD0iMSI+CiAgICAgICAgPERlc2NyaXB0aW9uIFRyYW5zbGF0YWJsZT0iMSI+RGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBhY3Rpb25zLjwvRGVzY3JpcHRpb24+CiAgICAgICAgPE5hdmlnYXRpb24+RnJvbnRlbmQ6OkFnZW50OjpWaWV3OjpUaW1lQWNjb3VudGluZ1NldHRpbmc8L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SXRlbSBWYWx1ZVR5cGU9IlNlbGVjdCIgU2VsZWN0ZWRJRD0iMSI+CiAgICAgICAgICAgICAgICA8SXRlbSBWYWx1ZVR5cGU9Ik9wdGlvbiIgVmFsdWU9IjAiIFRyYW5zbGF0YWJsZT0iMSI+aW52YWxpZDwvSXRlbT4KICAgICAgICAgICAgICAgIDxJdGVtIFZhbHVlVHlwZT0iT3B0aW9uIiBWYWx1ZT0iMSIgVHJhbnNsYXRhYmxlPSIxIj52YWxpZDwvSXRlbT4KICAgICAgICAgICAgPC9JdGVtPgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+CiAgICA8U2V0dGluZyBOYW1lPSJUaW1lQWNjb3VudGluZzo6RGVmYXVsdFVzZXJXZWVrbHlIb3VycyIgUmVxdWlyZWQ9IjEiIFZhbGlkPSIxIj4KICAgICAgICA8RGVzY3JpcHRpb24gVHJhbnNsYXRhYmxlPSIxIj5EZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuPC9EZXNjcmlwdGlvbj4KICAgICAgICA8TmF2aWdhdGlvbj5Gcm9udGVuZDo6QWdlbnQ6OlZpZXc6OlRpbWVBY2NvdW50aW5nU2V0dGluZzwvTmF2aWdhdGlvbj4KICAgICAgICA8VmFsdWU+CiAgICAgICAgICAgIDxJdGVtIFZhbHVlVHlwZT0iU3RyaW5nIiBWYWx1ZVJlZ2V4PSJeXGQrJCI+NDA8L0l0ZW0+CiAgICAgICAgPC9WYWx1ZT4KICAgIDwvU2V0dGluZz4KICAgIDxTZXR0aW5nIE5hbWU9IlRpbWVBY2NvdW50aW5nOjpEZWZhdWx0VXNlckxlYXZlRGF5cyIgUmVxdWlyZWQ9IjEiIFZhbGlkPSIxIj4KICAgICAgICA8RGVzY3JpcHRpb24gVHJhbnNsYXRhYmxlPSIxIj5EZWZhdWx0IHNldHRpbmcgZm9yIGxlYXZlIGRheXMuPC9EZXNjcmlwdGlvbj4KICAgICAgICA8TmF2aWdhdGlvbj5Gcm9udGVuZDo6QWdlbnQ6OlZpZXc6OlRpbWVBY2NvdW50aW5nU2V0dGluZzwvTmF2aWdhdGlvbj4KICAgICAgICA8VmFsdWU+CiAgICAgICAgICAgIDxJdGVtIFZhbHVlVHlwZT0iU3RyaW5nIiBWYWx1ZVJlZ2V4PSJeXGQrJCI+MjM8L0l0ZW0+CiAgICAgICAgPC9WYWx1ZT4KICAgIDwvU2V0dGluZz4KICAgIDxTZXR0aW5nIE5hbWU9IlRpbWVBY2NvdW50aW5nOjpEZWZhdWx0VXNlck92ZXJ0aW1lIiBSZXF1aXJlZD0iMSIgVmFsaWQ9IjEiPgogICAgICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPkRlZmF1bHQgc2V0dGluZyBmb3Igb3ZlcnRpbWUuPC9EZXNjcmlwdGlvbj4KICAgICAgICA8TmF2aWdhdGlvbj5Gcm9udGVuZDo6QWdlbnQ6OlZpZXc6OlRpbWVBY2NvdW50aW5nU2V0dGluZzwvTmF2aWdhdGlvbj4KICAgICAgICA8VmFsdWU+CiAgICAgICAgICAgIDxJdGVtIFZhbHVlVHlwZT0iU3RyaW5nIiBWYWx1ZVJlZ2V4PSJeXGQrJCI+MDwvSXRlbT4KICAgICAgICA8L1ZhbHVlPgogICAgPC9TZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iVGltZUFjY291bnRpbmc6OkRlZmF1bHRVc2VyRGF0ZVN0YXJ0IiBSZXF1aXJlZD0iMSIgVmFsaWQ9IjEiPgogICAgICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPkRlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC48L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPkZyb250ZW5kOjpBZ2VudDo6Vmlldzo6VGltZUFjY291bnRpbmdTZXR0aW5nPC9OYXZpZ2F0aW9uPgogICAgICAgIDxWYWx1ZT4KICAgICAgICAgICAgPEl0ZW0gVmFsdWVUeXBlPSJEYXRlIiBWYWx1ZVJlZ2V4PSIiPjIwMTktMDEtMDE8L0l0ZW0+CiAgICAgICAgPC9WYWx1ZT4KICAgIDwvU2V0dGluZz4KICAgIDxTZXR0aW5nIE5hbWU9IlRpbWVBY2NvdW50aW5nOjpEZWZhdWx0VXNlckRhdGVFbmQiIFJlcXVpcmVkPSIxIiBWYWxpZD0iMSI+CiAgICAgICAgPERlc2NyaXB0aW9uIFRyYW5zbGF0YWJsZT0iMSI+RGVmYXVsdCBzZXR0aW5nIGZvciBkYXRlIGVuZC48L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPkZyb250ZW5kOjpBZ2VudDo6Vmlldzo6VGltZUFjY291bnRpbmdTZXR0aW5nPC9OYXZpZ2F0aW9uPgogICAgICAgIDxWYWx1ZT4KICAgICAgICAgICAgPEl0ZW0gVmFsdWVUeXBlPSJEYXRlIiBWYWx1ZVJlZ2V4PSIiPjIwMTktMTItMzE8L0l0ZW0+CiAgICAgICAgPC9WYWx1ZT4KICAgIDwvU2V0dGluZz4KICAgIDxTZXR0aW5nIE5hbWU9IlRpbWVBY2NvdW50aW5nOjpEZWZhdWx0VXNlckRlc2NyaXB0aW9uIiBSZXF1aXJlZD0iMSIgVmFsaWQ9IjEiPgogICAgICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPkRlZmF1bHQgc2V0dGluZyBmb3IgZGVzY3JpcHRpb24uPC9EZXNjcmlwdGlvbj4KICAgICAgICA8TmF2aWdhdGlvbj5Gcm9udGVuZDo6QWdlbnQ6OlZpZXc6OlRpbWVBY2NvdW50aW5nU2V0dGluZzwvTmF2aWdhdGlvbj4KICAgICAgICA8VmFsdWU+CiAgICAgICAgICAgIDxJdGVtIFZhbHVlVHlwZT0iU3RyaW5nIiBWYWx1ZVJlZ2V4PSIiPlB1dCB5b3VyIGRlc2NyaXB0aW9uIGhlcmUuPC9JdGVtPgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+CiAgICA8U2V0dGluZyBOYW1lPSJUaW1lQWNjb3VudGluZzo6RGVmYXVsdFVzZXJTdGF0dXMiIFJlcXVpcmVkPSIxIiBWYWxpZD0iMSI+CiAgICAgICAgPERlc2NyaXB0aW9uIFRyYW5zbGF0YWJsZT0iMSI+RGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy48L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPkZyb250ZW5kOjpBZ2VudDo6Vmlldzo6VGltZUFjY291bnRpbmdTZXR0aW5nPC9OYXZpZ2F0aW9uPgogICAgICAgIDxWYWx1ZT4KICAgICAgICAgICAgPEl0ZW0gVmFsdWVUeXBlPSJTZWxlY3QiIFNlbGVjdGVkSUQ9IjEiPgogICAgICAgICAgICAgICAgPEl0ZW0gVmFsdWVUeXBlPSJPcHRpb24iIFZhbHVlPSIwIiBUcmFuc2xhdGFibGU9IjEiPmludmFsaWQ8L0l0ZW0+CiAgICAgICAgICAgICAgICA8SXRlbSBWYWx1ZVR5cGU9Ik9wdGlvbiIgVmFsdWU9IjEiIFRyYW5zbGF0YWJsZT0iMSI+dmFsaWQ8L0l0ZW0+CiAgICAgICAgICAgIDwvSXRlbT4KICAgICAgICA8L1ZhbHVlPgogICAgPC9TZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iVGltZUFjY291bnRpbmc6Ok1heEludGVydmFsT2ZJbmNvbXBsZXRlRGF5cyIgUmVxdWlyZWQ9IjEiIFZhbGlkPSIxIj4KICAgICAgICA8RGVzY3JpcHRpb24gVHJhbnNsYXRhYmxlPSIxIj5NYXhpbXVtIG51bWJlciBvZiB3b3JraW5nIGRheXMgYWZ0ZXIgd2hpY2ggdGhlIHdvcmtpbmcgdW5pdHMgaGF2ZSB0byBiZSBpbnNlcnRlZC48L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPkNvcmU6OlRpbWVBY2NvdW50aW5nPC9OYXZpZ2F0aW9uPgogICAgICAgIDxWYWx1ZT4KICAgICAgICAgICAgPEl0ZW0gVmFsdWVUeXBlPSJTdHJpbmciIFZhbHVlUmVnZXg9Il5cZCskIj40PC9JdGVtPgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+CiAgICA8U2V0dGluZyBOYW1lPSJUaW1lQWNjb3VudGluZzo6TWF4SW50ZXJ2YWxPZkluY29tcGxldGVEYXlzQmVmb3JlV2FybmluZyIgUmVxdWlyZWQ9IjEiIFZhbGlkPSIxIj4KICAgICAgICA8RGVzY3JpcHRpb24gVHJhbnNsYXRhYmxlPSIxIj5NYXhpbXVtIG51bWJlciBvZiB3b3JraW5nIGRheXMgd2l0aG91dCB3b3JraW5nIHVuaXRzIGVudHJ5IGFmdGVyIHdoaWNoIGEgd2FybmluZyB3aWxsIGJlIHNob3duLjwvRGVzY3JpcHRpb24+CiAgICAgICAgPE5hdmlnYXRpb24+Q29yZTo6VGltZUFjY291bnRpbmc8L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SXRlbSBWYWx1ZVR5cGU9IlN0cmluZyIgVmFsdWVSZWdleD0iXlxkKyQiPjI8L0l0ZW0+CiAgICAgICAgPC9WYWx1ZT4KICAgIDwvU2V0dGluZz4KICAgIDxTZXR0aW5nIE5hbWU9IkZyb250ZW5kOjpOb3RpZnlNb2R1bGUjIyM4ODgtVGltZUFjY291bnRpbmciIFJlcXVpcmVkPSIxIiBWYWxpZD0iMSI+CiAgICAgICAgPERlc2NyaXB0aW9uIFRyYW5zbGF0YWJsZT0iMSI+VGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuPC9EZXNjcmlwdGlvbj4KICAgICAgICA8TmF2aWdhdGlvbj5Gcm9udGVuZDo6QWdlbnQ6OkZyb250ZW5kTm90aWZpY2F0aW9uPC9OYXZpZ2F0aW9uPgogICAgICAgIDxWYWx1ZT4KICAgICAgICAgICAgPEhhc2g+CiAgICAgICAgICAgICAgICA8SXRlbSBLZXk9Ik1vZHVsZSI+S2VybmVsOjpPdXRwdXQ6OkhUTUw6Ok5vdGlmaWNhdGlvbjo6VGltZUFjY291bnRpbmc8L0l0ZW0+CiAgICAgICAgICAgIDwvSGFzaD4KICAgICAgICA8L1ZhbHVlPgogICAgPC9TZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iVGltZUFjY291bnRpbmc6Ok1heEFsbG93ZWRJbnNlcnREYXlzIiBSZXF1aXJlZD0iMSIgVmFsaWQ9IjEiPgogICAgICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPkZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLjwvRGVzY3JpcHRpb24+CiAgICAgICAgPE5hdmlnYXRpb24+Q29yZTo6VGltZUFjY291bnRpbmc8L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SXRlbSBWYWx1ZVR5cGU9IlN0cmluZyIgVmFsdWVSZWdleD0iXlxkKyQiPjEwPC9JdGVtPgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+CiAgICA8U2V0dGluZyBOYW1lPSJUaW1lQWNjb3VudGluZzo6UmVkdWNlVGltZSIgUmVxdWlyZWQ9IjAiIFZhbGlkPSIxIj4KICAgICAgICA8RGVzY3JpcHRpb24gVHJhbnNsYXRhYmxlPSIxIj5UbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0mZ3Q7IHRyYXZlbGluZzsgQ29udGVudCA9Jmd0OyA1MCkuPC9EZXNjcmlwdGlvbj4KICAgICAgICA8TmF2aWdhdGlvbj5Gcm9udGVuZDo6QWdlbnQ6OlZpZXc6OlRpbWVBY2NvdW50aW5nRWRpdDwvTmF2aWdhdGlvbj4KICAgICAgICA8VmFsdWU+CiAgICAgICAgICAgIDxIYXNoPgogICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJ0cmF2ZWxpbmciPjUwPC9JdGVtPgogICAgICAgICAgICA8L0hhc2g+CiAgICAgICAgPC9WYWx1ZT4KICAgIDwvU2V0dGluZz4KICAgIDxTZXR0aW5nIE5hbWU9IlRpbWVBY2NvdW50aW5nOjpJbnB1dEhvdXJzV2l0aG91dFN0YXJ0RW5kVGltZSIgUmVxdWlyZWQ9IjAiIFZhbGlkPSIxIj4KICAgICAgICA8RGVzY3JpcHRpb24gVHJhbnNsYXRhYmxlPSIxIj5TcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLjwvRGVzY3JpcHRpb24+CiAgICAgICAgPE5hdmlnYXRpb24+RnJvbnRlbmQ6OkFnZW50OjpWaWV3OjpUaW1lQWNjb3VudGluZ0VkaXQ8L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SXRlbSBWYWx1ZVR5cGU9IkNoZWNrYm94Ij4xPC9JdGVtPgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+CiAgICA8U2V0dGluZyBOYW1lPSJQcmVBcHBsaWNhdGlvbk1vZHVsZSMjI0FnZW50VGltZUFjY291bnRpbmciIFJlcXVpcmVkPSIwIiBWYWxpZD0iMSI+CiAgICAgICAgPERlc2NyaXB0aW9uIFRyYW5zbGF0YWJsZT0iMSI+VGhpcyBtb2R1bGUgZm9yY2VzIGluc2VydHMgaW4gVGltZUFjY291bnRpbmcuPC9EZXNjcmlwdGlvbj4KICAgICAgICA8TmF2aWdhdGlvbj5Gcm9udGVuZDo6QmFzZTo6UHJlQXBwbGljYXRpb25Nb2R1bGU8L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SXRlbSBWYWx1ZVR5cGU9IlN0cmluZyIgVmFsdWVSZWdleD0iIj5LZXJuZWw6Ok1vZHVsZXM6OkFnZW50VGltZUFjY291bnRpbmdFZGl0PC9JdGVtPgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+CiAgICA8U2V0dGluZyBOYW1lPSJUaW1lQWNjb3VudGluZzo6UHJvamVjdDJSZW1hcmtSZWdFeHAiIFJlcXVpcmVkPSIwIiBWYWxpZD0iMSI+CiAgICAgICAgPERlc2NyaXB0aW9uIFRyYW5zbGF0YWJsZT0iMSI+RGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLjwvRGVzY3JpcHRpb24+CiAgICAgICAgPE5hdmlnYXRpb24+RnJvbnRlbmQ6OkFnZW50OjpWaWV3OjpUaW1lQWNjb3VudGluZ0VkaXQ8L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SXRlbSBWYWx1ZVR5cGU9IlN0cmluZyIgVmFsdWVSZWdleD0iIj5eKD86IFBST0pFQ1RcIyB8IElORlJBOiB8IFBST0RVQ1Q6ICk8L0l0ZW0+CiAgICAgICAgPC9WYWx1ZT4KICAgIDwvU2V0dGluZz4KICAgIDxTZXR0aW5nIE5hbWU9IlRpbWVBY2NvdW50aW5nOjpQcm9qZWN0TGlzdENvbnN0cmFpbnRzIiBSZXF1aXJlZD0iMCIgVmFsaWQ9IjEiPgogICAgICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPlJlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBwcm9qZWN0IGxpc3QgYWNjb3JkaW5nIHRvIHVzZXIgZ3JvdXBzLiBLZXkgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9uIGZvciBwcm9qZWN0KHMpLCBjb250ZW50IGNvbnRhaW5zIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIGdyb3Vwcy48L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPkZyb250ZW5kOjpBZ2VudDo6Vmlldzo6VGltZUFjY291bnRpbmdFZGl0PC9OYXZpZ2F0aW9uPgogICAgICAgIDxWYWx1ZT4KICAgICAgICAgICAgPEhhc2g+CiAgICAgICAgICAgIDwvSGFzaD4KICAgICAgICA8L1ZhbHVlPgogICAgPC9TZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iVGltZUFjY291bnRpbmc6OkFjdGlvbkxpc3RDb25zdHJhaW50cyIgUmVxdWlyZWQ9IjAiIFZhbGlkPSIxIj4KICAgICAgICA8RGVzY3JpcHRpb24gVHJhbnNsYXRhYmxlPSIxIj5SZWd1bGFyIGV4cHJlc3Npb25zIGZvciBjb25zdHJhaW5pbmcgYWN0aW9uIGxpc3QgYWNjb3JkaW5nIHRvIHNlbGVjdGVkIHByb2plY3QuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9ucyBmb3IgYWN0aW9uKHMpLjwvRGVzY3JpcHRpb24+CiAgICAgICAgPE5hdmlnYXRpb24+RnJvbnRlbmQ6OkFnZW50OjpWaWV3OjpUaW1lQWNjb3VudGluZ0VkaXQ8L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SGFzaD4KICAgICAgICAgICAgPC9IYXNoPgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+CiAgICA8U2V0dGluZyBOYW1lPSJUaW1lQWNjb3VudGluZzo6RW5hYmxlQXV0b0NvbXBsZXRpb24iIFJlcXVpcmVkPSIwIiBWYWxpZD0iMSI+CiAgICAgICAgPERlc2NyaXB0aW9uIFRyYW5zbGF0YWJsZT0iMSI+SWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy48L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPkZyb250ZW5kOjpBZ2VudDo6Vmlldzo6VGltZUFjY291bnRpbmdFZGl0PC9OYXZpZ2F0aW9uPgogICAgICAgIDxWYWx1ZT4KICAgICAgICAgICAgPEl0ZW0gVmFsdWVUeXBlPSJDaGVja2JveCI+MTwvSXRlbT4KICAgICAgICA8L1ZhbHVlPgogICAgPC9TZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciIgUmVxdWlyZWQ9IjAiIFZhbGlkPSIxIj4KICAgICAgICA8RGVzY3JpcHRpb24gVHJhbnNsYXRhYmxlPSIxIj5JZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuPC9EZXNjcmlwdGlvbj4KICAgICAgICA8TmF2aWdhdGlvbj5Gcm9udGVuZDo6QWdlbnQ6OlZpZXc6OlRpbWVBY2NvdW50aW5nRWRpdDwvTmF2aWdhdGlvbj4KICAgICAgICA8VmFsdWU+CiAgICAgICAgICAgIDxJdGVtIFZhbHVlVHlwZT0iQ2hlY2tib3giPjA8L0l0ZW0+CiAgICAgICAgPC9WYWx1ZT4KICAgIDwvU2V0dGluZz4KICAgIDxTZXR0aW5nIE5hbWU9IlRpbWVBY2NvdW50aW5nOjpBY3RpdmVGaWx0ZXIiIFJlcXVpcmVkPSIwIiBWYWxpZD0iMSI+CiAgICAgICAgPERlc2NyaXB0aW9uIFRyYW5zbGF0YWJsZT0iMSI+SWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC48L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPkZyb250ZW5kOjpBZ2VudDo6Vmlldzo6VGltZUFjY291bnRpbmdFZGl0PC9OYXZpZ2F0aW9uPgogICAgICAgIDxWYWx1ZT4KICAgICAgICAgICAgPEl0ZW0gVmFsdWVUeXBlPSJDaGVja2JveCI+MDwvSXRlbT4KICAgICAgICA8L1ZhbHVlPgogICAgPC9TZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iVGltZUFjY291bnRpbmc6OkFsbG93TWFzc0VudHJ5Rm9yVXNlciIgUmVxdWlyZWQ9IjAiIFZhbGlkPSIxIj4KICAgICAgICA8RGVzY3JpcHRpb24gVHJhbnNsYXRhYmxlPSIxIj5JZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLjwvRGVzY3JpcHRpb24+CiAgICAgICAgPE5hdmlnYXRpb24+RnJvbnRlbmQ6OkFnZW50OjpWaWV3OjpUaW1lQWNjb3VudGluZ0VkaXQ8L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SXRlbSBWYWx1ZVR5cGU9IkNoZWNrYm94Ij4wPC9JdGVtPgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+CiAgICA8U2V0dGluZyBOYW1lPSJGcm9udGVuZDo6VG9vbEJhck1vZHVsZSMjIzIwMS1UaW1lQWNjb3VudGluZzo6SW5jb21wbGV0ZVdvcmtpbmdEYXlzIiBSZXF1aXJlZD0iMCIgVmFsaWQ9IjEiPgogICAgICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPkFnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci48L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPkZyb250ZW5kOjpBZ2VudDo6VG9vbEJhcjwvTmF2aWdhdGlvbj4KICAgICAgICA8VmFsdWU+CiAgICAgICAgICAgIDxIYXNoPgogICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJNb2R1bGUiPktlcm5lbDo6T3V0cHV0OjpIVE1MOjpUb29sQmFyOjpJbmNvbXBsZXRlV29ya2luZ0RheXM8L0l0ZW0+CiAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IkNzc0NsYXNzIj5JbmNvbXBsZXRlV29ya2luZ0RheXM8L0l0ZW0+CiAgICAgICAgICAgICAgICA8SXRlbSBLZXk9Ikljb24iPmZhIGZhLWNsb2NrLW88L0l0ZW0+CiAgICAgICAgICAgIDwvSGFzaD4KICAgICAgICA8L1ZhbHVlPgogICAgPC9TZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iU3RhdHM6OkR5bmFtaWNPYmplY3RSZWdpc3RyYXRpb24jIyNUaW1lQWNjb3VudGluZyIgUmVxdWlyZWQ9IjAiIFZhbGlkPSIxIj4KICAgICAgICA8RGVzY3JpcHRpb24gVHJhbnNsYXRhYmxlPSIxIj5EZXRlcm1pbmVzIGlmIHRoZSBzdGF0aXN0aWNzIG1vZHVsZSBtYXkgZ2VuZXJhdGUgdGltZSBhY2NvdW50aW5nIGluZm9ybWF0aW9uLjwvRGVzY3JpcHRpb24+CiAgICAgICAgPE5hdmlnYXRpb24+Q29yZTo6U3RhdHM8L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SGFzaD4KICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iTW9kdWxlIj5LZXJuZWw6OlN5c3RlbTo6U3RhdHM6OkR5bmFtaWM6OlRpbWVBY2NvdW50aW5nPC9JdGVtPgogICAgICAgICAgICA8L0hhc2g+CiAgICAgICAgPC9WYWx1ZT4KICAgIDwvU2V0dGluZz4KICAgIDxTZXR0aW5nIE5hbWU9IlRpbWVBY2NvdW50aW5nOjpGcm9udGVuZDo6UmVwb3J0aW5nUHJvamVjdCMjI1Nob3dPbmx5QWN0aXZlVXNlcnMiIFJlcXVpcmVkPSIwIiBWYWxpZD0iMSI+CiAgICAgICAgPERlc2NyaXB0aW9uIFRyYW5zbGF0YWJsZT0iMSI+SWYgZW5hYmxlZCwgb25seSB1c2VycyB0aGF0IGhhcyBhZGRlZCB3b3JraW5nIHRpbWUgdG8gdGhlIHNlbGVjdGVkIHByb2plY3QgYXJlIHNob3duLjwvRGVzY3JpcHRpb24+CiAgICAgICAgPE5hdmlnYXRpb24+Q29yZTo6VGltZUFjY291bnRpbmc6OlZpZXdSZXBvcnRpbmdQcm9qZWN0PC9OYXZpZ2F0aW9uPgogICAgICAgIDxWYWx1ZT4KICAgICAgICAgICAgPEl0ZW0gVmFsdWVUeXBlPSJDaGVja2JveCI+MTwvSXRlbT4KICAgICAgICA8L1ZhbHVlPgogICAgPC9TZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iVGltZUFjY291bnRpbmc6OlRpY2tldFN5bmM6OkVuYWJsZSIgUmVxdWlyZWQ9IjAiIFZhbGlkPSIwIj4KICAgICAgICA8RGVzY3JpcHRpb24gVHJhbnNsYXRhYmxlPSIxIj5BY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLjwvRGVzY3JpcHRpb24+CiAgICAgICAgPE5hdmlnYXRpb24+Q29yZTo6VGltZUFjY291bnRpbmc6OlRpY2tldFN5bmM8L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SXRlbSBWYWx1ZVR5cGU9IkNoZWNrYm94Ij4xPC9JdGVtPgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+CiAgICA8U2V0dGluZyBOYW1lPSJUaW1lQWNjb3VudGluZzo6VGlja2V0U3luYzo6U2V0RW50cnlSZWFkT25seSIgUmVxdWlyZWQ9IjEiIFZhbGlkPSIxIj4KICAgICAgICA8RGVzY3JpcHRpb24gVHJhbnNsYXRhYmxlPSIxIj5BcyBzb29uIGFzIHRoZSBzeW5jaHJvbmlzYXRpb24gb2YgdGlja2V0IFRpbWVVbml0cyBpcyBhY3RpdmF0ZWQsIGl0IGlzIHBvc3NpYmxlIHRvIHNldCB0aGUgZW50cmllcyBSZWFkT25seS48L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPkNvcmU6OlRpbWVBY2NvdW50aW5nOjpUaWNrZXRTeW5jPC9OYXZpZ2F0aW9uPgogICAgICAgIDxWYWx1ZT4KICAgICAgICAgICAgPEl0ZW0gVmFsdWVUeXBlPSJDaGVja2JveCI+MTwvSXRlbT4KICAgICAgICA8L1ZhbHVlPgogICAgPC9TZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iVGltZUFjY291bnRpbmc6OlRpY2tldFN5bmM6OkNyZWF0ZVByb2plY3RGcm9tQ3VzdG9tZXJJRCIgUmVxdWlyZWQ9IjEiIFZhbGlkPSIxIj4KICAgICAgICA8RGVzY3JpcHRpb24gVHJhbnNsYXRhYmxlPSIxIj5TeW5jaHJvbmlzZSBjdXN0b21lcnMgYXMgYSBuZXcgcHJvamVjdCBpZiB0aGV5IGV4aXN0cyBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuPC9EZXNjcmlwdGlvbj4KICAgICAgICA8TmF2aWdhdGlvbj5Db3JlOjpUaW1lQWNjb3VudGluZzo6VGlja2V0U3luYzwvTmF2aWdhdGlvbj4KICAgICAgICA8VmFsdWU+CiAgICAgICAgICAgIDxJdGVtIFZhbHVlVHlwZT0iQ2hlY2tib3giPjE8L0l0ZW0+CiAgICAgICAgPC9WYWx1ZT4KICAgIDwvU2V0dGluZz4KICAgIDxTZXR0aW5nIE5hbWU9IlRpbWVBY2NvdW50aW5nOjpUaWNrZXRTeW5jOjpDcmVhdGVQcm9qZWN0RnJvbVRNUEN1c3RvbWVySUQiIFJlcXVpcmVkPSIxIiBWYWxpZD0iMSI+CiAgICAgICAgPERlc2NyaXB0aW9uIFRyYW5zbGF0YWJsZT0iMSI+QWxzbyBzeW5jaHJvbmlzZSBjdXN0b21lcnMgYXMgYSBuZXcgcHJvamVjdCBpZiB0aGV5IGhhdmUgbm90IHlldCBiZWVuIGNyZWF0ZWQgaW4gdGhlIGN1c3RvbWVyIGRhdGFiYXNlLjwvRGVzY3JpcHRpb24+CiAgICAgICAgPE5hdmlnYXRpb24+Q29yZTo6VGltZUFjY291bnRpbmc6OlRpY2tldFN5bmM8L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SXRlbSBWYWx1ZVR5cGU9IkNoZWNrYm94Ij4wPC9JdGVtPgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+CiAgICA8U2V0dGluZyBOYW1lPSJUaW1lQWNjb3VudGluZzo6VGlja2V0U3luYzo6U2F2ZVRpbWVVbml0VG9BcnRpY2xlRmllbGQiIFJlcXVpcmVkPSIwIiBWYWxpZD0iMCI+CiAgICAgICAgPERlc2NyaXB0aW9uIFRyYW5zbGF0YWJsZT0iMSI+V2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuPC9EZXNjcmlwdGlvbj4KICAgICAgICA8TmF2aWdhdGlvbj5Db3JlOjpUaW1lQWNjb3VudGluZzo6VGlja2V0U3luYzwvTmF2aWdhdGlvbj4KICAgICAgICA8VmFsdWU+CiAgICAgICAgICAgIDxJdGVtIFZhbHVlVHlwZT0iU3RyaW5nIiBWYWx1ZVJlZ2V4PSIiPkFydGljbGVUaW1lVW5pdHM8L0l0ZW0+CiAgICAgICAgPC9WYWx1ZT4KICAgIDwvU2V0dGluZz4KICAgIDxTZXR0aW5nIE5hbWU9IlRpbWVBY2NvdW50aW5nOjpUaWNrZXRTeW5jOjpEZWZhdWx0UHJvamVjdElEIiBSZXF1aXJlZD0iMCIgVmFsaWQ9IjEiPgogICAgICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPldlIG5lZWQgdG8gc2V0IGEgZGVmYXVsdCBwcm9qZWN0IGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS48L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPkZyb250ZW5kOjpBZ2VudDo6Vmlldzo6QWN0aXZpdHlSZWNvcmRpbmc8L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SXRlbSBWYWx1ZVR5cGU9IlN0cmluZyIgVmFsdWVSZWdleD0iXlxkKyQiPjU8L0l0ZW0+CiAgICAgICAgPC9WYWx1ZT4KICAgIDwvU2V0dGluZz4KICAgIDxTZXR0aW5nIE5hbWU9IlRpbWVBY2NvdW50aW5nOjpUaWNrZXRTeW5jOjpEZWZhdWx0QWN0aW9uSUQiIFJlcXVpcmVkPSIwIiBWYWxpZD0iMSI+CiAgICAgICAgPERlc2NyaXB0aW9uIFRyYW5zbGF0YWJsZT0iMSI+V2UgbmVlZCB0byBzZXQgYSBkZWZhdWx0IGFjdGlvbiBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuPC9EZXNjcmlwdGlvbj4KICAgICAgICA8TmF2aWdhdGlvbj5Gcm9udGVuZDo6QWdlbnQ6OlZpZXc6OkFjdGl2aXR5UmVjb3JkaW5nPC9OYXZpZ2F0aW9uPgogICAgICAgIDxWYWx1ZT4KICAgICAgICAgICAgPEl0ZW0gVmFsdWVUeXBlPSJTdHJpbmciIFZhbHVlUmVnZXg9Il5cZCskIj40PC9JdGVtPgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+CiAgICA8U2V0dGluZyBOYW1lPSJUaWNrZXQ6OkV2ZW50TW9kdWxlUG9zdCMjIzk5OS1UaW1lQWNjb3VudGluZ1RpY2tldFRpbWVVbml0c1N5bmMiIFJlcXVpcmVkPSIwIiBWYWxpZD0iMSI+CiAgICAgICAgPERlc2NyaXB0aW9uIFRyYW5zbGF0YWJsZT0iMSI+RXZlcnkgdGltZSBhIGFnZW50IGFkZCBUaW1lVW5pdHMgdG8gYSB0aWNrZXQsIHdlIHN5bmMgdGhlIGluZm9ybWF0aW9uIHRvIHRoZSB0aW1lYWNjb3VudGluZyBtb2R1bGUuPC9EZXNjcmlwdGlvbj4KICAgICAgICA8TmF2aWdhdGlvbj5Db3JlOjpFdmVudDo6VGlja2V0PC9OYXZpZ2F0aW9uPgogICAgICAgIDxWYWx1ZT4KICAgICAgICAgICAgPEhhc2g+CiAgICAgICAgICAgICAgICA8SXRlbSBLZXk9Ik1vZHVsZSI+S2VybmVsOjpTeXN0ZW06OlRpY2tldDo6RXZlbnQ6OlRpbWVBY2NvdW50aW5nVGlja2V0VGltZVVuaXRzU3luYzwvSXRlbT4KICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iRXZlbnQiPlRpY2tldEFjY291bnRUaW1lPC9JdGVtPgogICAgICAgICAgICA8L0hhc2g+CiAgICAgICAgPC9WYWx1ZT4KICAgIDwvU2V0dGluZz4KICAgIDxTZXR0aW5nIE5hbWU9IlRpbWVBY2NvdW50aW5nOjpUaWNrZXRTeW5jOjpTZXJ2aWNlVG9BY3Rpb24iIFJlcXVpcmVkPSIwIiBWYWxpZD0iMSI+CiAgICAgICAgPERlc2NyaXB0aW9uIFRyYW5zbGF0YWJsZT0iMSI+VXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC48L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPkNvcmU6OlRpY2tldDwvTmF2aWdhdGlvbj4KICAgICAgICA8VmFsdWU+CiAgICAgICAgICAgIDxIYXNoPgogICAgICAgICAgICAgICAgPERlZmF1bHRJdGVtPgogICAgICAgICAgICAgICAgICAgIDxBcnJheT4KICAgICAgICAgICAgICAgICAgICA8L0FycmF5PgogICAgICAgICAgICAgICAgPC9EZWZhdWx0SXRlbT4KICAgICAgICAgICAgPC9IYXNoPgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+CgogICAgPCEtLSBBZ2VudFRpY2tldEFjY291bnRUaW1lIC0tPgoKICAgIDxTZXR0aW5nIE5hbWU9IkZyb250ZW5kOjpNb2R1bGUjIyNBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0IiBSZXF1aXJlZD0iMCIgVmFsaWQ9IjEiPgogICAgICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPkZyb250ZW5kIG1vZHVsZSByZWdpc3RyYXRpb24gZm9yIHRoZSBhZ2VudCBpbnRlcmZhY2UuPC9EZXNjcmlwdGlvbj4KICAgICAgICA8TmF2aWdhdGlvbj5Gcm9udGVuZDo6QWdlbnQ6Ok1vZHVsZVJlZ2lzdHJhdGlvbjwvTmF2aWdhdGlvbj4KICAgICAgICA8VmFsdWU+CiAgICAgICAgICAgIDxJdGVtIFZhbHVlVHlwZT0iRnJvbnRlbmRSZWdpc3RyYXRpb24iPgogICAgICAgICAgICAgICAgPEhhc2g+CiAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJHcm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxBcnJheT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9BcnJheT4KICAgICAgICAgICAgICAgICAgICA8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJHcm91cFJvIj4KICAgICAgICAgICAgICAgICAgICAgICAgPEFycmF5PgogICAgICAgICAgICAgICAgICAgICAgICA8L0FycmF5PgogICAgICAgICAgICAgICAgICAgIDwvSXRlbT4KICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IkRlc2NyaXB0aW9uIiBUcmFuc2xhdGFibGU9IjEiPlRpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0LjwvSXRlbT4KICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9Ik5hdkJhck5hbWUiPlRpY2tldDwvSXRlbT4KICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IlRpdGxlIiBUcmFuc2xhdGFibGU9IjEiPlRpY2tldCB0aW1lIHJlcG9ydDwvSXRlbT4KICAgICAgICAgICAgICAgIDwvSGFzaD4KICAgICAgICAgICAgPC9JdGVtPgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+CiAgICA8U2V0dGluZyBOYW1lPSJGcm9udGVuZDo6TW9kdWxlIyMjQWdlbnRUaWNrZXRBY2NvdW50VGltZSIgUmVxdWlyZWQ9IjAiIFZhbGlkPSIxIj4KICAgICAgICA8RGVzY3JpcHRpb24gVHJhbnNsYXRhYmxlPSIxIj5Gcm9udGVuZCBtb2R1bGUgcmVnaXN0cmF0aW9uIGZvciB0aGUgYWdlbnQgaW50ZXJmYWNlLjwvRGVzY3JpcHRpb24+CiAgICAgICAgPE5hdmlnYXRpb24+RnJvbnRlbmQ6OkFnZW50OjpNb2R1bGVSZWdpc3RyYXRpb248L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SXRlbSBWYWx1ZVR5cGU9IkZyb250ZW5kUmVnaXN0cmF0aW9uIj4KICAgICAgICAgICAgICAgIDxIYXNoPgogICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iR3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICA8QXJyYXk+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvQXJyYXk+CiAgICAgICAgICAgICAgICAgICAgPC9JdGVtPgogICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iR3JvdXBSbyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxBcnJheT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9BcnJheT4KICAgICAgICAgICAgICAgICAgICA8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJEZXNjcmlwdGlvbiIgVHJhbnNsYXRhYmxlPSIxIj5UaW1lIGFjY291bnRpbmcgZWRpdC48L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJOYXZCYXJOYW1lIj5UaW1lQWNjb3VudGluZzwvSXRlbT4KICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IlRpdGxlIiBUcmFuc2xhdGFibGU9IjEiPkVkaXQ8L0l0ZW0+CiAgICAgICAgICAgICAgICA8L0hhc2g+CiAgICAgICAgICAgIDwvSXRlbT4KICAgICAgICA8L1ZhbHVlPgogICAgPC9TZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iTG9hZGVyOjpNb2R1bGU6OkFnZW50VGlja2V0QWNjb3VudFRpbWUjIyMwMDItVGltZUFjY291bnRpbmciIFJlcXVpcmVkPSIwIiBWYWxpZD0iMSI+CiAgICAgICAgPERlc2NyaXB0aW9uIFRyYW5zbGF0YWJsZT0iMSI+TG9hZGVyIG1vZHVsZSByZWdpc3RyYXRpb24gZm9yIHRoZSBhZ2VudCBpbnRlcmZhY2UuPC9EZXNjcmlwdGlvbj4KICAgICAgICA8TmF2aWdhdGlvbj5Gcm9udGVuZDo6QWdlbnQ6Ok1vZHVsZVJlZ2lzdHJhdGlvbjo6TG9hZGVyPC9OYXZpZ2F0aW9uPgogICAgICAgIDxWYWx1ZT4KICAgICAgICAgICAgPEhhc2g+CiAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IkNTUyI+CiAgICAgICAgICAgICAgICAgICAgPEFycmF5PgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbT5UaW1lQWNjb3VudGluZy5EZWZhdWx0cy5jc3M8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtPlRpbWVBY2NvdW50aW5nLlRhYmxlLmNzczwvSXRlbT4KICAgICAgICAgICAgICAgICAgICA8L0FycmF5PgogICAgICAgICAgICAgICAgPC9JdGVtPgogICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJKYXZhU2NyaXB0Ij4KICAgICAgICAgICAgICAgICAgICA8QXJyYXk+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtPlRpbWVBY2NvdW50aW5nLkFnZW50LlRpY2tldFRpbWVBY2NvdW50LmpzPC9JdGVtPgogICAgICAgICAgICAgICAgICAgIDwvQXJyYXk+CiAgICAgICAgICAgICAgICA8L0l0ZW0+CiAgICAgICAgICAgIDwvSGFzaD4KICAgICAgICA8L1ZhbHVlPgogICAgPC9TZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iVGlja2V0OjpGcm9udGVuZDo6TWVudU1vZHVsZSMjIzYwMC1BZ2VudFRpY2tldEFjY291bnRUaW1lIiBSZXF1aXJlZD0iMCIgVmFsaWQ9IjEiPgogICAgICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPlNob3dzIGEgbGluayBpbiB0aGUgbWVudSBmb3IgY3JlYXRpbmcgYSBjYWxlbmRhciBhcHBvaW50bWVudCBsaW5rZWQgdG8gdGhlIHRpY2tldCBkaXJlY3RseSBmcm9tIHRoZSB0aWNrZXQgem9vbSB2aWV3IG9mIHRoZSBhZ2VudCBpbnRlcmZhY2UuIEFkZGl0aW9uYWwgYWNjZXNzIGNvbnRyb2wgdG8gc2hvdyBvciBub3Qgc2hvdyB0aGlzIGxpbmsgY2FuIGJlIGRvbmUgYnkgdXNpbmcgS2V5ICJHcm91cCIgYW5kIENvbnRlbnQgbGlrZSAicnc6Z3JvdXAxO21vdmVfaW50bzpncm91cDIiLiBUbyBjbHVzdGVyIG1lbnUgaXRlbXMgdXNlIGZvciBLZXkgIkNsdXN0ZXJOYW1lIiBhbmQgZm9yIHRoZSBDb250ZW50IGFueSBuYW1lIHlvdSB3YW50IHRvIHNlZSBpbiB0aGUgVUkuIFVzZSAiQ2x1c3RlclByaW9yaXR5IiB0byBjb25maWd1cmUgdGhlIG9yZGVyIG9mIGEgY2VydGFpbiBjbHVzdGVyIHdpdGhpbiB0aGUgdG9vbGJhci48L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPkZyb250ZW5kOjpBZ2VudDo6Vmlldzo6VGlja2V0Wm9vbTo6TWVudU1vZHVsZTwvTmF2aWdhdGlvbj4KICAgICAgICA8VmFsdWU+CiAgICAgICAgICAgIDxIYXNoPgogICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJNb2R1bGUiPktlcm5lbDo6T3V0cHV0OjpIVE1MOjpUaWNrZXRNZW51OjpHZW5lcmljPC9JdGVtPgogICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJOYW1lIiBUcmFuc2xhdGFibGU9IjEiPlRpbWUgQWNjb3VudGluZzwvSXRlbT4KICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iRGVzY3JpcHRpb24iIFRyYW5zbGF0YWJsZT0iMSI+Q3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQ8L0l0ZW0+CiAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IkFjdGlvbiI+QWdlbnRUaWNrZXRBY2NvdW50VGltZTwvSXRlbT4KICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iTGluayI+QWN0aW9uPUFnZW50VGlja2V0QWNjb3VudFRpbWU7UGx1Z2luS2V5PTAxMDAtVGlja2V0O1RpY2tldElEPVslIERhdGEuVGlja2V0SUQgfCB1cmkgJV08L0l0ZW0+CiAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IlRhcmdldCI+PC9JdGVtPgogICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJQb3B1cFR5cGUiPlRpY2tldEFjdGlvbjwvSXRlbT4KICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iQ2x1c3Rlck5hbWUiIFRyYW5zbGF0YWJsZT0iMSI+TWlzY2VsbGFuZW91czwvSXRlbT4KICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iQ2x1c3RlclByaW9yaXR5Ij45MDA8L0l0ZW0+CiAgICAgICAgICAgIDwvSGFzaD4KICAgICAgICA8L1ZhbHVlPgogICAgPC9TZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iVGlja2V0OjpGcm9udGVuZDo6TWVudU1vZHVsZSMjIzYwMS1BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0IiBSZXF1aXJlZD0iMCIgVmFsaWQ9IjEiPgogICAgICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPlNob3dzIGEgbGluayBpbiB0aGUgbWVudSBmb3IgY3JlYXRpbmcgYSBjYWxlbmRhciBhcHBvaW50bWVudCBsaW5rZWQgdG8gdGhlIHRpY2tldCBkaXJlY3RseSBmcm9tIHRoZSB0aWNrZXQgem9vbSB2aWV3IG9mIHRoZSBhZ2VudCBpbnRlcmZhY2UuIEFkZGl0aW9uYWwgYWNjZXNzIGNvbnRyb2wgdG8gc2hvdyBvciBub3Qgc2hvdyB0aGlzIGxpbmsgY2FuIGJlIGRvbmUgYnkgdXNpbmcgS2V5ICJHcm91cCIgYW5kIENvbnRlbnQgbGlrZSAicnc6Z3JvdXAxO21vdmVfaW50bzpncm91cDIiLiBUbyBjbHVzdGVyIG1lbnUgaXRlbXMgdXNlIGZvciBLZXkgIkNsdXN0ZXJOYW1lIiBhbmQgZm9yIHRoZSBDb250ZW50IGFueSBuYW1lIHlvdSB3YW50IHRvIHNlZSBpbiB0aGUgVUkuIFVzZSAiQ2x1c3RlclByaW9yaXR5IiB0byBjb25maWd1cmUgdGhlIG9yZGVyIG9mIGEgY2VydGFpbiBjbHVzdGVyIHdpdGhpbiB0aGUgdG9vbGJhci48L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPkZyb250ZW5kOjpBZ2VudDo6Vmlldzo6VGlja2V0Wm9vbTo6TWVudU1vZHVsZTwvTmF2aWdhdGlvbj4KICAgICAgICA8VmFsdWU+CiAgICAgICAgICAgIDxIYXNoPgogICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJNb2R1bGUiPktlcm5lbDo6T3V0cHV0OjpIVE1MOjpUaWNrZXRNZW51OjpHZW5lcmljPC9JdGVtPgogICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJOYW1lIiBUcmFuc2xhdGFibGU9IjEiPlRpbWUgUmVwb3J0PC9JdGVtPgogICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJEZXNjcmlwdGlvbiIgVHJhbnNsYXRhYmxlPSIxIj5TaG93IGFjY291bnRlZCB0aW1lcyBmb3IgdGhpcyB0aWNrZXQ8L0l0ZW0+CiAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IkFjdGlvbiI+QWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldDwvSXRlbT4KICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iTGluayI+QWN0aW9uPUFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQ7VGlja2V0SUQ9WyUgRGF0YS5UaWNrZXRJRCB8IHVyaSAlXTwvSXRlbT4KICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iVGFyZ2V0Ij48L0l0ZW0+CiAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IlBvcHVwVHlwZSI+VGlja2V0QWN0aW9uPC9JdGVtPgogICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJDbHVzdGVyTmFtZSIgVHJhbnNsYXRhYmxlPSIxIj5NaXNjZWxsYW5lb3VzPC9JdGVtPgogICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJDbHVzdGVyUHJpb3JpdHkiPjkwMTwvSXRlbT4KICAgICAgICAgICAgPC9IYXNoPgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+Cgo8L290b2JvX2NvbmZpZz4K</File>
        <File Location="Kernel/Language/ar_SA_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmFyX1NBX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIEVuZCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGwgUHJvamVjdHMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBUaWNrZXRJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBObyBQcm9qZWN0IGZvciBUaWNrZXQgZm91bmQuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIHVwZGF0ZSB1c2VyIHNldHRpbmdzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gYWRkIHRpbWUgcGVyaW9kISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICcnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/bg_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmJnX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJ9CX0LDQtNCw0YfQsCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICfQl9Cw0LHQtdC70LXQttC60LAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICfQndCw0LjRgdGC0LjQvdCwINC70Lgg0LjRgdC60LDRgtC1INC00LAg0LjQt9GC0YDQuNC10YLQtSDRgdGH0LXRgtC+0LLQvtC00YHRgtCy0L7RgtC+INC30LAg0LLRgNC10LzQtSDQsiDRgtC+0LfQuCDQtNC10L0/JzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRWRpdAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIFJlY29yZCd9ID0gJ9Cg0LXQtNCw0LrRgtC40YDQsNC90LUg0L3QsCDQstGA0LXQvNC10LLQuNGPINC30LDQv9C40YEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3MnfSA9ICfQntGC0LjQtNC10YLQtSDQsiDQvdCw0YHRgtGA0L7QudC60LjRgtC1JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJ9CU0LDRgtCwINC30LAg0L3QsNCy0LjQs9Cw0YbQuNGPJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RheXMgd2l0aG91dCBlbnRyaWVzJ30gPSAn0JTQvdC4INCx0LXQtyDQt9Cw0L/QuNGB0LgnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2VsZWN0IGFsbCBkYXlzJ30gPSAn0JjQt9Cx0L7RgCDQvdCwINCy0YHQuNGH0LrQuCDQtNC90LgnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJ9Cc0LDRgdC+0LLQviDQstGK0LLQtdC20LTQsNC90LUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSB0aGUgcmVhc29uIGZvciB5b3VyIGFic2VuY2UgZm9yIHRoZSBzZWxlY3RlZCBkYXlzJ30gPQogICAgICAgICfQnNC+0LvRjywg0LjQt9Cx0LXRgNC10YLQtSDQv9GA0LjRh9C40L3QsNGC0LAg0LfQsCDQktCw0YjQtdGC0L4g0L7RgtGB0YrRgdGC0LLQuNC1INC30LAg0LjQt9Cx0YDQsNC90LjRgtC1INC00L3QuCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJ9CS0LDQutCw0L3RhtC40Y8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gc2ljayBsZWF2ZSd9ID0gJ9CSINC+0YLQv9GD0YHQuiDQv9C+INCx0L7Qu9C10YHRgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBvdmVydGltZSBsZWF2ZSd9ID0gJ9Cf0YDQuCDQuNC30LLRitC90YDQtdC00LXQvSDQvtGC0L/Rg9GB0LonOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVxdWlyZWQgZmllbGRzIGFyZSBtYXJrZWQgd2l0aCBhICIqIi4nfSA9ICfQl9Cw0LTRitC70LbQuNGC0LXQu9C90LjRgtC1INC/0L7Qu9C10YLQsCDRgdCwINC80LDRgNC60LjRgNCw0L3QuCDRgSAiKiIuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAn0KLRgNGP0LHQstCwINC00LAg0LLRitCy0LXQtNC10YLQtSDQvdCw0YfQsNC70L3QviDQuCDQutGA0LDQudC90L4g0LLRgNC10LzQtSDQuNC70Lgg0L/QtdGA0LjQvtC0INC+0YIg0LLRgNC10LzQtS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCd9ID0gJ9Cf0YDQvtC10LrRgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPcmlnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGFkZCBhIHJlbWFyayB3aXRoIG1vcmUgdGhhbiA4IGNoYXJhY3RlcnMhJ30gPSAn0JzQvtC70Y8sINC00L7QsdCw0LLQtdGC0LUg0LfQsNCx0LXQu9C10LbQutCwINGBINC/0L7QstC10YfQtSDQvtGCIDgg0LfQvdCw0LrQsCEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXJzcHJ1bmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmVnYXRpdmUgdGltZXMgYXJlIG5vdCBhbGxvd2VkLid9ID0gJ9Ce0YLRgNC40YbQsNGC0LXQu9C90LjRgtC1INCy0YDQtdC80LXQvdCwINC90LUg0YHQtSDQtNC+0L/Rg9GB0LrQsNGCLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIFN0YXJ0IHRpbWUgbWF0Y2hlcyBhbm90aGVyIGludGVydmFsLid9ID0KICAgICAgICAn0J3QtSDRgdC1INC00L7Qv9GD0YHQutCw0YIg0L/QvtCy0YLQvtGA0L3QuCDRh9Cw0YHQvtCy0LUuINCd0LDRh9Cw0LvQvdC+0YLQviDQstGA0LXQvNC1INGB0YrQstC/0LDQtNCwINGBINC00YDRg9CzINC40L3RgtC10YDQstCw0LsuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgZm9ybWF0ISBQbGVhc2UgZW50ZXIgYSB0aW1lIHdpdGggdGhlIGZvcm1hdCBISDpNTS4nfSA9ICfQndC10LLQsNC70LjQtNC10L0g0YTQvtGA0LzQsNGCISDQnNC+0LvRjywg0LLRitCy0LXQtNC10YLQtSDRh9Cw0YEg0YEg0YTQvtGA0LzQsNGCINCn0Kc6INCc0JwuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57JzI0OjAwIGlzIG9ubHkgcGVybWl0dGVkIGFzIGVuZCB0aW1lLid9ID0gJzI0OjAwINC1INGA0LDQt9GA0LXRiNC10L3QviDRgdCw0LzQviDQutCw0YLQviDQutGA0LDQudC90L4g0LLRgNC10LzQtS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICfQndC10LLQsNC70LjQtNC90L4g0LLRgNC10LzQtSEg0JXQtNC40L0g0LTQtdC9INC40LzQsCAyNCDRh9Cw0YHQsC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJ9Ca0YDQsNC50L3QvtGC0L4g0LLRgNC10LzQtSDRgtGA0Y/QsdCy0LAg0LTQsCDQtSDRgdC70LXQtCDQvdCw0YfQsNC70L3QvtGC0L4g0LLRgNC10LzQtS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBFbmQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICfQndC1INGB0LUg0LTQvtC/0YPRgdC60LDRgiDQv9C+0LLRgtC+0YDQvdC4INGH0LDRgdC+0LLQtS4g0JrRgNCw0LnQvdC+0YLQviDQstGA0LXQvNC1INGB0YrQstC/0LDQtNCwINGBINC00YDRg9CzINC40L3RgtC10YDQstCw0LsuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICfQndC10LLQsNC70LjQtNC10L0g0L/QtdGA0LjQvtC0ISDQldC00LjQvSDQtNC10L0g0LjQvNCwIDI0INGH0LDRgdCwLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBIHZhbGlkIHBlcmlvZCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiB6ZXJvLid9ID0gJ9CS0LDQu9C40LTQvdC40Y/RgiDQv9C10YDQuNC+0LQg0YLRgNGP0LHQstCwINC00LAg0LUg0L/Qvi3Qs9C+0LvRj9C8INC+0YIg0L3Rg9C70LAuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICfQndC10LLQsNC70LjQtNC10L0g0L/QtdGA0LjQvtC0ISDQntGC0YDQuNGG0LDRgtC10LvQvdC40YLQtSDQv9C10YDQuNC+0LTQuCDQvdC1INGB0LAg0YDQsNC30YDQtdGI0LXQvdC4Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWJtaXQgY2hhbmdlcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgb25lIHJvdyd9ID0gJ9CU0L7QsdCw0LLQuCDQtdC00LjQvSDRgNC10LQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICfQnNC+0LbQtdGC0LUg0LTQsCDQuNC30LHQtdGA0LXRgtC1INGB0LDQvNC+INC10LTQuNC9INC10LvQtdC80LXQvdGCINC+0YIg0LrQstCw0LTRgNCw0YLRh9C10YLQviDQt9CwINC+0YLQvNC10YLQutCwISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHNpY2sgbGVhdmU/J30gPSAn0KHQuNCz0YPRgNC90Lgg0LvQuCDRgdGC0LUsINGH0LUg0YDQsNCx0L7RgtC40YLQtSwg0LTQvtC60LDRgtC+INGB0YLQtSDQsiDQvtGC0L/Rg9GB0Log0L/QviDQsdC+0LvQtdGB0YI/JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gdmFjYXRpb24/J30gPSAn0KHQuNCz0YPRgNC90Lgg0LvQuCDRgdGC0LUsINGH0LUg0YDQsNCx0L7RgtC40YLQtSwg0LTQvtC60LDRgtC+INCx0Y/RhdGC0LUg0L3QsCDQv9C+0YfQuNCy0LrQsD8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBvdmVydGltZSBsZWF2ZT8nfSA9CiAgICAgICAgJ9Ch0LjQs9GD0YDQvdC4INC70Lgg0YHRgtC1LCDRh9C1INGB0YLQtSDRgNCw0LHQvtGC0LjQu9C4LCDQtNC+0LrQsNGC0L4g0LHRj9GF0YLQtSDQvdCwINC40LfQstGK0L3RgNC10LTQtdC9INGC0YDRg9C0Pyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIG1vcmUgdGhhbiAxNiBob3Vycz8nfSA9ICfQodC40LPRg9GA0L3QuCDQu9C4INGB0YLQtSwg0YfQtSDRgdGC0LUg0YDQsNCx0L7RgtC40LvQuCDQv9C+0LLQtdGH0LUg0L7RgiAxNiDRh9Cw0YHQsD8nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdPdmVydmlldwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSByZXBvcnRpbmcgbW9udGhseSBvdmVydmlldyd9ID0gJ9Cc0LXRgdC10YfQtdC9INC/0YDQtdCz0LvQtdC0INC90LAg0LLRgNC10LzQtdGC0L4g0LfQsCDQvtGC0YfQuNGC0LDQvdC1JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICfQmNC30LLRitC90YDQtdC00LXQvSDRgtGA0YPQtCAo0YfQsNGB0L7QstC1KSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAodGhpcyBtb250aCknfSA9ICfQmNC30LLRitC90YDQtdC20LjQvCAo0YLQvtC30Lgg0LzQtdGB0LXRhiknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRvdGFsKSd9ID0gJ9CY0LfQstGK0L3RgNC10LTQtdC9INGC0YDRg9C0ICjQvtCx0YnQviknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAn0J7RgdGC0LDQstCw0Ykg0L7RgtC/0YPRgdC6JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJ9Ce0YLQv9GD0YHQutCwICjQtNC90LgpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0aGlzIG1vbnRoKSd9ID0gJ9CS0LfQtdGC0LAg0L7RgtC/0YPRgdC60LAgKNGC0L7Qt9C4INC80LXRgdC10YYpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0b3RhbCknfSA9ICfQktC30LXRgtCwINC+0YLQv9GD0YHQutCwICjQvtCx0YnQviknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIHZhY2F0aW9uJ30gPSAn0J7RgdGC0LDQstCw0YnQsCDQvtGC0L/Rg9C60LAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICfQntGC0L/Rg9GB0Log0L/QviDQsdC+0LvQtdGB0YIgKNC00L3QuCknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICfQntGC0L/Rg9GB0L3QsNGCINC1INCx0L7Qu9C90LjRh9C10L0gKNGC0L7Qt9C4INC80LXRgdC10YYpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUgdGFrZW4gKHRvdGFsKSd9ID0gJ9Ce0YLQv9GD0YHQvdCw0YIg0LHQvtC70LXQvdC40YfQtdC9ICjQvtCx0YnQviknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJldmlvdXMgbW9udGgnfSA9ICfQn9GA0LXQtNC90LjRjyDQvNC10YHQtdGGJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICfQodC70LXQtNCy0LDRidC40Y8g0LzQtdGB0LXRhic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrZGF5J30gPSAn0JTQtdC70L3QuNGH0LXQvSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAn0KDQsNCx0L7RgtC90Lgg0YfQsNGB0L7QstC1JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJ9Ce0LHRidC+INGA0LDQsdC+0YLQvdC+INCy0YDQtdC80LUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlclwncyBwcm9qZWN0IG92ZXJ2aWV3J30gPSAn0J/RgNC10LPQu9C10LQg0L3QsCDQv9GA0L7QtdC60YLQsCDQvdCwINC/0L7RgtGA0LXQsdC40YLQtdC70Y8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAn0KfQsNGB0L7QstC1ICjQvNC10YHQtdGH0L3QviknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKExpZmV0aW1lKSd9ID0gJ9Cn0LDRgdC+0LLQtSAo0YbRj9C7INC20LjQstC+0YIpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dyYW5kIHRvdGFsJ30gPSAn0J7QsdGJ0L4nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAn0J7RgtGH0LjRgtCw0L3QtSDQvdCwINCy0YDQtdC80LXRgtC+JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICfQnNC10YHQtdGH0L3QsCDQvdCw0LLQuNCz0LDRhtC40Y8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJ9Ce0YLQuNC00LXRgtC1INC90LAg0LTQsNGC0LDRgtCwJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgcmVwb3J0cyd9ID0gJ9Cf0L7RgtGA0LXQsdC40YLQtdC70YHQutC4INC+0YLRh9C10YLQuCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNb250aGx5IHRvdGFsJ30gPSAn0J7QsdGJ0L4g0LfQsCDQvNC10YHQtdGG0LAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGlmZXRpbWUgdG90YWwnfSA9ICfQntCx0YnQviDQt9CwINGG0LXQu9C40Y8g0L/QtdGA0LjQvtC0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIGxlYXZlJ30gPSAn0J7RgtC/0YPRgdC6INC30LAg0LjQt9Cy0YrQvdGA0LXQtNC10L0g0YLRgNGD0LQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24nfSA9ICfQntGC0L/Rg9GB0LrQsCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAn0J7RgtC/0YPRgdC6INC/0L4g0LHQvtC70LXRgdGCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJ9Ce0YHRgtCw0LLQsNGJ0LAg0L7RgtC/0YPRgdC60LAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCByZXBvcnRzJ30gPSAn0JTQvtC60LvQsNC00Lgg0LfQsCDQv9GA0L7QtdC60YLQsCc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1Byb2plY3QKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgcmVwb3J0J30gPSAn0JTQvtC60LvQsNC0INC30LAg0L/RgNC+0LXQutGC0LAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gcmVwb3J0aW5nIG92ZXJ2aWV3J30gPSAn0J7RgtCy0L7RgNC10YLQtSDQvtGC0YfQtdGC0L3QuNGPINC/0YDQtdCz0LvQtdC0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0N1cnJlbnRseSBvbmx5IGFjdGl2ZSB1c2VycyBpbiB0aGlzIHByb2plY3QgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAn0JIg0LzQvtC80LXQvdGC0LAg0YHQtSDQv9C+0LrQsNC30LLQsNGCINGB0LDQvNC+INCw0LrRgtC40LLQvdC4INC/0L7RgtGA0LXQsdC40YLQtdC70Lgg0LIg0YLQvtC30Lgg0L/RgNC+0LXQutGCLiDQl9CwINC00LAg0L/RgNC+0LzQtdC90LjRgtC1INGC0L7QstCwINC/0L7QstC10LTQtdC90LjQtSwg0LzQvtC70Y8sINCw0LrRgtGD0LDQu9C40LfQuNGA0LDQudGC0LUg0L3QsNGB0YLRgNC+0LnQutCw0YLQsDonOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAn0J/QvtC90LDRgdGC0L7Rj9GJ0LXQvCDRgdC1INC/0L7QutCw0LfQstCw0YIg0LLRgdC40YfQutC4INC/0L7RgtGA0LXQsdC40YLQtdC70LgsINC+0YLRh9C40YLQsNGJ0Lgg0LLRgNC10LzQtdGC0L4uINCX0LAg0LTQsCDQv9GA0L7QvNC10L3QuNGC0LUg0YLQvtCy0LAg0L/QvtCy0LXQtNC10L3QuNC1LCDQvNC+0LvRjywg0LDQutGC0YPQsNC70LjQt9C40YDQsNC50YLQtSDQvdCw0YHRgtGA0L7QudC60LDRgtCwOic7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byB0aWNrZXQnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdTZXR0aW5nCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgQWNjb3VudGluZyBQcm9qZWN0IFNldHRpbmdzJ30gPSAn0KDQtdC00LDQutGC0LjRgNCw0L3QtSDQvdCwINC90LDRgdGC0YDQvtC50LrQuNGC0LUg0L3QsCDQv9GA0L7QtdC60YIg0LfQsCDRgdGH0LXRgtC+0LLQvtC00L3QviDQstGA0LXQvNC1JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBwcm9qZWN0J30gPSAn0JTQvtCx0LDQstGP0L3QtSDQvdCwINC/0YDQvtC10LrRgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBzZXR0aW5ncyBvdmVydmlldyd9ID0gJ9Ce0YLQuNC00LXRgtC1INCyINC+0LHRiSDQv9GA0LXQs9C70LXQtCDQvdCwINC90LDRgdGC0YDQvtC50LrQuNGC0LUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICfQlNC+0LHQsNCy0Y/QvdC1INC90LAg0L/RgNC+0LXQutGCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgUHJvamVjdCBTZXR0aW5ncyd9ID0gJ9Cg0LXQtNCw0LrRgtC40YDQsNC90LUg0L3QsCDQvdCw0YHRgtGA0L7QudC60LjRgtC1INC90LAg0L/RgNC+0LXQutGC0LAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlcmUgaXMgYWxyZWFkeSBhIHByb2plY3Qgd2l0aCB0aGlzIG5hbWUuIFBsZWFzZSwgY2hvb3NlIGEgZGlmZmVyZW50IG9uZS4nfSA9CiAgICAgICAgJ9CS0LXRh9C1INC40LzQsCDQv9GA0L7QtdC60YIg0YEg0YLQvtCy0LAg0LjQvNC1LiDQnNC+0LvRjywg0LjQt9Cx0LXRgNC10YLQtSDQtNGA0YPQsy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICfQoNC10LTQsNC60YLQuNGA0LDQvdC1INC90LAg0L3QsNGB0YLRgNC+0LnQutC40YLQtSDQt9CwINGB0YfQtdGC0L7QstC+0LTQvdC+INCy0YDQtdC80LUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICfQlNC+0LHQsNCy0Y/QvdC1INC90LAg0LfQsNC00LDRh9CwJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBhIHVzZXIgdG8gdGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGaWx0ZXIgZm9yIHByb2plY3RzLCB0YXNrcyBvciB1c2Vycyd9ID0gJ9Ck0LjQu9GC0YrRgCDQt9CwINC/0YDQvtC10LrRgtC4LCDQt9Cw0LTQsNGH0Lgg0LjQu9C4INC/0L7RgtGA0LXQsdC40YLQtdC70LgnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBwZXJpb2RzIGNhbiBub3QgYmUgZGVsZXRlZC4nfSA9ICfQn9C10YDQuNC+0LTQuNGC0LUg0L3QtSDQvNC+0LPQsNGCINC00LAg0LHRitC00LDRgiDQuNC30YLRgNC40YLQuC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCBMaXN0J30gPSAn0KHQv9C40YHRitC6INC90LAg0L/RgNC+0LXQutGC0LjRgtC1JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgTGlzdCd9ID0gJ9Ch0L/QuNGB0YrQuiDQvdCwINC30LDQtNCw0YfQuNGC0LUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICfQlNC+0LHQsNCy0Y/QvdC1INC90LAg0LfQsNC00LDRh9CwJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGFzayBTZXR0aW5ncyd9ID0gJ9Cg0LXQtNCw0LrRgtC40YDQsNC90LUg0L3QsCDQvdCw0YHRgtGA0L7QudC60LjRgtC1INC90LAg0LfQsNC00LDRh9C40YLQtSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgdGFzayB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAn0JLQtdGH0LUg0LjQvNCwINC30LDQtNCw0YfQsCDRgSDRgtC+0LLQsCDQuNC80LUuINCc0L7Qu9GPLCDQuNC30LHQtdGA0LXRgtC1INC00YDRg9Cz0L4uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgTGlzdCd9ID0gJ9Ch0L/QuNGB0YrQuiDRgSDQv9C+0YLRgNC10LHQuNGC0LXQu9C4JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICfQn9C+0YLRgNC10LHQuNGC0LXQu9GB0LrQuCDQvdCw0YHRgtGA0L7QudC60LgnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICfQn9C+0YLRgNC10LHQuNGC0LXQu9GP0YIg0LjQvNCwINC/0YDQsNCy0L4g0LTQsCDQstC40LbQtNCwINC40LfQstGK0L3RgNC10LTQvdC40YLQtSDRh9Cw0YHQvtCy0LUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJ9Cf0L7QutCw0LfQstCw0L3QtSDQvdCwINC40LfQstGK0L3RgNC10LTQtdC9INGC0YDRg9C0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBjcmVhdGUgcHJvamVjdHMnfSA9ICfQn9C+0YLRgNC10LHQuNGC0LXQu9GP0YIg0LjQvNCwINC/0YDQsNCy0L4g0LTQsCDRgdGK0LfQtNCw0LLQsCDQv9GA0L7QtdC60YLQuCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyBwcm9qZWN0IGNyZWF0aW9uJ30gPSAn0KDQsNC30YDQtdGI0LDQstCw0L3QtSDQt9CwINGB0YrQt9C00LDQstCw0L3QtdGC0L4g0L3QsCDQv9GA0L7QtdC60YInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAn0J/QvtGC0YDQtdCx0LjRgtC10LvRj9GCINC40LzQsCDQv9GA0LDQstC+INC00LAg0L/RgNC+0L/Rg9GB0L3QtSDQvtGC0YfQuNGC0LDQvdC10YLQviDQvdCwINCy0YDQtdC80LXRgtC+JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJ9Cf0L7Qt9Cy0L7Qu9C10YLQtSDQv9GA0L7Qv9GD0YHQutCw0L3QtSDQvtGC0YfQuNGC0LDQvdC10YLQviDQvdCwINCy0YDQtdC80LUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgdGhpcyBvcHRpb24gaXMgc2VsZWN0ZWQsIHRpbWUgYWNjb3VudGluZyBpcyBlZmZlY3RpdmVseSBvcHRpb25hbCBmb3IgdGhlIHVzZXIuJ30gPQogICAgICAgICfQkNC60L4g0YLQsNC30Lgg0L7Qv9GG0LjRjyDQtSDQuNC30LHRgNCw0L3QsCwg0L7RgtGH0LjRgtCw0L3QtdGC0L4g0L3QsCDQstGA0LXQvNC10YLQviDQvdC1INC1INC30LDQtNGK0LvQttC40YLQtdC70L3QviDQt9CwINC/0L7RgtGA0LXQsdC40YLQtdC70Y8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIHdpbGwgYmUgbm8gd2FybmluZ3MgYWJvdXQgbWlzc2luZyBlbnRyaWVzIGFuZCBubyBlbnRyeSBlbmZvcmNlbWVudC4nfSA9CiAgICAgICAgJ9Cd0Y/QvNCwINC00LAg0LjQvNCwINC/0YDQtdC00YPQv9GA0LXQttC00LXQvdC40Y8g0LfQsCDQu9C40L/RgdCy0LDRidC4INC30LDQv9C40YHQuCDQuCDQvdGP0LzQsCDQtNCwINC40LzQsCDQv9GA0LjQvdGD0LTQuNGC0LXQu9C90L4g0LLQu9C40LfQsNC90LUuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgU3BhbnMnfSA9ICfQktGA0LXQvNC10LLQuCDQuNC90YLQtdGA0LLQsNC70LgnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEJlZ2luJ30gPSAn0J3QsNGH0LDQu9C+JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBFbmQnfSA9ICfQmtGA0LDQuSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAn0JTQvdC4INC+0YIg0L7RgtC/0YPRgdC60LAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgcGVyIFdlZWsnfSA9ICfQp9Cw0YHQvtCy0LUg0L/RgNC10Lcg0YHQtdC00LzQuNGG0LDRgtCwJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICfQntGC0L7RgNC40LfQuNGA0LDQvSDQuNC30LLRitC90YDQtdC00LXQvSDRgtGA0YPQtCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdGFydCBEYXRlJ30gPSAn0JTQsNGC0LAg0LfQsCDQvdCw0YfQsNC70L4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGluc2VydCBhIHZhbGlkIGRhdGUuJ30gPSAn0JzQvtC70Y8g0LLRitCy0LXQtNC10YLQtSDQstCw0LvQuNC00L3QsCDQtNCw0YLQsC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICfQlNCw0YLQsCDQt9CwINC60YDQsNC5JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBlbmQgbXVzdCBiZSBhZnRlciBwZXJpb2QgYmVnaW4uJ30gPSAn0JrRgNCw0LnQvdC40Y/RgiDQv9C10YDQuNC+0LQg0YLRgNGP0LHQstCwINC00LAg0LHRitC00LUg0YHQu9C10LQg0L3QsNGH0LDQu9C+0YLQviDQvdCwINC/0LXRgNC40L7QtNCwLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMZWF2ZSBEYXlzJ30gPSAn0J7RgdGC0LDQstCw0YnQuCDQtNC90LgnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2x5IEhvdXJzJ30gPSAn0KHQtdC00LzQuNGH0L3QuCDRh9Cw0YHQvtCy0LUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICfQmNC30LLRitC90YDQtdC00L3Qvic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyB0aW1lIHBlcmlvZHMgZm91bmQuJ30gPSAn0J3Rj9C80LAg0L3QsNC80LXRgNC10L3QuCDQstGA0LXQvNC10LLQuCDQv9C10YDQuNC+0LTQuC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRpbWUgcGVyaW9kJ30gPSAn0JTQvtCx0LDQstC10YLQtSDQv9C10YDQuNC+0LQg0L7RgiDQstGA0LXQvNC1JzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nVmlldwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldyBUaW1lIFJlY29yZCd9ID0gJ9Cf0YDQtdCz0LvQtdC0INC90LAg0LLRgNC10LzQtdCy0LjRjyDQt9Cw0L/QuNGBJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAn0J/RgNC10LPQu9C10LQg0L3QsCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcmV2aW91cyBkYXknfSA9ICfQktGH0LXRgNCwJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgZGF5J30gPSAn0KPRgtGA0LUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gZGF0YSBmb3VuZCBmb3IgdGhpcyBkYXkuJ30gPSAn0J3Rj9C80LAg0LTQsNC90L3QuCDQt9CwINGC0L7Qt9C4INC00LXQvS4nOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAn0J3QtSDQvNC+0LPQsNGCINC00LAg0YHQtSDQstC80YrQutC90LDRgiDRgNCw0LHQvtGC0L3QuCDQtdC00LjQvdC40YbQuCEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBQcm9qZWN0cyd9ID0gJ9Cf0L7RgdC70LXQtNC90Lgg0L/RgNC+0LXQutGC0LgnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAn0J3QtSDQvNC+0LPQsNGCINC00LAg0YHQtSDQt9Cw0L/QsNC30Y/RgiDQvdCw0YHRgtGA0L7QudC60LgsINC30LDRidC+0YLQviDQtdC00LjQvSDQtNC10L0g0LjQvNCwINGB0LDQvNC+IDI0INGH0LDRgdCwISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgZGVsZXRlIFdvcmtpbmcgVW5pdHMhJ30gPSAn0J3QtSDQvNC+0LPQsNGCINC00LAg0YHQtSDQuNC30YLRgNC40Y/RgiDRgNCw0LHQvtGC0L3QuCDQtdC00LjQvdC40YbQuCEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICfQotCw0LfQuCDQtNCw0YLQsCDQtSDQuNC30LLRitC9INC+0LPRgNCw0L3QuNGH0LXQvdC40LXRgtC+LCDQvdC+INCy0YHQtSDQvtGJ0LUg0L3QtSDRgdGC0LUg0LLQvNGK0LrQvdCw0LvQuCDRgtC+0LfQuCDQtNC10L0sINGC0LDQutCwINGH0LUg0L/QvtC70YPRh9Cw0LLQsNGC0LUg0LXQtNC90LAgKCEpINCy0YrQt9C80L7QttC90L7RgdGCINC00LAg0LLQvNGK0LrQvdC10YLQtSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIFdvcmtpbmcgRGF5cyd9ID0gJ9Cd0LXQv9GK0LvQvdC4INGA0LDQsdC+0YLQvdC4INC00L3QuCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWNjZXNzZnVsIGluc2VydCEnfSA9ICfQo9GB0L/QtdGI0L3QviDQstC80YrQutCy0LDQvdC1ISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFcnJvciB3aGlsZSBpbnNlcnRpbmcgbXVsdGlwbGUgZGF0ZXMhJ30gPSAn0JPRgNC10YjQutCwINC/0YDQuCDQstC80YrQutCy0LDQvdC1INC90LAg0L3Rj9C60L7Qu9C60L4g0LTQsNGC0LghJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Y2Nlc3NmdWxseSBpbnNlcnRlZCBlbnRyaWVzIGZvciBzZXZlcmFsIGRhdGVzISd9ID0gJ9Cj0YHQv9C10YjQvdC+INCy0LzRitC60L3QsNGC0Lgg0LfQsNC/0LjRgdC4INC30LAg0L3Rj9C60L7Qu9C60L4g0LTQsNGC0LghJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICfQktGK0LLQtdC00LXQvdCw0YLQsCDQtNCw0YLQsCDQtSDQvdC10LLQsNC70LjQtNC90LAhINCU0LDRgtCw0YLQsCDQsdC10YjQtSDQv9GA0L7QvNC10L3QtdC90LAg0L3QsCDQtNC90LXRgS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAn0J3Rj9C80LAg0LrQvtC90YTQuNCz0YPRgNC40YDQsNC9INC/0LXRgNC40L7QtCDQvtGCINCy0YDQtdC80LUg0LjQu9C4INC/0L7RgdC+0YfQtdC90LDRgtCwINC00LDRgtCwINC1INC40LfQstGK0L0g0L7Qv9GA0LXQtNC10LvQtdC90LjRgtC1INC/0LXRgNC40L7QtNC4INC+0YIg0LLRgNC10LzQtS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNvbnRhY3QgdGhlIHRpbWUgYWNjb3VudGluZyBhZG1pbmlzdHJhdG9yIHRvIHVwZGF0ZSB5b3VyIHRpbWUgcGVyaW9kcyEnfSA9CiAgICAgICAgJ9Cc0L7Qu9GPLCDRgdCy0YrRgNC20LXRgtC1INGB0LUg0YEg0LDQtNC80LjQvdC40YHRgtGA0LDRgtC+0YDQsCDQt9CwINC+0YLRh9C40YLQsNC90LUg0L3QsCDQstGA0LXQvNC10YLQviwg0LfQsCDQtNCwINCw0LrRgtGD0LDQu9C40LfQuNGA0LDRgtC1INCy0LDRiNC40YLQtSDQstGA0LXQvNC10LLQuCDQv9C10YDQuNC+0LTQuCEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJ9Cf0L7RgdC70LXQtNC90L4g0LjQt9Cx0YDQsNC90Lgg0L/RgNC+0LXQutGC0LgnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsIFByb2plY3RzJ30gPSAn0JLRgdC40YfQutC4INC/0YDQvtC10LrRgtC4JzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBOZWVkIFByb2plY3RJRCd9ID0gJ9Ce0YLRh9C40YLQsNC90LUg0L3QsCDQv9GA0L7QtdC60YI6INCd0YPQttC00LDQtdGC0LUg0YHQtSDQvtGCIFByb2plY3RJRCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmcgUHJvamVjdCd9ID0gJ9Cf0YDQvtC10LrRgiDQt9CwINC+0YLRh9C40YLQsNC90LUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nJ30gPSAn0J7RgtGH0LXRgtC90L7RgdGCJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBOZWVkIFRpY2tldElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5vIFByb2plY3QgZm9yIFRpY2tldCBmb3VuZC4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdTZXR0aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gdXBkYXRlIHVzZXIgc2V0dGluZ3MhJ30gPSAn0J3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LDQutGC0YPQsNC70LjQt9C40YDQsNGCINC/0L7RgtGA0LXQsdC40YLQtdC70YHQutC40YLQtSDQvdCw0YHRgtGA0L7QudC60LghJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgYWRkZWQhJ30gPSAn0J/RgNC+0LXQutGC0YrRgiDQtSDQtNC+0LHQsNCy0LXQvSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCB1cGRhdGVkISd9ID0gJ9Cf0YDQvtC10LrRgtGK0YIg0LUg0LDQutGC0YPQsNC70LjQt9C40YDQsNC9ISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIGFkZGVkISd9ID0gJ9CX0LDQtNCw0YfQsNGC0LAg0LUg0LTQvtCx0LDQstC10L3QsCEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayB1cGRhdGVkISd9ID0gJ9CX0LDQtNCw0YfQsNGC0LAg0LUg0LDQutGC0YPQsNC70LjQt9C40YDQsNC90LAhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZSBVc2VySUQgaXMgbm90IHZhbGlkISd9ID0gJ1VzZXJJRCDQvdC1INC1INCy0LDQu9C40LTQtdC9ISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IHVzZXIgZGF0YSEnfSA9ICfQndC1INC80L7Qs9CwINC00LAg0LLQvNGK0LrQvdCwINC/0L7RgtGA0LXQsdC40YLQtdC70YHQutC4INC00LDQvdC90LghJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byBhZGQgdGltZSBwZXJpb2QhJ30gPSAn0J3QtSDQvNC+0LbQtSDQtNCwINGB0LUg0LTQvtCx0LDQstC4INC/0LXRgNC40L7QtCDQvtGCINCy0YDQtdC80LUhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NldHRpbmcnfSA9ICfQndCw0YHRgtGA0L7QudC60LAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciB1cGRhdGVkISd9ID0gJ9Cf0L7RgtGA0LXQsdC40YLQtdC70Y/RgiDQtSDQsNC60YLRg9Cw0LvQuNC30LjRgNCw0L0hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgYWRkZWQhJ30gPSAn0J/QvtGC0YDQtdCx0LjRgtC10LvRj9GCINC1INC00L7QsdCw0LLQtdC9ISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXcgVXNlcid9ID0gJ9Cd0L7QsiDQv9C+0YLRgNC10LHQuNGC0LXQuyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgU3RhdHVzJ30gPSAn0KHRitGB0YLQvtGP0L3QuNC1INC90LAg0L/QtdGA0LjQvtC0JzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nVmlldy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldzogTmVlZCAlcyEnfSA9ICfQmNC30LPQu9C10LQ6INCd0YPQttC00LDQtdGC0LUg0YHQtSDQvtGCICVzISc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL091dHB1dC9IVE1ML05vdGlmaWNhdGlvbi9UaW1lQWNjb3VudGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGluc2VydCB5b3VyIHdvcmtpbmcgaG91cnMhJ30gPSAn0JzQvtC70Y8sINCy0YrQstC10LTQtdGC0LUg0LLQsNGI0LXRgtC+INGA0LDQsdC+0YLQvdC+INCy0YDQtdC80LUhJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvVG9vbEJhci9JbmNvbXBsZXRlV29ya2luZ0RheXMucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0luY29tcGxldGUgd29ya2luZyBkYXlzJ30gPSAn0J3QtdC/0YrQu9C90Lgg0YDQsNCx0L7RgtC90Lgg0LTQvdC4JzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50LkVkaXRUaW1lUmVjb3JkcwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhdCBsZWFzdCBvbmUgZGF5ISd9ID0gJ9Cc0L7Qu9GPLCDQuNC30LHQtdGA0LXRgtC1INC/0L7QvdC1INC10LTQuNC9INC00LXQvSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBFbnRyeSd9ID0gJ9Cc0LDRgdC+0LLQviDQstC/0LjRgdCy0LDQvdC1JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgYSByZWFzb24gZm9yIGFic2VuY2UhJ30gPSAn0JzQvtC70Y8sINC40LfQsdC10YDQtdGC0LUg0L/RgNC40YfQuNC90LAg0LfQsCDQvtGC0YHRitGB0YLQstC40LUhJzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5J30gPSAn0JjQt9GC0YDQuNCy0LDQvdC1INC90LAg0LLRgNC10LzQtdGC0L4g0LfQsCDQstC/0LjRgdCy0LDQvdC1INCyINGB0YfQtdGC0L7QstC+0LTRgdGC0LLQvtGC0L4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICfQn9C+0YLQstGK0YDQtNC10YLQtSc7CgogICAgIyBTeXNDb25maWcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FjdGl2YXRlIHRoZSBzeW5jaHJvbmlzYXRpb24gb2YgVGlja2V0LVRpbWVVbml0cyBpbnRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWdlbnQgaW50ZXJmYWNlIG5vdGlmaWNhdGlvbiBtb2R1bGUgdG8gc2VlIHRoZSBudW1iZXIgb2YgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMgZm9yIHRoZSB1c2VyLid9ID0KICAgICAgICAn0JzQvtC00YPQuyDQt9CwINGD0LLQtdC00L7QvNGP0LLQsNC90LUsINC30LAg0L/QvtC60LDQt9Cy0LDQvdC1INC90LAg0LHRgNC+0Y8g0L3QtdC30LDQstGK0YDRiNC10L3QuCDRgNCw0LHQvtGC0L3QuCDQtNC90Lgg0L3QsCDQv9C+0YLRgNC10LHQuNGC0LXQu9GPINCyINC40L3RgtC10YDRhNC10LnRgdCwINC90LAg0LDQs9C10L3RgtCwLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICfQmNC80LUg0L/QviDQv9C+0LTRgNCw0LfQsdC40YDQsNC90LUg0LfQsCDQvdC+0LLQuCDQtNC10LnRgdGC0LLQuNGPLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IG5hbWUgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICfQmNC80LUg0L/QviDQv9C+0LTRgNCw0LfQsdC40YDQsNC90LUg0LfQsCDQvdC+0LLQuCDQv9GA0L7QtdC60YLQuC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkYXRlIGVuZC4nfSA9ICfQndCw0YHRgtGA0L7QudC60LAg0L/QviDQv9C+0LTRgNCw0LfQsdC40YDQsNC90LUg0LfQsCDQutGA0LDQudC90LAg0LTQsNGC0LAuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICfQndCw0YHRgtGA0L7QudC60LAg0L/QviDQv9C+0LTRgNCw0LfQsdC40YDQsNC90LUg0LfQsCDQvdCw0YfQsNC70L3QsCDQtNCw0YLQsC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICfQndCw0YHRgtGA0L7QudC60LAg0L/QviDQv9C+0LTRgNCw0LfQsdC40YDQsNC90LUg0LfQsCDQvtC/0LjRgdCw0L3QuNC1Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGxlYXZlIGRheXMuJ30gPSAn0J3QsNGB0YLRgNC+0LnQutCwINC/0L4g0L/QvtC00YDQsNC30LHQuNGA0LDQvdC1INC30LAg0LTQvdC4INC+0YLQv9GD0YHQui4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBvdmVydGltZS4nfSA9ICfQndCw0YHRgtGA0L7QudC60LAg0L/QviDQv9C+0LTRgNCw0LfQsdC40YDQsNC90LUg0LfQsCDQuNC30LLRitC90YDQtdC00LXQvSDRgtGA0YPQtC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciB0aGUgc3RhbmRhcmQgd2Vla2x5IGhvdXJzLid9ID0gJ9Cd0LDRgdGC0YDQvtC50LrQsCDQv9C+INC/0L7QtNGA0LDQt9Cx0LjRgNCw0L3QtSDQt9CwINGB0YLQsNC90LTQsNGA0YLQvdC40YLQtSDRgdC10LTQvNC40YfQvdC4INGH0LDRgdC+0LLQtS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBhY3Rpb25zLid9ID0gJ9Ch0YrRgdGC0L7Rj9C90LjQtSDQv9C+INC/0L7QtNGA0LDQt9Cx0LjRgNCw0L3QtSDQt9CwINC90L7QstC4INC00LXQudGB0YLQstC40Y8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgcHJvamVjdHMuJ30gPSAn0KHRitGB0YLQvtGP0L3QuNC1INC/0L4g0L/QvtC00YDQsNC30LHQuNGA0LDQvdC1INC30LAg0L3QvtCy0Lgg0L/RgNC+0LXQutGC0LguJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgdXNlcnMuJ30gPSAn0KHRitGB0YLQvtGP0L3QuNC1INC/0L4g0L/QvtC00YDQsNC30LHQuNGA0LDQvdC1INC30LAg0L3QvtCy0Lgg0L/QvtGC0YDQtdCx0LjRgtC10LvQuC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAn0J7Qv9GA0LXQtNC10LvRjyDQv9GA0L7QtdC60YLQuNGC0LUsINC30LAg0LrQvtC40YLQviDQtSDQvdC10L7QsdGF0L7QtNC40LzQsCDQt9Cw0LHQtdC70LXQttC60LAuINCQ0LrQviBSZWdFeHAg0YHRitCy0L/QsNC00LAg0YEg0L/RgNC+0LXQutGC0LAsINGC0YDRj9Cx0LLQsCDQtNCwINCy0LzRitC60L3QtdGC0LUg0Lgg0LfQsNCx0LXQu9C10LbQutCwLiBSZWdFeHAg0LjQt9C/0L7Qu9C30LLQsCBzbXgg0L/QsNGA0LDQvNC10YLRitGA0LAuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICfQntC/0YDQtdC00LXQu9GPINC00LDQu9C4INGB0YLQsNGC0LjRgdGC0LjRh9C10YHQutC40Y/RgiDQvNC+0LTRg9C7INC80L7QttC1INC00LAg0LPQtdC90LXRgNC40YDQsCDQuNC90YTQvtGA0LzQsNGG0LjRjyDQt9CwINC+0YLRh9C40YLQsNC90LUg0L3QsCDQstGA0LXQvNC10YLQvi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAn0KDQtdC00LDQutGC0LjRgNCw0LnRgtC1INC90LDRgdGC0YDQvtC50LrQuNGC0LUg0LfQsCDQvtGC0YfQuNGC0LDQvdC1INC90LAg0LLRgNC10LzQtdGC0L4uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAn0KDQtdC00LDQutGC0LjRgNCw0L3QtSDQvdCwINC30LDQv9C40YEg0LfQsCDQstGA0LXQvNC1Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFdmVyeSB0aW1lIGEgYWdlbnQgYWRkIFRpbWVVbml0cyB0byBhIHRpY2tldCwgd2Ugc3luYyB0aGUgaW5mb3JtYXRpb24gdG8gdGhlIHRpbWVhY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGb3IgaG93IG1hbnkgZGF5cyBhZ28geW91IGNhbiBpbnNlcnQgd29ya2luZyB1bml0cy4nfSA9ICfQl9CwINC60L7Qu9C60L4g0LTQvdC4INC90LDQt9Cw0LQg0LzQvtC20LXRgtC1INC00LAg0LLQvNGK0LrQvdC10YLQtSDRgNCw0LHQvtGC0L3QuCDQtdC00LjQvdC40YbQuC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgb25seSB1c2VycyB0aGF0IGhhcyBhZGRlZCB3b3JraW5nIHRpbWUgdG8gdGhlIHNlbGVjdGVkIHByb2plY3QgYXJlIHNob3duLid9ID0KICAgICAgICAn0JDQutC+INC1INGA0LDQt9GA0LXRiNC10L3Qviwg0YHQtSDQv9C+0LrQsNC30LLQsNGCINGB0LDQvNC+INC/0L7RgtGA0LXQsdC40YLQtdC70LgsINC60L7QuNGC0L4g0YHQsCDQtNC+0LHQsNCy0LjQu9C4INGA0LDQsdC+0YLQvdC+INCy0YDQtdC80LUg0LrRitC8INC40LfQsdGA0LDQvdC40Y8g0L/RgNC+0LXQutGCLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZHJvcGRvd24gZWxlbWVudHMgaW4gdGhlIGVkaXQgc2NyZWVuIGFyZSBjaGFuZ2VkIHRvIG1vZGVybml6ZWQgYXV0b2NvbXBsZXRpb24gZmllbGRzLid9ID0KICAgICAgICAn0JDQutC+INC1INGA0LDQt9GA0LXRiNC10L3Qviwg0L/QsNC00LDRidC40YLQtSDQtdC70LXQvNC10L3RgtC4INCyINC10LrRgNCw0L3QsCDQt9CwINGA0LXQtNCw0LrRgtC40YDQsNC90LUg0YHQtSDQv9GA0L7QvNC10L3Rj9GCINC90LAg0LzQvtC00LXRgNC90LjQt9C40YDQsNC90Lgg0L/QvtC70LXRgtCwINC30LAg0LDQstGC0L7QvNCw0YLQuNGH0L3QviDQtNC+0LLRitGA0YjQstCw0L3QtS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGNhbiBiZSB1c2VkIGluc3RlYWQgdHdvIGxpc3Qgb2YgcHJvamVjdHMgKGxhc3QgYW5kIGFsbCBvbmVzKS4gSXQgY291bGQgYmUgdXNlZCBvbmx5IGlmIFRpbWVBY2NvdW50aW5nOjpFbmFibGVBdXRvQ29tcGxldGlvbiBpcyBlbmFibGVkLid9ID0KICAgICAgICAn0JDQutC+INC1INCw0LrRgtC40LLQuNGA0LDQvSwg0YTQuNC70YLRitGA0YrRgiDQt9CwINC/0YDQtdC00LjRiNC90LjRgtC1INC/0YDQvtC10LrRgtC4INC80L7QttC1INC00LAg0YHQtSDQuNC30L/QvtC70LfQstCwINCy0LzQtdGB0YLQviDQtNCy0LAg0YHQv9C40YHRitC60LAg0YEg0L/RgNC+0LXQutGC0LggKNC/0L7RgdC70LXQtNC10L0g0Lgg0LLRgdC40YfQutC4KS4g0JzQvtC20LUg0LTQsCDRgdC1INC40LfQv9C+0LvQt9Cy0LAg0YHQsNC80L4g0LDQutC+IFRpbWVBY2NvdW50aW5nOjpFbmFibGVBdXRvQ29tcGxldGlvbiDQtSDQsNC60YLQuNCy0LjRgNCw0L0uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBmaWx0ZXIgZm9yIHRoZSBwcmV2aW91cyBwcm9qZWN0cyBpcyBhY3RpdmUgYnkgZGVmYXVsdCBpZiB0aGVyZSBhcmUgdGhlIHByZXZpb3VzIHByb2plY3RzLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgRW5hYmxlQXV0b0NvbXBsZXRpb24gYW5kIFRpbWVBY2NvdW50aW5nOjpVc2VGaWx0ZXIgYXJlIGVuYWJsZWQuJ30gPQogICAgICAgICfQkNC60L4g0LUg0LDQutGC0LjQstC40YDQsNC9LCDRhNC40LvRgtGK0YDRitGCINC30LAg0L/RgNC10LTQuNGI0L3QuNGC0LUg0L/RgNC+0LXQutGC0Lgg0LUg0LDQutGC0LjQstC10L0g0L/QviDQv9C+0LTRgNCw0LfQsdC40YDQsNC90LUsINCw0LrQviDQuNC80LAg0L/RgNC10LTQuNGI0L3QuCDQv9GA0L7QtdC60YLQuC4g0JzQvtC20LUg0LTQsCDRgdC1INC40LfQv9C+0LvQt9Cy0LAg0YHQsNC80L4g0LDQutC+IEVuYWJsZUF1dG9Db21wbGV0aW9uINC4IFRpbWVBY2NvdW50aW5nOjpVc2VGaWx0ZXIg0YHQsCDQsNC60YLQuNCy0LjRgNCw0L3QuC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIHVzZXIgaXMgYWxsb3dlZCB0byBlbnRlciAib24gdmFjYXRpb24gbGVhdmUiLCAib24gc2ljayBsZWF2ZSIgYW5kICJvbiBvdmVydGltZSBsZWF2ZSIgdG8gbXVsdGlwbGUgZGF0ZXMgYXQgb25jZS4nfSA9CiAgICAgICAgJ9CQ0LrQviDQtSDRgNCw0LfRgNC10YjQtdC90L4sINC90LAg0L/QvtGC0YDQtdCx0LjRgtC10LvRjyDQtSDQv9C+0LfQstC+0LvQtdC90L4g0LTQsCDQstGK0LLQtdC20LTQsCDigJ7QsiDQvtGC0L/Rg9GB0Log0LLRitCyINCy0LDQutCw0L3RhtC40Y/igJwsIOKAntCyINC+0YLQv9GD0YHQuiDQv9C+INCx0L7Qu9C10YHRguKAnCDQuCDigJ7QsiDQvtGC0L/Rg9GB0Log0LfQsCDQuNC30LLRitC90YDQtdC00LXQvSDRgtGA0YPQtOKAnCDQt9CwINC90Y/QutC+0LvQutC+INC00LDRgtC4INC90LDQstC10LTQvdGK0LYuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAn0JzQsNC60YHQuNC80LDQu9C10L0g0LHRgNC+0Lkg0YDQsNCx0L7RgtC90Lgg0LTQvdC4LCDRgdC70LXQtCDQutC+0LjRgtC+INGA0LDQsdC+0YLQvdC40YLQtSDQtdC00LjQvdC40YbQuCDRgtGA0Y/QsdCy0LAg0LTQsCDQsdGK0LTQsNGCINCy0YrQstC10LTQtdC90LguJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICfQnNCw0LrRgdC40LzQsNC70LXQvSDQsdGA0L7QuSDRgNCw0LHQvtGC0L3QuCDQtNC90Lgg0LHQtdC3INCy0YrQstC10LbQtNCw0L3QtSDQvdCwINGA0LDQsdC+0YLQvdC4INC10LTQuNC90LjRhtC4LCDRgdC70LXQtCDQutC+0LXRgtC+INGJ0LUg0YHQtSDQv9C+0LrQsNC30LLQsCDQv9GA0LXQtNGD0L/RgNC10LbQtNC10L3QuNC1Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydmlldy4nfSA9ICfQn9GA0LXQs9C70LXQtC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCB0aW1lIHJlcG9ydGluZy4nfSA9ICfQntGC0YfQuNGC0LDQvdC1INC90LAg0LLRgNC10LzQtdGC0L4g0L/QviDQv9GA0L7QtdC60YLQsC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIGFjdGlvbiBsaXN0IGFjY29yZGluZyB0byBzZWxlY3RlZCBwcm9qZWN0LiBLZXkgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9uIGZvciBwcm9qZWN0KHMpLCBjb250ZW50IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGFjdGlvbihzKS4nfSA9CiAgICAgICAgJ9Cg0LXQs9GD0LvRj9GA0L3QuCDQuNC30YDQsNC30Lgg0LfQsCDQvtCz0YDQsNC90LjRh9Cw0LLQsNC90LUg0L3QsCDRgdC/0LjRgdGK0LrQsCDRgSDQtNC10LnRgdGC0LLQuNGPINGB0L/QvtGA0LXQtCDQuNC30LHRgNCw0L3QuNGPINC/0YDQvtC10LrRgi4g0JrQu9GO0YfRitGCINGB0YrQtNGK0YDQttCwINGA0LXQs9GD0LvRj9GA0LXQvSDQuNC30YDQsNC3INC30LAg0L/RgNC+0LXQutGCKNC4KSwg0YHRitC00YrRgNC20LDQvdC40LXRgtC+INGB0YrQtNGK0YDQttCwINGA0LXQs9GD0LvRj9GA0L3QuCDQuNC30YDQsNC30Lgg0LfQsCDQtNC10LnRgdGC0LLQuNC1KNGPKS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAn0KDQtdCz0YPQu9GP0YDQvdC4INC40LfRgNCw0LfQuCDQt9CwINC+0LPRgNCw0L3QuNGH0LDQstCw0L3QtSDQvdCwINGB0L/QuNGB0YrQutCwINGBINC/0YDQvtC10LrRgtC4INGB0L/QvtGA0LXQtCDQv9C+0YLRgNC10LHQuNGC0LXQu9GB0LrQuCDQs9GA0YPQv9C4LiDQmtC70Y7Rh9GK0YIg0YHRitC00YrRgNC20LAg0YDQtdCz0YPQu9GP0YDQtdC9INC40LfRgNCw0Lcg0LfQsCDQv9GA0L7QtdC60YIo0LgpLCDRgdGK0LTRitGA0LbQsNC90LjQtdGC0L4g0YHRitC00YrRgNC20LAg0YDQsNC30LTQtdC70LXQvSDRgdGK0YEg0LfQsNC/0LXRgtCw0Lgg0YHQv9C40YHRitC6INC+0YIg0LPRgNGD0L/QuC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBhY2NvdW50ZWQgdGltZXMgZm9yIHRoaXMgdGlja2V0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NwZWNpZmllcyBpZiB3b3JraW5nIGhvdXJzIGNhbiBiZSBpbnNlcnRlZCB3aXRob3V0IHN0YXJ0IGFuZCBlbmQgdGltZXMuJ30gPQogICAgICAgICfQo9C60LDQt9Cy0LAg0LTQsNC70Lgg0YDQsNCx0L7RgtC90LjRgtC1INGH0LDRgdC+0LLQtSDQvNC+0LPQsNGCINC00LAg0LHRitC00LDRgiDQstC80YrQutC90LDRgtC4INCx0LXQtyDQvdCw0YfQsNC70LXQvSDQuCDQutGA0LDQtdC9INGH0LDRgS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3luY2hyb25pc2UgY3VzdG9tZXJzIGFzIGEgbmV3IHByb2plY3QgaWYgdGhleSBleGlzdHMgaW4gdGhlIGN1c3RvbWVyIGRhdGFiYXNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgbW9kdWxlIGZvcmNlcyBpbnNlcnRzIGluIFRpbWVBY2NvdW50aW5nLid9ID0gJ9Ci0L7Qt9C4INC80L7QtNGD0Lsg0YPRgdC60L7RgNGP0LLQsCDQstC80YrQutCy0LDQvdC40Y8g0LIgVGltZUFjY291bnRpbmcuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgbm90aWZpY2F0aW9uIG1vZHVsZSBnaXZlcyBhIHdhcm5pbmcgaWYgdGhlcmUgYXJlIHRvbyBtYW55IGluY29tcGxldGUgd29ya2luZyBkYXlzLid9ID0KICAgICAgICAn0KLQvtC30Lgg0LzQvtC00YPQuyDQt9CwINGD0LLQtdC00L7QvNGP0LLQsNC90LUg0LTQsNCy0LAg0L/RgNC10LTRg9C/0YDQtdC20LTQtdC90LjQtSwg0LDQutC+INC40LzQsCDRgtCy0YrRgNC00LUg0LzQvdC+0LPQviDQvdC10L/RitC70L3QuCDRgNCw0LHQvtGC0L3QuCDQtNC90LguJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCB0aW1lIHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIEFjY291bnRpbmcnfSA9ICfQntGC0YfQuNGC0LDQvdC1INC90LAg0LLRgNC10LzQtdGC0L4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBSZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIGVkaXQuJ30gPSAn0KDQtdC00LDQutGC0LjRgNCw0L3QtSDQvtGC0YfQuNGC0LDQvdC10YLQviDQvdCwINCy0YDQtdC80LXRgtC+Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgb3ZlcnZpZXcuJ30gPSAn0J/RgNC10LPQu9C10LQg0L3QsCDQvtGC0YfQuNGC0LDQvdC10YLQviDQt9CwINCy0YDQtdC80LXRgtC+Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJ9Ce0YLRh9C40YLQsNC90LUg0L3QsCDQstGA0LXQvNC10YLQvi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHNldHRpbmdzLid9ID0gJ9Cd0LDRgdGC0YDQvtC50LrQuCDQt9CwINC+0YLRh9C40YLQsNC90LUg0L3QsCDQstGA0LXQvNC10YLQvi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHRpY2tldCByZXBvcnQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB2aWV3Lid9ID0gJ9CY0LfQs9C70LXQtCDQt9CwINC+0YLRh9C40YLQsNC90LUg0L3QsCDQstGA0LXQvNC10YLQvi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJ9Ce0YLRh9C40YLQsNC90LUg0L3QsCDQstGA0LXQvNC10YLQvi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG8gdXNlIGlmIHNvbWUgYWN0aW9ucyByZWR1Y2VkIHRoZSB3b3JraW5nIGhvdXJzIChmb3IgZXhhbXBsZSwgaWYgb25seSBoYWxmIG9mIHRoZSB0cmF2ZWxpbmcgdGltZSBpcyBwYWlkIEtleSA9PiB0cmF2ZWxpbmc7IENvbnRlbnQgPT4gNTApLid9ID0KICAgICAgICAn0JTQsCDRgdC1INC40LfQv9C+0LvQt9Cy0LAsINCw0LrQviDQvdGP0LrQvtC4INC00LXQudGB0YLQstC40Y8g0YHQsCDQvdCw0LzQsNC70LjQu9C4INGA0LDQsdC+0YLQvdC+0YLQviDQstGA0LXQvNC1ICjQvdCw0L/RgNC40LzQtdGALCDQsNC60L4g0YHQtSDQt9Cw0L/Qu9Cw0YnQsCDRgdCw0LzQviDQv9C+0LvQvtCy0LjQvdCw0YLQsCDQvtGCINCy0YDQtdC80LXRgtC+INC30LAg0L/RitGC0YPQstCw0L3QtSDQmtC70Y7RhyA9PiDQv9GK0YLRg9Cy0LDQvdC1OyDQodGK0LTRitGA0LbQsNC90LjQtSA9PiA1MCkuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZSBTZXJ2aWNlIGFzIEFjdGlvbi4gUGxlYXNlIGFkZCBhcyBrZXkgdGhlIHRpbWVhY291bnRpbmcgYWN0aW9uIGFuZCB0aGUgc2VydmljZSBhcyB2YWx1ZS4gUmVnRXggYXJlIGFsbG93ZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2UgbmVlZCB0byBzZXQgYSBkZWZhdWx0IGFjdGlvbiBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2UgbmVlZCB0byBzZXQgYSBkZWZhdWx0IHByb2plY3QgaWQgd2hlbiB3ZSBzeW5jIFRpbWVVbml0cyB0byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIHNhdmUgdGhlIEFydGljbGUgVGltZVVuaXQgdG8gYSBEeW5hbWljRmllbGQgZnJvbSB0eXBlICJBcnRpY2xlIi4gUGxlYXNlIGFkZCBoZXJlIHRoZSBuYW1lIG9mIHRoZSBmaWVsZCBpZiB0aGUgaW5pdGluYWwgbmFtZSBpcyBjaGFuZ2VkLid9ID0KICAgICAgICAnJzsKCgogICAgcHVzaCBAeyAkU2VsZi0+e0phdmFTY3JpcHRTdHJpbmdzfSAvLyBbXSB9LCAoCiAgICAnQ2FuY2VsJywKICAgICdDb25maXJtIGluc2VydCcsCiAgICAnRGVsZXRlIFRpbWUgQWNjb3VudGluZyBFbnRyeScsCiAgICAnTWFzcyBFbnRyeScsCiAgICAnTm8nLAogICAgJ1BsZWFzZSBjaG9vc2UgYSByZWFzb24gZm9yIGFic2VuY2UhJywKICAgICdQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJywKICAgICdTdWJtaXQnLAogICAgJ1llcycsCiAgICApOwoKfQoKMTsK</File>
        <File Location="Kernel/Language/ca_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmNhX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIEVuZCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGwgUHJvamVjdHMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBUaWNrZXRJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBObyBQcm9qZWN0IGZvciBUaWNrZXQgZm91bmQuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIHVwZGF0ZSB1c2VyIHNldHRpbmdzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gYWRkIHRpbWUgcGVyaW9kISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICcnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/cs_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmNzX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIEVuZCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGwgUHJvamVjdHMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBUaWNrZXRJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBObyBQcm9qZWN0IGZvciBUaWNrZXQgZm91bmQuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIHVwZGF0ZSB1c2VyIHNldHRpbmdzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gYWRkIHRpbWUgcGVyaW9kISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICcnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/da_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmRhX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJ09wZ2F2ZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICdCZW3DpnJrbmluZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdGFydCB0aW1lJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VuZCB0aW1lJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBtdXN0IGVudGVyIGEgc3RhcnQgYW5kIGFuIGVuZCB0aW1lLCBvciBhIHBvc2l0aXZlIHBlcmlvZCBvZiB1cCB0byAyNCBob3Vycy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgdGltZSBwZXJpb2QgbXVzdCBiZSBnaXZlbiBpbiBob3VycyBhbmQgY2FuIGJlIGEgZGVjaW1hbCBudW1iZXIuJ30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdEZWxldGUKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RvIHlvdSByZWFsbHkgd2FudCB0byBkZWxldGUgdGhlIFRpbWUgQWNjb3VudGluZyBvZiB0aGlzIGRheT8nfSA9CiAgICAgICAgJ1ZpbCBkdSB2aXJrZWxpZyBzbGV0dGUgdGlkc3JlZ25za2FiZXQgZm9yIGRlbm5lIGRhZz8nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnUmVkaWdlciB0aWRzcmVnaXN0cmVyaW5nJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJ0RhdG9uYXZpZ2F0aW9uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RheXMgd2l0aG91dCBlbnRyaWVzJ30gPSAnRGFnZSB1ZGVuIG9wdGVnbmVsc2VyJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NlbGVjdCBhbGwgZGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXNzIGVudHJ5J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgdGhlIHJlYXNvbiBmb3IgeW91ciBhYnNlbmNlIGZvciB0aGUgc2VsZWN0ZWQgZGF5cyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIHZhY2F0aW9uJ30gPSAnUMOlIGZlcmllJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIHNpY2sgbGVhdmUnfSA9ICdTeWdlZnJhdsOmcic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBvdmVydGltZSBsZWF2ZSd9ID0gJ0Fmc3BhZHNlcmluZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXF1aXJlZCBmaWVsZHMgYXJlIG1hcmtlZCB3aXRoIGEgIioiLid9ID0gJ0RlIHDDpWtyw6Z2ZWRlIGZlbHRlciBlciBtYXJrZXJldCBtZWQgIioiLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgaGF2ZSB0byBmaWxsIGluIHN0YXJ0IGFuZCBlbmQgdGltZSBvciBhIHRpbWUgcGVyaW9kLid9ID0gJ0R1IHNrYWwgaW5kdGFzdGUgZW4gc3RhcnQtIG9nIHNsdXRkYXRvIGVsbGVyIGVuIHRpZHNwZXJpb2RlLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0J30gPSAnUHJvamVrdCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPcmlnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGFkZCBhIHJlbWFyayB3aXRoIG1vcmUgdGhhbiA4IGNoYXJhY3RlcnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Vyc3BydW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05lZ2F0aXZlIHRpbWVzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICdOZWdhdGl2IHRpZCBlciBpa2tlIHRpbGxhZHQuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICdHZW50YWduZSB0aW1lciBlciBpa2tlIHRpbGxhZHQuIFN0YXJ0dGlkZW4gc3ZhcmVyIHRpbCBldCBhbmRldCBpbnRlcnZhbC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJ1NsdXR0aWRlbiBza2FsIHbDpnJlIHNlbmVyZSBlbmQgc3RhcnR0aWRlbi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBFbmQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICdHZW50YWduZSB0aW1lciBlciBpa2tlIHRpbGxhZHQuIFNsdXR0aWRlbiBzdmFyZXIgdGlsIGV0IGFuZGV0IGludGVydmFsLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnVWd5bGRpZyBwZXJpb2RlISBFbiBkYWcgaGFyIGt1biAyNCB0aW1lci4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQSB2YWxpZCBwZXJpb2QgbXVzdCBiZSBncmVhdGVyIHRoYW4gemVyby4nfSA9ICdFbiBneWxkaWcgcGVyaW9kZSBza2FsIHbDpnJlIHN0w7hycmUgZW5kIDAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIE5lZ2F0aXZlIHBlcmlvZHMgYXJlIG5vdCBhbGxvd2VkLid9ID0gJ1VneWxkaWcgcGVyaW9kZSEgTmVnYXRpdmUgcGVyaW9kZXIgZXIgaWtrZSB0aWxsYWR0Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWJtaXQgY2hhbmdlcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgb25lIHJvdyd9ID0gJ1RpbGbDuGogZW4gcsOma2tlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBjYW4gb25seSBzZWxlY3Qgb25lIGNoZWNrYm94IGVsZW1lbnQhJ30gPSAnRHUga2FuIGt1biB2w6ZsZ2UgZXQgYWZrcnlkc25pbmdzZmVsdCEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJ0VyIGR1IHNpa2tlciBww6UsIGF0IGR1IGFyYmVqZGVkZSB1bmRlciBkaXQgc3lnZWZyYXbDpnI/JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gdmFjYXRpb24/J30gPSAnRXIgZHUgc2lra2VyIHDDpSwgYXQgZHUgYXJiZWpkZWRlLCBtZW5zIGR1IHZhciBww6UgZmVyaWU/JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gb3ZlcnRpbWUgbGVhdmU/J30gPQogICAgICAgICdFciBkdSBzaWtrZXIgcMOhLCBhdCBkdSBhcmJlamRlZGUsIG1lbnMgZHUgdmFyIHDDpSBhZnNwYWRzZXJpbmc/JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJ0VyIGR1IHNpa2tlciBww6UsIGF0IGR1IGFyYmVqZGVkZSBtZXJlIGVuZCAxNiB0aW1lcj8nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdPdmVydmlldwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSByZXBvcnRpbmcgbW9udGhseSBvdmVydmlldyd9ID0gJ03DpW5lZGxpZyBvdmVyc2lndCBvdmVyIHRpZHNyYXBvcnRlcmluZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAoSG91cnMpJ30gPSAnT3ZlcnRpZCAodGltZXIpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0aGlzIG1vbnRoKSd9ID0gJ092ZXJ0aWQgKGRlbm5lIG3DpW5lZCknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRvdGFsKSd9ID0gJ092ZXJ0aWQgKGkgYWx0KSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgb3ZlcnRpbWUgbGVhdmUnfSA9ICdSZXN0ZXJlbmRlIGFmc3BhZHNlcmluZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiAoRGF5cyknfSA9ICdGZXJpZSAoZGFnZSknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRoaXMgbW9udGgpJ30gPSAnRmVyaWVkYWdlIGJydWd0IChkZW5uZSBtw6VuZWQpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0b3RhbCknfSA9ICdGZXJpZWRhZ2UgYnJ1Z3QgKGkgYWx0KSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICdSZXN0ZXJlbmRlIGZlcmllZGFnZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIExlYXZlIChEYXlzKSd9ID0gJ1N5Z2VmcmF2w6ZyIChkYWdlKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlIHRha2VuICh0aGlzIG1vbnRoKSd9ID0gJ1N5Z2VmcmF2w6ZyIGJydWd0IChkZW5uZSBtw6VuZWQpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUgdGFrZW4gKHRvdGFsKSd9ID0gJ1N5Z2VmcmF2w6ZyIGJydWd0IChpIGFsdCknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJldmlvdXMgbW9udGgnfSA9ICdGb3JyaWdlIG3DpW5lZCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IG1vbnRoJ30gPSAnTsOmc3RlIG3DpW5lZCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrZGF5J30gPSAnVWdlZGFnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dvcmtpbmcgSG91cnMnfSA9ICdBcmJlamRzdGltZXInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG90YWwgd29ya2VkIGhvdXJzJ30gPSAnQXJiZWpkc3RpbWVyIGkgYWx0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXJcJ3MgcHJvamVjdCBvdmVydmlldyd9ID0gJ0JydWdlcnMgcHJvamVrdG92ZXJibGlrJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChtb250aGx5KSd9ID0gJ1RpbWVyIChtw6VuZWRsaWcpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICdTYW1sZXQgYW50YWwgdGltZXInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICdBbHQgaSBhbHQnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnVGlkc3JhcG9ydGVyaW5nJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICdNw6VuZWRzbmF2aWdhdGlvbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBkYXRlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgcmVwb3J0cyd9ID0gJ0JydWdlcnJhcHBvcnRlcic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNb250aGx5IHRvdGFsJ30gPSAnSSBhbHQgZm9yIG3DpW5lZCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJ1NhbWxldCB0b3RhbCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJ0Fmc3BhZHNlcmluZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJ0ZlcmllJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUnfSA9ICdTeWdlZnJhdsOmcic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiByZW1haW5pbmcnfSA9ICdSZXN0ZXJlbmRlIGZyYXbDpnJzZGFnZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICdQcm9qZWt0cmFwcG9ydGVyJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nUHJvamVjdAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCByZXBvcnQnfSA9ICdQcm9qZWt0cmFwcG9ydCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICdSZWRpZ2VyIGluZHN0aWxsaW5nZXIgZm9yIHRpZHNyZWduc2thYnNwcm9qZWt0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBwcm9qZWN0J30gPSAnVGlsZsO4aiBwcm9qZWt0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzIG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBQcm9qZWN0J30gPSAnVGlsZsO4aiBwcm9qZWt0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgUHJvamVjdCBTZXR0aW5ncyd9ID0gJ1JlZGlnZXIgcHJvamVrdGluZHN0aWxsaW5nZXInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlcmUgaXMgYWxyZWFkeSBhIHByb2plY3Qgd2l0aCB0aGlzIG5hbWUuIFBsZWFzZSwgY2hvb3NlIGEgZGlmZmVyZW50IG9uZS4nfSA9CiAgICAgICAgJ0RlciBlciBhbGxlcmVkZSBldCBwcm9qZWt0IG1lZCBkZXR0ZSBuYXZuLiBWw6ZsZyB2ZW5saWdzdCBldCBhbmRldC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICdSZWRpZ2VyIHRpZHNyZWduc2thYnNpbmRzdGlsaW5nZXInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICdUaWxmw7hqIG9wZ2F2ZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgYSB1c2VyIHRvIHRpbWUgYWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRmlsdGVyIGZvciBwcm9qZWN0cywgdGFza3Mgb3IgdXNlcnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBwZXJpb2RzIGNhbiBub3QgYmUgZGVsZXRlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCBMaXN0J30gPSAnUHJvamVrdGxpc3RlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgTGlzdCd9ID0gJ09wZ2F2ZWxpc3RlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBUYXNrJ30gPSAnVGlsZsO4aiBvcGdhdmUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnUmVkaWdlciBvcGdhdmVpbmRzdGlsbGluZ2VyJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICdEZXIgZXIgYWxsZXJlZGUgZW4gb3BnYXZlIG1lZCBkZXR0ZSBuYXZuLiBWw6ZsZyB2ZW5saWdzdCBldCBhbmRldC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnQnJ1Z2VybGlzdGUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBTZXR0aW5ncyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gc2VlIG92ZXJ0aW1lcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaG93IE92ZXJ0aW1lJ30gPSAnVmlzIG92ZXJ0aWQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIGNyZWF0ZSBwcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyBwcm9qZWN0IGNyZWF0aW9uJ30gPSAnVGlsbGFkIG9wcmV0dGVsc2UgYWYgcHJvamVrdCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gc2tpcCB0aW1lIGFjY291bnRpbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsb3cgdGltZSBhY2NvdW50aW5nIHNraXBwaW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIHRoaXMgb3B0aW9uIGlzIHNlbGVjdGVkLCB0aW1lIGFjY291bnRpbmcgaXMgZWZmZWN0aXZlbHkgb3B0aW9uYWwgZm9yIHRoZSB1c2VyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIHdpbGwgYmUgbm8gd2FybmluZ3MgYWJvdXQgbWlzc2luZyBlbnRyaWVzIGFuZCBubyBlbnRyeSBlbmZvcmNlbWVudC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFNwYW5zJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBCZWdpbid9ID0gJ0JlZ3luZCBwZXJpb2RlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBFbmQnfSA9ICdBZnNsdXQgcGVyaW9kZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnRmVyaWVkYWdlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnVGltZXIgcHIuIHVnZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBdXRob3JpemVkIE92ZXJ0aW1lJ30gPSAnR29ka2VuZHQgb3ZlcnRpZCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdGFydCBEYXRlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBpbnNlcnQgYSB2YWxpZCBkYXRlLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgZW5kIG11c3QgYmUgYWZ0ZXIgcGVyaW9kIGJlZ2luLid9ID0gJ1BlcmlvZGVucyBhZnNsdXRuaW5nIHNrYWwgdsOmcmUgZWZ0ZXIgcGVyaW9kZW5zIHN0YXJ0Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMZWF2ZSBEYXlzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlZWtseSBIb3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyB0aW1lIHBlcmlvZHMgZm91bmQuJ30gPSAnSW5nZW4gdGlkc3BlcmlvZGVyIGZ1bmRldC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRpbWUgcGVyaW9kJ30gPSAnVGlsZsO4aiB0aWRzcGVyaW9kZSc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgVGltZSBSZWNvcmQnfSA9ICdTZSB0aWRzcmVnaXN0cmVyaW5nJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnU2UgJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJ0ZvcnJpZ2UgZGFnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgZGF5J30gPSAnTsOmc3RlIGRhZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICdEZXIgZXIgaWtrZSBmdW5kZXQgZGF0YSBmb3IgZGVubmUgZGFnLic7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ0VkaXQucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3Qgc2F2ZSBzZXR0aW5ncywgYmVjYXVzZSBhIGRheSBoYXMgb25seSAyNCBob3VycyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGRlbGV0ZSBXb3JraW5nIFVuaXRzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIERhdGUgaXMgb3V0IG9mIGxpbWl0LCBidXQgeW91IGhhdmVuXCd0IGluc2VydCB0aGlzIGRheSB5ZXQsIHNvIHlvdSBnZXQgb25lKCEpIGNoYW5jZSB0byBpbnNlcnQnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIFdvcmtpbmcgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWNjZXNzZnVsIGluc2VydCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRXJyb3Igd2hpbGUgaW5zZXJ0aW5nIG11bHRpcGxlIGRhdGVzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWNjZXNzZnVsbHkgaW5zZXJ0ZWQgZW50cmllcyBmb3Igc2V2ZXJhbCBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW50ZXJlZCBkYXRlIHdhcyBpbnZhbGlkISBEYXRlIHdhcyBjaGFuZ2VkIHRvIHRvZGF5Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyB0aW1lIHBlcmlvZCBjb25maWd1cmVkLCBvciB0aGUgc3BlY2lmaWVkIGRhdGUgaXMgb3V0c2lkZSBvZiB0aGUgZGVmaW5lZCB0aW1lIHBlcmlvZHMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNvbnRhY3QgdGhlIHRpbWUgYWNjb3VudGluZyBhZG1pbmlzdHJhdG9yIHRvIHVwZGF0ZSB5b3VyIHRpbWUgcGVyaW9kcyEnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMYXN0IFNlbGVjdGVkIFByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbCBQcm9qZWN0cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBQcm9qZWN0SUQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nJ30gPSAnUmVwb3J0ZXJpbmcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgVGlja2V0SUQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTm8gUHJvamVjdCBmb3IgVGlja2V0IGZvdW5kLid9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byB1cGRhdGUgdXNlciBzZXR0aW5ncyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCB1cGRhdGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZSBVc2VySUQgaXMgbm90IHZhbGlkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IHVzZXIgZGF0YSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIGFkZCB0aW1lIHBlcmlvZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2V0dGluZyd9ID0gJ0luZHN0aWxsaW5nJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICdTbGV0IHRpZHNyZWduc2thYnNpbmR0YXN0bmluZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDb25maXJtIGluc2VydCd9ID0gJ0Jla3LDpmZ0IGluZHPDpnR0ZWxzZSc7CgogICAgIyBTeXNDb25maWcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FjdGl2YXRlIHRoZSBzeW5jaHJvbmlzYXRpb24gb2YgVGlja2V0LVRpbWVVbml0cyBpbnRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWdlbnQgaW50ZXJmYWNlIG5vdGlmaWNhdGlvbiBtb2R1bGUgdG8gc2VlIHRoZSBudW1iZXIgb2YgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMgZm9yIHRoZSB1c2VyLid9ID0KICAgICAgICAnQWdlbnQgaW50ZXJmYWNlLW5vdGlmaWNhdGlvbnNtb2R1bGV0IHNrYWwgc2UgYW50YWxsZXQgYWYgdWFmc2x1dHRlZGUgYXJiZWpkc2RhZ2UgZm9yIGJydWdlcmVuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICdTdGFuZGFyZG5hdm4gZm9yIG55ZSBoYW5kbGluZ2VyLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IG5hbWUgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICdTdGFuZGFyZG5hdm4gZm9yIG55ZSBwcm9qZWt0ZXIuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnU3RhbmRhcmRpbmRzdGlsbGluZyBmb3Igc2x1dGRhdG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICdTdGFuZGFyZGluZHN0aWxsaW5nIGZvciBiZWd5bmRlbHNlc2RhdG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGVzY3JpcHRpb24uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgbGVhdmUgZGF5cy4nfSA9ICdTdGFuZGFyZGluZHN0aWxsaW5nIGZvciBmcmF2w6Zyc2RhZ2UuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3Igb3ZlcnRpbWUuJ30gPSAnU3RhbmRhcmRpbmRzdGlsbGluZyBmb3Igb3ZlcnRpZC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciB0aGUgc3RhbmRhcmQgd2Vla2x5IGhvdXJzLid9ID0gJ1N0YW5kYXJkaW5kc3RpbGxpbmcgZm9yIG5vcm1hbGUgdWdlbnRsaWdlIHRpbWVyLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHN0YXR1cyBmb3IgbmV3IGFjdGlvbnMuJ30gPSAnU3RhbmRhcmRpbmRzdGlsbGluZyBmb3IgbnllIGhhbmRsaW5nZXIuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnU3RhbmRhcmRpbmRzdGlsbGluZyBmb3IgbnllIHByb2pla3Rlci4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICdTdGFuZGFyZGluZHN0aWxsaW5nIGZvciBueWUgYnJ1Z2VyZS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnRGVmaW5lcmVyIGRlIHByb2pla3RlciwgZm9yIGh2aWxrZSBlbiBiZW3DpnJrbmluZyBlciBww6VrcsOmdmV0LiBIdmlzIFJlZ0V4cCBtYXRjaGVyIHDDpSBwcm9qZWt0ZXQsIHNrYWwgZHUgb2dzw6UgaW5kZsO4amUgZW4gYmVtw6Zya25pbmcuIFJlZ0V4cCBicnVnZXIgc214IHBhcmFtZXRlcmV0Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZXRlcm1pbmVzIGlmIHRoZSBzdGF0aXN0aWNzIG1vZHVsZSBtYXkgZ2VuZXJhdGUgdGltZSBhY2NvdW50aW5nIGluZm9ybWF0aW9uLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSBhY2NvdW50aW5nIHNldHRpbmdzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IHRpbWUgcmVjb3JkLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFdmVyeSB0aW1lIGEgYWdlbnQgYWRkIFRpbWVVbml0cyB0byBhIHRpY2tldCwgd2Ugc3luYyB0aGUgaW5mb3JtYXRpb24gdG8gdGhlIHRpbWVhY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGb3IgaG93IG1hbnkgZGF5cyBhZ28geW91IGNhbiBpbnNlcnQgd29ya2luZyB1bml0cy4nfSA9ICdBbmdpdmVyIGZvciBodm9yIG1hbmdlIGRhZ2UsIGR1IGthbiBpbmRzw6Z0dGUgYXJiZWpkc2VuaGVkZXIuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIG9ubHkgdXNlcnMgdGhhdCBoYXMgYWRkZWQgd29ya2luZyB0aW1lIHRvIHRoZSBzZWxlY3RlZCBwcm9qZWN0IGFyZSBzaG93bi4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZHJvcGRvd24gZWxlbWVudHMgaW4gdGhlIGVkaXQgc2NyZWVuIGFyZSBjaGFuZ2VkIHRvIG1vZGVybml6ZWQgYXV0b2NvbXBsZXRpb24gZmllbGRzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBmaWx0ZXIgZm9yIHRoZSBwcmV2aW91cyBwcm9qZWN0cyBjYW4gYmUgdXNlZCBpbnN0ZWFkIHR3byBsaXN0IG9mIHByb2plY3RzIChsYXN0IGFuZCBhbGwgb25lcykuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBUaW1lQWNjb3VudGluZzo6RW5hYmxlQXV0b0NvbXBsZXRpb24gaXMgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgaXMgYWN0aXZlIGJ5IGRlZmF1bHQgaWYgdGhlcmUgYXJlIHRoZSBwcmV2aW91cyBwcm9qZWN0cy4gSXQgY291bGQgYmUgdXNlZCBvbmx5IGlmIEVuYWJsZUF1dG9Db21wbGV0aW9uIGFuZCBUaW1lQWNjb3VudGluZzo6VXNlRmlsdGVyIGFyZSBlbmFibGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSB1c2VyIGlzIGFsbG93ZWQgdG8gZW50ZXIgIm9uIHZhY2F0aW9uIGxlYXZlIiwgIm9uIHNpY2sgbGVhdmUiIGFuZCAib24gb3ZlcnRpbWUgbGVhdmUiIHRvIG11bHRpcGxlIGRhdGVzIGF0IG9uY2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWF4aW11bSBudW1iZXIgb2Ygd29ya2luZyBkYXlzIGFmdGVyIHdoaWNoIHRoZSB3b3JraW5nIHVuaXRzIGhhdmUgdG8gYmUgaW5zZXJ0ZWQuJ30gPQogICAgICAgICdNYWtzaW1hbHQgYW50YWwgYWYgYXJiZWpkc2RhZ2UgZWZ0ZXIgaHZpbGtldCBhcmJlamRzZW5oZWRlcm5lIHNrYWwgaW5kc8OmdHRlcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWF4aW11bSBudW1iZXIgb2Ygd29ya2luZyBkYXlzIHdpdGhvdXQgd29ya2luZyB1bml0cyBlbnRyeSBhZnRlciB3aGljaCBhIHdhcm5pbmcgd2lsbCBiZSBzaG93bi4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCB0aW1lIHJlcG9ydGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIGFjdGlvbiBsaXN0IGFjY29yZGluZyB0byBzZWxlY3RlZCBwcm9qZWN0LiBLZXkgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9uIGZvciBwcm9qZWN0KHMpLCBjb250ZW50IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGFjdGlvbihzKS4nfSA9CiAgICAgICAgJ1JlZ3Vsw6ZyZSB1ZHRyeWsgZm9yIGJlZ3LDpm5zbmluZyBhZiBoYW5kbGluZ3NsaXN0ZSBpZsO4bGdlIGRldCB2YWxndGUgcHJvamVrdC4gTsO4Z2xlbiBpbmRlaG9sZGVyIGV0IHJlZ3Vsw6ZydCB1ZHRyeWsgZm9yIHByb2pla3QoZXIpLCBpbmRob2xkZXQgcnVtbWVyIHJlZ3Vsw6ZyZSB1ZHRyeWsgZm9yIGhhbmRsaW5nKGVyKS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnUmVndWzDpnJlIHVkdHJ5ayBmb3IgYmVncsOmbnNuaW5nIGFmIHByb2pla3RsaXN0ZSBpZsO4bGdlIGJydWdlcmdydXBwZXIuIE7DuGdsZW4gaW5kZWhvbGRlciBldCByZWd1bMOmcnQgdWR0cnlrIGZvciBwcm9qZWt0KGVyKSwgaW5kaG9sZGV0IHJ1bW1lciBrb21tYXNlcGFyZXJldCBsaXN0ZSBvdmVyIGdydXBwZXIuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnQW5naXZlciwgb20gYXJiZWpkc3RpbWVyIGthbiBpbmRzw6Z0dGVzIHVkZW4gc3RhcnQtIG9nIHNsdXR0aWRlci4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3luY2hyb25pc2UgY3VzdG9tZXJzIGFzIGEgbmV3IHByb2plY3QgaWYgdGhleSBleGlzdHMgaW4gdGhlIGN1c3RvbWVyIGRhdGFiYXNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgbW9kdWxlIGZvcmNlcyBpbnNlcnRzIGluIFRpbWVBY2NvdW50aW5nLid9ID0gJ0RldHRlIG1vZHVsIGdlbm5lbXR2aW5nZXIgaW5kc8OmdHRlbHNlciBpIHRpZHNyZWduc2thYi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICdEZXR0ZSBhZHZpc2VyaW5nc21vZHVsIGdpdmVyIGVuIGFkdmFyc2VsLCBodmlzIGRlciBlciBmb3IgbWFuZ2UgdWZ1bGRzdMOmbmRpZ2UgYXJiZWpkc2RhZ2UuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCB0aW1lIHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIEFjY291bnRpbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBSZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIGVkaXQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBvdmVydmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHJlcG9ydGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHNldHRpbmdzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdGlja2V0IHJlcG9ydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZy4nfSA9ICdUaWRzcmVnbnNrYWInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG8gdXNlIGlmIHNvbWUgYWN0aW9ucyByZWR1Y2VkIHRoZSB3b3JraW5nIGhvdXJzIChmb3IgZXhhbXBsZSwgaWYgb25seSBoYWxmIG9mIHRoZSB0cmF2ZWxpbmcgdGltZSBpcyBwYWlkIEtleSA9PiB0cmF2ZWxpbmc7IENvbnRlbnQgPT4gNTApLid9ID0KICAgICAgICAnQnJ1Z2VzLCBodmlzIG5vZ2xlIGhhbmRsaW5nZXIgaGFyIHJlZHVjZXJldCBhcmJlamRzdGltZXJuZSAoZi5la3MuIGh2aXMga3VuIGhhbHZkZWxlbiBhZiByZWpzZXRpZGVuIGVyIGJldGFsdCBLZXkgPT4gdHJhdmVsaW5nOyBDb250ZW50ID0+IDUwKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2UgU2VydmljZSBhcyBBY3Rpb24uIFBsZWFzZSBhZGQgYXMga2V5IHRoZSB0aW1lYWNvdW50aW5nIGFjdGlvbiBhbmQgdGhlIHNlcnZpY2UgYXMgdmFsdWUuIFJlZ0V4IGFyZSBhbGxvd2VkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIG5lZWQgdG8gc2V0IGEgZGVmYXVsdCBhY3Rpb24gaWQgd2hlbiB3ZSBzeW5jIFRpbWVVbml0cyB0byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIG5lZWQgdG8gc2V0IGEgZGVmYXVsdCBwcm9qZWN0IGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBzYXZlIHRoZSBBcnRpY2xlIFRpbWVVbml0IHRvIGEgRHluYW1pY0ZpZWxkIGZyb20gdHlwZSAiQXJ0aWNsZSIuIFBsZWFzZSBhZGQgaGVyZSB0aGUgbmFtZSBvZiB0aGUgZmllbGQgaWYgdGhlIGluaXRpbmFsIG5hbWUgaXMgY2hhbmdlZC4nfSA9CiAgICAgICAgJyc7CgoKICAgIHB1c2ggQHsgJFNlbGYtPntKYXZhU2NyaXB0U3RyaW5nc30gLy8gW10gfSwgKAogICAgJ0NhbmNlbCcsCiAgICAnQ29uZmlybSBpbnNlcnQnLAogICAgJ0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknLAogICAgJ01hc3MgRW50cnknLAogICAgJ05vJywKICAgICdQbGVhc2UgY2hvb3NlIGEgcmVhc29uIGZvciBhYnNlbmNlIScsCiAgICAnUGxlYXNlIGNob29zZSBhdCBsZWFzdCBvbmUgZGF5IScsCiAgICAnU3VibWl0JywKICAgICdZZXMnLAogICAgKTsKCn0KCjE7Cg==</File>
        <File Location="Kernel/Language/de_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmRlX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJ1plaXQgYnVjaGVuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZSBkYXRlIG11c3QgYmUgdmFsaWQgYW5kIG5vdCBsYXRlciB0aGFuIHRvZGF5ISd9ID0gJ0RhcyBEYXR1bSBtdXNzIGfDvGx0aWcgc2VpbiB1bmQgZGFyZiBuaWNodCBpbiBkZXIgVmVyZ2FuZ2VuaGVpdCBsaWVnZW4hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2snfSA9ICdUw6R0aWdrZWl0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFyayd9ID0gJ0FubWVya3VuZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdGFydCB0aW1lJ30gPSAnU3RhcnR6ZWl0cHVua3QnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUnfSA9ICdFbmR6ZWl0cHVua3QnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IG11c3QgZW50ZXIgYSBzdGFydCBhbmQgYW4gZW5kIHRpbWUsIG9yIGEgcG9zaXRpdmUgcGVyaW9kIG9mIHVwIHRvIDI0IGhvdXJzLid9ID0KICAgICAgICAnRXMgbXVzcyBlaW4gU3RhcnQtIHVuZCBFbmR6ZWl0cHVua3QgZWluZ2VnZWJlbiB3ZXJkZW4gb2RlciBlaW4gWmVpdHJhdW0gdm9uIGJpcyB6dSAyNCBTdHVuZGVuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgdGltZSBwZXJpb2QgbXVzdCBiZSBnaXZlbiBpbiBob3VycyBhbmQgY2FuIGJlIGEgZGVjaW1hbCBudW1iZXIuJ30gPQogICAgICAgICdEaWUgWmVpdHBlcmlvZGUgbXVzcyBpbiBTdHVuZGVuIGFuZ2VnZWJlbiB3ZXJkZW4gdW5kIGthbm4gZWluZSBLb21tYXphaGwgc2Vpbi4nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdEZWxldGUKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RvIHlvdSByZWFsbHkgd2FudCB0byBkZWxldGUgdGhlIFRpbWUgQWNjb3VudGluZyBvZiB0aGlzIGRheT8nfSA9CiAgICAgICAgJ03DtmNodGVuIFNpZSBkaWUgZXJmYXNzdGUgWmVpdCBmw7xyIGRlbiBha3R1ZWxsZW4gVGFnIGzDtnNjaGVuPyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ0VkaXQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBSZWNvcmQnfSA9ICdaZWl0ZXJmYXNzdW5nIGJlYXJiZWl0ZW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3MnfSA9ICdHZWhlIHp1IGRlbiBFaW5zdGVsbHVuZ2VuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJ0RhdHVtc25hdmlnYXRpb24nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF5cyB3aXRob3V0IGVudHJpZXMnfSA9ICdUYWdlIG9obmUgRWludHLDpGdlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NlbGVjdCBhbGwgZGF5cyd9ID0gJ0FsbGUgVGFnZSBhdXN3w6RobGVuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgZW50cnknfSA9ICdNYXNzZW5laW50cmFnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgdGhlIHJlYXNvbiBmb3IgeW91ciBhYnNlbmNlIGZvciB0aGUgc2VsZWN0ZWQgZGF5cyd9ID0KICAgICAgICAnQml0dGUgd8OkaGxlbiBTaWUgZGVuIEdydW5kIGbDvHIgSWhyZSBBYndlc2VuaGVpdCBmw7xyIGRpZSBhdXNnZXfDpGhsdGVuIFRhZ2UnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gdmFjYXRpb24nfSA9ICdJbSBVcmxhdWInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gc2ljayBsZWF2ZSd9ID0gJ0tyYW5rZ2VzY2hyaWViZW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gb3ZlcnRpbWUgbGVhdmUnfSA9ICfDnGJlcnN0dW5kZW5hYmJhdSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXF1aXJlZCBmaWVsZHMgYXJlIG1hcmtlZCB3aXRoIGEgIioiLid9ID0gJ1BmbGljaHRmZWxkZXIgc2luZCBtaXQgZWluZW0gU3Rlcm4gIioiIGdla2VubnplaWNobmV0Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgaGF2ZSB0byBmaWxsIGluIHN0YXJ0IGFuZCBlbmQgdGltZSBvciBhIHRpbWUgcGVyaW9kLid9ID0gJ1NpZSBtw7xzc2VuIGVpbmUgU3RhcnQtIHVuZCBFbmR6ZWl0IG9kZXIgZWluZSBaZWl0c3Bhbm5lIGFuZ2ViZW4uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICdQcm9qZWt0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09yaWdpbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgYWRkIGEgcmVtYXJrIHdpdGggbW9yZSB0aGFuIDggY2hhcmFjdGVycyEnfSA9ICdCaXR0ZSBnZWJlbiBTaWUgZWluZSBBbm1lcmt1bmcgdm9uIG1laHIgYWxzIDggWmVpY2hlbiBMw6RuZ2UgZWluISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnTmVnYXRpdmUgWmVpdGFuZ2FiZW4gc2luZCBuaWNodCBlcmxhdWJ0Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIFN0YXJ0IHRpbWUgbWF0Y2hlcyBhbm90aGVyIGludGVydmFsLid9ID0KICAgICAgICAnRGllc2UgU3RhcnR6ZWl0IGbDpGxsdCBpbiBlaW5lbiBiZXJlaXRzIGVpbmdldHJhZ2VuIFplaXRyYXVtLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIGZvcm1hdCEgUGxlYXNlIGVudGVyIGEgdGltZSB3aXRoIHRoZSBmb3JtYXQgSEg6TU0uJ30gPSAnVW5nw7xsdGlnZXMgRm9ybWF0ISBCaXR0ZSBnZWJlbiBTaWUgZWluZSBaZWl0IGltIEZvcm1hdCBISDpNTSBlaW4uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57JzI0OjAwIGlzIG9ubHkgcGVybWl0dGVkIGFzIGVuZCB0aW1lLid9ID0gJ051ciAyNDowMCBpc3QgYWxzIEVuZHplaXQgZXJsYXVidC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICdVbmfDvGx0aWdlIFplaXQhIEVpbiBUYWcgaGF0IG51ciAyNCBTdHVuZGVuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSBtdXN0IGJlIGFmdGVyIHN0YXJ0IHRpbWUuJ30gPSAnRGllIEVuZHplaXQgbXVzcyBuYWNoIGRlciBTdGFydHplaXQgc2Vpbi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBFbmQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICdEaWVzZSBFbmR6ZWl0IHd1cmRlIGJlcmVpdHMgaW4gZWluZW0gYW5kZXJlbiBFaW50cmFnIGFuZ2VnZWJlbi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIEEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzLid9ID0gJ1VuZ8O8bHRpZ2UgQW5nYWJlLiBFaW4gVGFnIGhhdCBudXIgMjQgU3R1bmRlbi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQSB2YWxpZCBwZXJpb2QgbXVzdCBiZSBncmVhdGVyIHRoYW4gemVyby4nfSA9ICdFaW5lIGfDvGx0aWdlIFplaXRzcGFubmUgbXVzcyBncsO2w59lciBhbHMgTnVsbCBzZWluLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgTmVnYXRpdmUgcGVyaW9kcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnVW5nw7xsdGlnZSBBbmdhYmUuIE5lZ2F0aXZlIFplaXRzcGFubmVuIHNpbmQgbmljaHQgbcO2Z2xpY2guJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Ym1pdCBjaGFuZ2VzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBvbmUgcm93J30gPSAnRWluZSBaZWlsZSBoaW56dWbDvGdlbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgY2FuIG9ubHkgc2VsZWN0IG9uZSBjaGVja2JveCBlbGVtZW50ISd9ID0gJ1NpZSBrw7ZubmVuIG51ciBlaW5lIENoZWNrYm94IG1hcmtpZXJlbiEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJ1NpbmQgU2llIHNpY2hlciwgZGFzcyBTaWUgZ2VhcmJlaXRldCBoYWJlbiwgb2J3b2hsIFNpZSBrcmFua2dlc2NocmllYmVuIHNpbmQ/JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gdmFjYXRpb24/J30gPSAnU2luZCBTaWUgc2ljaGVyLCBkYXNzIFNpZSBnZWFyYmVpdGV0IGhhYmVuLCBvYndvaGwgU2llIGltIFVybGF1YiBzaW5kPyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnU2luZCBTaWUgc2ljaGVyLCBkYXNzIFNpZSBnZWFyYmVpdGV0IGhhYmVuLCBvYndvaGwgU2llIGVpbmVuIMOcYmVyc3R1bmRlbmFiYmF1IGVpbmdldHJhZ2VuIGhhdHRlbj8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCBtb3JlIHRoYW4gMTYgaG91cnM/J30gPSAnU2luZCBTaWUgc2ljaGVyLCBkYXNzIFNpZSBtZWhyIGFscyAxNiBTdHVuZGVuIGdlYXJiZWl0ZXQgaGFiZW4/JzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nT3ZlcnZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nIG1vbnRobHkgb3ZlcnZpZXcnfSA9ICdaZWl0ZXJmYXNzdW5nIC0gTW9uYXRzw7xiZXJzaWNodCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAoSG91cnMpJ30gPSAnw5xiZXJzdHVuZGVuIChpbiBTdHVuZGVuKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAodGhpcyBtb250aCknfSA9ICfDnGJlcnN0dW5kZW4gKGRpZXNlciBNb25hdCknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRvdGFsKSd9ID0gJ8OcYmVyc3R1bmRlbiAoU3VtbWUpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFpbmluZyBvdmVydGltZSBsZWF2ZSd9ID0gJ1ZlcmJsZWliZW5kZSDDnGJlcnN0dW5kZW4genVtIEFiYmF1JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJ1VybGF1YiAoaW4gVGFnZW4pJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0aGlzIG1vbnRoKSd9ID0gJ1VybGF1YnN0YWdlIChkaWVzZXIgTW9uYXQpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0b3RhbCknfSA9ICdVcmxhdWJzdGFnZSAoU3VtbWUpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFpbmluZyB2YWNhdGlvbid9ID0gJ1VybGF1YnN0YWdlICh2ZXJibGVpYmVuZCknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICdFcmtyYW5rdCAoaW4gVGFnZW4pJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUgdGFrZW4gKHRoaXMgbW9udGgpJ30gPSAnS3JhbmtnZXNjaHJpZWJlbiAoZGllc2VyIE1vbmF0KSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlIHRha2VuICh0b3RhbCknfSA9ICdFcmtyYW5rdCAoU3VtbWUpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnVm9yaGVyaWdlciBNb25hdCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IG1vbnRoJ30gPSAnTsOkY2hzdGVyIE1vbmF0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlZWtkYXknfSA9ICdXb2NoZW50YWcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV29ya2luZyBIb3Vycyd9ID0gJ0FyYmVpdHNzdHVuZGVuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJ0FyYmVpdHNzdHVuZGVuIChnZXNhbXQpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXJcJ3MgcHJvamVjdCBvdmVydmlldyd9ID0gJ1Byb2pla3TDvGJlcnNpY2h0IGRlcyBCZW51dHplcnMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnU3R1bmRlbiAoaW0gTW9uYXQpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICdTdHVuZGVuIChnZXNhbXQpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dyYW5kIHRvdGFsJ30gPSAnU3VtbWUnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnWmVpdGJlcmljaHRlcnN0YXR0dW5nJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICdEYXR1bXNhdXN3YWhsJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIGRhdGUnfSA9ICdHZWhlIHp1IERhdHVtJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgcmVwb3J0cyd9ID0gJ051dHplcmJlcmljaHRlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRobHkgdG90YWwnfSA9ICdwcm8gTW9uYXQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGlmZXRpbWUgdG90YWwnfSA9ICdTdW1tZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJ8OcYmVyc3R1bmRlbmFiYmF1JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uJ30gPSAnVXJsYXViJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUnfSA9ICdFcmtyYW5rdCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiByZW1haW5pbmcnfSA9ICdWZXJibGVpYmVuZGUgVXJsYXVic3RhZ2UnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCByZXBvcnRzJ30gPSAnUHJvamVrdGJlcmljaHRlJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nUHJvamVjdAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCByZXBvcnQnfSA9ICdQcm9qZWt0w7xiZXJzaWNodCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICdadXIgQmVyaWNodHPDvGJlcnNpY2h0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0N1cnJlbnRseSBvbmx5IGFjdGl2ZSB1c2VycyBpbiB0aGlzIHByb2plY3QgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnRGVyemVpdCB3ZXJkZW4gaW4gZGllc2VtIFByb2pla3QgbnVyIGFrdGl2ZSBCZW51dHplciBhbmdlemVpZ3QuIFVtIGRpZXNlIEVpbnN0ZWxsdW5nIHp1IMOkbmRlcm4sIGJlYXJiZWl0ZW4gU2llIGJpdHRlOic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDdXJyZW50bHkgYWxsIHRpbWUgYWNjb3VudGluZyB1c2VycyBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICdEZXJ6ZWl0IHdlcmRlbiBhbGxlIHplaXRlcmZhc3NlbmRlbiBCZW51dHplciBhbmdlemVpZ3QuIFVtIGRpZXNlIEVpbnN0ZWxsdW5nIHp1IMOkbmRlcm4sIGJlYXJiZWl0ZW4gU2llIGJpdHRlOic7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHJlcG9ydCd9ID0gJ1RpY2tldMO8YmVyc2ljaHQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gdGlja2V0J30gPSAnWnVtIFRpY2tldCB3ZWNoc2Vsbic7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICdaZWl0ZXJmYXNzdW5nLVByb2pla3RlaW5zdGVsbHVuZ2VuIGJlYXJiZWl0ZW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICdQcm9qZWt0IGhpbnp1ZsO8Z2VuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzIG92ZXJ2aWV3J30gPSAnWnVyIEVpbnN0ZWxsdW5nc8O8YmVyc2ljaHQgZ2VoZW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICdQcm9qZWt0IGhpbnp1ZsO8Z2VuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgUHJvamVjdCBTZXR0aW5ncyd9ID0gJ1Byb2pla3RlaW5zdGVsbHVuZ2VuIGJlYXJiZWl0ZW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlcmUgaXMgYWxyZWFkeSBhIHByb2plY3Qgd2l0aCB0aGlzIG5hbWUuIFBsZWFzZSwgY2hvb3NlIGEgZGlmZmVyZW50IG9uZS4nfSA9CiAgICAgICAgJ0VpbiBQcm9qZWt0IG1pdCBnbGVpY2hlbSBOYW1lbiBleGlzdGllcnQgYmVyZWl0cy4gQml0dGUgd8OkaGxlbiBTaWUgZWluZW4gYW5kZXJlbiBOYW1lbi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICdaZWl0ZXJmYXNzdW5nLUVpbnN0ZWxsdW5nZW4gYmVhcmJlaXRlbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGFzayd9ID0gJ1TDpHRpZ2tlaXQgaGluenVmw7xnZW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAnRmlsdGVyIGbDvHIgUHJvamVrdGUsIEF1ZmdhYmVuIG9kZXIgQmVudXR6ZXInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBwZXJpb2RzIGNhbiBub3QgYmUgZGVsZXRlZC4nfSA9ICdaZWl0ZmVuc3RlciBrw7ZubmVuIG5pY2h0IGdlbMO2c2NodCB3ZXJkZW4uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJ1Byb2pla3RsaXN0ZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICdUw6R0aWdrZWl0c2xpc3RlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBUYXNrJ30gPSAnVMOkdGlna2VpdCBoaW56dWbDvGdlbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRhc2sgU2V0dGluZ3MnfSA9ICdUw6R0aWdrZWl0c2VpbnN0ZWxsdW5nZW4gYmVhcmJlaXRlbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgdGFzayB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAnRWluZSBUw6R0aWdrZWl0IG1pdCBnbGVpY2hlbSBOYW1lbiBleGlzdGllcnQgYmVyZWl0cy4gQml0dGUgd8OkaGxlbiBTaWUgZWluZW4gYW5kZXJlbiBOYW1lbi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnQmVudXR6ZXJsaXN0ZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIFNldHRpbmdzJ30gPSAnQmVudXR6ZXJlaW5zdGVsbHVuZ2VuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBzZWUgb3ZlcnRpbWVzJ30gPSAnQmVudXR6ZXIgaXN0IGJlcmVjaHRpZ3Qgw5xiZXJzdHVuZGVuIHp1IHNlaGVuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgT3ZlcnRpbWUnfSA9ICfDnGJlcnN0dW5kZW4gYW56ZWlnZW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIGNyZWF0ZSBwcm9qZWN0cyd9ID0gJ0JlbnV0emVyIGlzdCBiZXJlY2h0aWd0IFByb2pla3RlIHp1IGVyc3RlbGxlbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyBwcm9qZWN0IGNyZWF0aW9uJ30gPSAnUHJvamVrdCBlcnN0ZWxsZW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnQmVudXR6ZXIgZGFyZiBkaWUgWmVpdGVyZmFzc3VuZyDDvGJlcnNwcmluZ2VuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJ8OcYmVyc3ByaW5nZW4gZGVyIFplaXRlcmZhc3N1bmcgZXJsYXViZW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgdGhpcyBvcHRpb24gaXMgc2VsZWN0ZWQsIHRpbWUgYWNjb3VudGluZyBpcyBlZmZlY3RpdmVseSBvcHRpb25hbCBmb3IgdGhlIHVzZXIuJ30gPQogICAgICAgICdJc3QgZGllc2UgT3B0aW9uIGF1c2dld8OkaGx0LCBpc3QgZGllIFplaXRlcmZhc3N1bmcgZsO8ciBkZW4gQmVudXR6ZXIgb3B0aW9uYWwuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIHdpbGwgYmUgbm8gd2FybmluZ3MgYWJvdXQgbWlzc2luZyBlbnRyaWVzIGFuZCBubyBlbnRyeSBlbmZvcmNlbWVudC4nfSA9CiAgICAgICAgJ0VzIGdpYnQga2VpbmUgV2FybnVuZyBiZWkgZmVobGVuZGVuIEVpbnRyw6RnZW4gdW5kIGtlaW5lbiBad2FuZyB6dW0gRWludHJhZ2VuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFNwYW5zJ30gPSAnWmVpdHNwYW5uZW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEJlZ2luJ30gPSAnRGF0dW0gQmVnaW5uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBFbmQnfSA9ICdEYXR1bSBFbmRlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RheXMgb2YgVmFjYXRpb24nfSA9ICdVcmxhdWJzdGFnZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyBwZXIgV2Vlayd9ID0gJ1dvY2hlbnN0dW5kZW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXV0aG9yaXplZCBPdmVydGltZSd9ID0gJ0F1dG9yaXNpZXJ0ZSDDnGJlcnN0dW5kZW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJ1N0YXJ0ZGF0dW0nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGluc2VydCBhIHZhbGlkIGRhdGUuJ30gPSAnQml0dGUgZ2ViZW4gU2llIGVpbiBnw7xsdGlnZXMgRGF0dW0gZWluLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgRGF0ZSd9ID0gJ0VuZGRhdHVtJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBlbmQgbXVzdCBiZSBhZnRlciBwZXJpb2QgYmVnaW4uJ30gPSAnRGFzIEVuZGUgZGVyIFplaXRzcGFubmUgbXVzcyBuYWNoIGRlbSBBbmZhbmcgc2Vpbi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJ1VybGF1YnN0YWdlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlZWtseSBIb3Vycyd9ID0gJ1fDtmNoZW50bGljaGUgU3R1bmRlbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSd9ID0gJ8OcYmVyc3R1bmRlbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyB0aW1lIHBlcmlvZHMgZm91bmQuJ30gPSAnS2VpbmUgWmVpdHNwYW5uZSBnZWZ1bmRlbi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRpbWUgcGVyaW9kJ30gPSAnWmVpdHNwYW5uZSBoaW56dWbDvGdlbic7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgVGltZSBSZWNvcmQnfSA9ICdEYXRlbnNhdHogYW56ZWlnZW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldyBvZiAnfSA9ICdBbnNpY2h0IHZvbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcmV2aW91cyBkYXknfSA9ICdWb3JoZXJpZ2VyIFRhZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJ07DpGNoc3RlciBUYWcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gZGF0YSBmb3VuZCBmb3IgdGhpcyBkYXkuJ30gPSAnS2VpbiBFaW50cmFnIGbDvHIgZGllc2VuIFRhZyBnZWZ1bmRlbi4nOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnS2FubiBBcmJlaXRzZWluaGVpdGVuIG5pY2h0IGVpbmbDvGdlbiEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBQcm9qZWN0cyd9ID0gJ0xldHp0ZSBQcm9qZWt0ZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3Qgc2F2ZSBzZXR0aW5ncywgYmVjYXVzZSBhIGRheSBoYXMgb25seSAyNCBob3VycyEnfSA9ICdTcGVpY2hlcm4gbmljaHQgbcO2Z2xpY2guIEVpbiBUYWcgaGF0IG51ciAyNCBTdHVuZGVuISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgZGVsZXRlIFdvcmtpbmcgVW5pdHMhJ30gPSAnS2FubiBBcmJlaXRzZWluaGVpdGVuIG5pY2h0IGzDtnNjaGVuISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIERhdGUgaXMgb3V0IG9mIGxpbWl0LCBidXQgeW91IGhhdmVuXCd0IGluc2VydCB0aGlzIGRheSB5ZXQsIHNvIHlvdSBnZXQgb25lKCEpIGNoYW5jZSB0byBpbnNlcnQnfSA9CiAgICAgICAgJ0RpZXNlcyBEYXR1bSBsaWVndCBhdcOfZXJoYWxiIGRlciBHcmVuendlcnRlLCBTaWUgaGFiZW4gZGllc2VuIFRhZyBhYmVyIGJpcyBqZXR6dCBub2NoIG5pY2h0IGVpbmdlZsO8Z3QsIGRlc2hhbGIgYmVrb21tZW4gU2llIGRhZsO8ciBlaW5lKCEpIENoYW5jZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIFdvcmtpbmcgRGF5cyd9ID0gJ1Vudm9sbHN0w6RuZGlnZSBBcmJlaXRzdGFnZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWNjZXNzZnVsIGluc2VydCEnfSA9ICdFaW5nYWJlbiBnZXNwZWljaGVydCEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRXJyb3Igd2hpbGUgaW5zZXJ0aW5nIG11bHRpcGxlIGRhdGVzISd9ID0gJ0ZlaGxlciBiZWkgZGVyIEVpbmdhYmUgZsO8ciBtZWhyZXJlIFRhZ2UhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Y2Nlc3NmdWxseSBpbnNlcnRlZCBlbnRyaWVzIGZvciBzZXZlcmFsIGRhdGVzISd9ID0gJ0RhdGVuIGbDvHIgbWVocmVyZSBUYWdlIGVyZm9sZ3JlaWNoIGVyZmFzc3QhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICdFaW5nZWdlYmVuZXMgRGF0dW0gdW5nw7xsdGlnISBEYXR1bSB3dXJkZSBhdWYgXCdoZXV0ZVwnIGdlw6RuZGVydC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnRXMgaXN0IGtlaW5lIFplaXRwZXJpb2RlIGtvbmZpZ3VyaWVydCwgb2RlciBkYXMgYW5nZWdlYmVuZSBEYXR1bSBsaWVndCBhdcOfZXJoYWxiIGRlciBrb25maWd1cmllcnRlbiBaZWl0cGVyaW9kZW4uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICdCaXR0ZSBrb250YWt0aWVyZW4gU2llIElocmVuIFplaXRlcmZhc3N1bmdzLUFkbWluaXN0cmF0b3IsIHVtIGRpZSBaZWl0cGVyaW9kZW4genUgYWt0dWFsaXNpZXJlbiEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJ1p1bGV0enQgYXVzZ2V3w6RobHRlIFByb2pla3RlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbCBQcm9qZWN0cyd9ID0gJ0FsbGUgUHJvamVrdGUnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnQmVyaWNodHNwcm9qZWt0OiBCZW7DtnRpZ2UgUHJvamVjdElEJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnQmVyaWNodHNwcm9qZWt0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJ0JlcmljaHRlJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBOZWVkIFRpY2tldElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5vIFByb2plY3QgZm9yIFRpY2tldCBmb3VuZC4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdTZXR0aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gdXBkYXRlIHVzZXIgc2V0dGluZ3MhJ30gPSAnQmVudXR6ZXJlaW5zdGVsbHVuZ2VuIGvDtm5uZW4gbmljaHQgYWt0dWFsaXNpZXJ0IHdlcmRlbiEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCBhZGRlZCEnfSA9ICdQcm9qZWt0IGhpbnp1Z2Vmw7xndCEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCB1cGRhdGVkISd9ID0gJ1Byb2pla3QgYWt0dWFsaXNpZXJ0ISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIGFkZGVkISd9ID0gJ0F1ZmdhYmUgaGluenVnZWbDvGd0ISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIHVwZGF0ZWQhJ30gPSAnQXVmZ2FiZSBha3R1YWxpc2llcnQhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZSBVc2VySUQgaXMgbm90IHZhbGlkISd9ID0gJ0RpZSBVc2VySUQgaXN0IHVuZ8O8bHRpZyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGluc2VydCB1c2VyIGRhdGEhJ30gPSAnS2FubiBCZW51dHplcmRhdGVuIG5pY2h0IGVpbmbDvGdlbiEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIGFkZCB0aW1lIHBlcmlvZCEnfSA9ICdLYW5uIFplaXRwZXJpb2RlIG5pY2h0IGhpbnp1ZsO8Z2VuISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnRWluc3RlbGx1bmcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciB1cGRhdGVkISd9ID0gJ0JlbnV0emVyIGFrdHVhbGlzaWVydCEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICdCZW51dHplciBoaW56dWdlZsO8Z3QhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05ldyBVc2VyJ30gPSAnTmV1ZXIgQmVudXR6ZXInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJ1N0YXR1cyBkZXMgWmVpdHJhdW1zJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nVmlldy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldzogTmVlZCAlcyEnfSA9ICdBbnNpY2h0OiBCZW7DtnRpZ2UgJXMhJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICdCaXR0ZSBkaWUgQXJiZWl0c3N0dW5kZW4gZWludHJhZ2VuISc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL091dHB1dC9IVE1ML1Rvb2xCYXIvSW5jb21wbGV0ZVdvcmtpbmdEYXlzLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyd9ID0gJ1Vudm9sbHN0w6RuZGlnZSBBcmJlaXRzdGFnZSc7CgogICAgIyBKUyBGaWxlOiBUaW1lQWNjb3VudGluZy5BZ2VudC5FZGl0VGltZVJlY29yZHMKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnfSA9ICdCaXR0ZSB3w6RobGVuIFNpZSBtaW5kZXN0ZW5zIGVpbmVuIFRhZyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBFbnRyeSd9ID0gJ01hc3NlbmVpbnRyYWcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICdCaXR0ZSB3w6RobGVuIFNpZSBlaW5lbiBHcnVuZCBmw7xyIGRpZSBBYndlc2VuaGVpdCBhdXMhJzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5J30gPSAnRWludHJhZyBsw7ZzY2hlbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDb25maXJtIGluc2VydCd9ID0gJ0VpbmdhYmUgYmVzdMOkdGlnZW4nOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJ01vZHVsIHp1bSBBbnplaWdlbiBkZXIgQW56YWhsIGRlciB1bnZvbGxzdMOkbmRpZ2VuIEFyYmVpdHN0YWdlIGRlcyBCZW51dHplcnMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Fsc28gc3luY2hyb25pc2UgY3VzdG9tZXJzIGFzIGEgbmV3IHByb2plY3QgaWYgdGhleSBoYXZlIG5vdCB5ZXQgYmVlbiBjcmVhdGVkIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcyBzb29uIGFzIHRoZSBzeW5jaHJvbmlzYXRpb24gb2YgdGlja2V0IFRpbWVVbml0cyBpcyBhY3RpdmF0ZWQsIGl0IGlzIHBvc3NpYmxlIHRvIHNldCB0aGUgZW50cmllcyBSZWFkT25seS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDcmVhdGUgYSBuZXcgdGltZSBhY2NvdW50aW5nIGVudHJ5IHJlbGF0ZWQgdG8gdGhlIHRpY2tldCd9ID0gJ1plaXRlaW5oZWl0ZW4gYXVmIGRpZXNlcyBUaWNrZXQgYnVjaGVuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgbmFtZSBmb3IgbmV3IGFjdGlvbnMuJ30gPSAnU3RhbmRhcmRuYW1lIGbDvHIgbmV1ZSBUw6R0aWdrZWl0ZW4uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgbmFtZSBmb3IgbmV3IHByb2plY3RzLid9ID0gJ0FuZmFuZ3NzdGF0dXMgZWluZXMgbmV1ZW4gUHJvamVrdHMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnU3RhbmRhcmRlaW5zdGVsbHVuZyBmw7xyIEVuZGRhdHVtLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRhdGUgc3RhcnQuJ30gPSAnU3RhbmRhcmRlaW5zdGVsbHVuZyBmw7xyIFN0YXJ0ZGF0dW0uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGVzY3JpcHRpb24uJ30gPSAnU3RhbmRhcmRlaW5zdGVsbHVuZyBmw7xyIEJlc2NocmVpYnVuZ2VuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGxlYXZlIGRheXMuJ30gPSAnU3RhbmRhcmRlaW5zdGVsbHVuZyBmw7xyIFVybGF1YnN0YWdlLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJ0V2ZW50dWVsbCB2b3JoYW5kZW5lciDDnGJlcnN0dW5kZW7DvGJlcnRyYWcuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgdGhlIHN0YW5kYXJkIHdlZWtseSBob3Vycy4nfSA9ICdTdGFuZGFyZCBXb2NoZW5hcmJlaXRzemVpdC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBhY3Rpb25zLid9ID0gJ0FuZmFuZ3NzdGF0dXMgZWluZXIgbmV1ZW4gVMOkdGlna2VpdC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICdBbmZhbmdzc3RhdHVzIGVpbmVzIG5ldWVuIFByb2pla3RzLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHN0YXR1cyBmb3IgbmV3IHVzZXJzLid9ID0gJ0FuZmFuZ3NzdGF0dXMgZWluZXMgbmV1ZW4gQmVudXR6ZXJzLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZpbmVzIHRoZSBwcm9qZWN0cyBmb3Igd2hpY2ggYSByZW1hcmsgaXMgcmVxdWlyZWQuIElmIHRoZSBSZWdFeHAgbWF0Y2hlcyBvbiB0aGUgcHJvamVjdCwgeW91IGhhdmUgdG8gaW5zZXJ0IGEgcmVtYXJrIHRvby4gVGhlIFJlZ0V4cCB1c2UgdGhlIHNteCBwYXJhbWV0ZXIuJ30gPQogICAgICAgICdJbm5lcmhhbGIgZGllc2VyIEtvbmZpZ3VyYXRpb25zb3B0aW9uIGthbm4gZWluZSBSZWdFeHAgZGVmaW5pZXJ0IHdlcmRlbiwgZGllIGZlc3RsZWd0LCBiZWkgd2VsY2hlbiBQcm9qZWt0ZW4gZWluZSBCZW1lcmt1bmcgZWluZ2V0cmFnZW4gd2VyZGVuIG11c3MgKGRpZSBSZWdFeHAgYXJiZWl0ZXQgbWl0IHNteC1QYXJhbWV0ZXJuKS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGV0ZXJtaW5lcyBpZiB0aGUgc3RhdGlzdGljcyBtb2R1bGUgbWF5IGdlbmVyYXRlIHRpbWUgYWNjb3VudGluZyBpbmZvcm1hdGlvbi4nfSA9CiAgICAgICAgJ0Jlc3RpbW10LCBvYiBkYXMgU3RhdGlzdGlrLU1vZHVsIEluZm9ybWF0aW9uZW4genVyIFplaXRlcmZhc3N1bmcgZ2VuZXJpZXJlbiBrYW5uLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IHRpbWUgYWNjb3VudGluZyBzZXR0aW5ncy4nfSA9ICdaZWl0ZXJmYXNzdW5ncy1FaW5zdGVsbHVuZ2VuIGJlYXJiZWl0ZW4uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnWmVpdC1EYXRlbnNhdHogYmVhcmJlaXRlbi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRXZlcnkgdGltZSBhIGFnZW50IGFkZCBUaW1lVW5pdHMgdG8gYSB0aWNrZXQsIHdlIHN5bmMgdGhlIGluZm9ybWF0aW9uIHRvIHRoZSB0aW1lYWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRm9yIGhvdyBtYW55IGRheXMgYWdvIHlvdSBjYW4gaW5zZXJ0IHdvcmtpbmcgdW5pdHMuJ30gPSAnTGVndCBmZXN0LCBiaXMgd2FubiBtYW4gaW4gw6RsdGVyZSBaZWl0ZWludHLDpGdlIGJlYXJiZWl0ZW4ga2FubiAoei4gQi4gMTAgVGFnZSB6dXLDvGNrbGllZ2VuZCkuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIG9ubHkgdXNlcnMgdGhhdCBoYXMgYWRkZWQgd29ya2luZyB0aW1lIHRvIHRoZSBzZWxlY3RlZCBwcm9qZWN0IGFyZSBzaG93bi4nfSA9CiAgICAgICAgJ1dlbm4gYWt0aXZpZXJ0LCB3ZXJkZW4gbnVyIFVzZXIgYW5nZXplaWd0IGRpZSBBcmJlaXRzemVpdGVuIHp1IGRlbSBnZXfDpGhsdGVuIFByb2pla3QgaGluenVnZWbDvGd0IGhhYmVuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZHJvcGRvd24gZWxlbWVudHMgaW4gdGhlIGVkaXQgc2NyZWVuIGFyZSBjaGFuZ2VkIHRvIG1vZGVybml6ZWQgYXV0b2NvbXBsZXRpb24gZmllbGRzLid9ID0KICAgICAgICAnV2VubiBha3RpdmllcnQgd2VyZGVuIGRpZSBEcm9wZG93bi1GZWxkZXIgaW0gZGVyIEVkaXRpZXItT2JlcmZsw6RjaGUgaW4gZGVyIG5ldWVuIEZvcm0gYWxzIEZlbGQgbWl0IEF1dG8tVmVydm9sbHN0w6RuZGlnZW4gYW5nZXplaWd0Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICdEZXIgRmlsdGVyIGJlaSB2b3JoZXJpZ2VuIFByb2pla3RlbiBrYW5uIGJlaSBBa3RpdmllcnVuZyBnZW51dHp0IHdlcmRlbiwgYW5zdGVsbGUgZGFzIHp3ZWkgUHJvamVrdCBMaXN0ZW4gKGxldHp0ZSB1bmQgYWxsZSkgZ2VudXR6dCB3ZXJkZW4uIEVzIGthbm4gYWxsZXJkaW5ncyBudXIgZ2VudXR6dCB3ZXJkZW4gd2VubiBUaW1lQWNjb3VudGluZzo6RW5hYmxlQXV0b0NvbXBsZXRpb24gYWt0aXZpZXJ0IGlzdC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJ0JlaSBBa3RpdmllcnVuZyBpc3QgZGVyIEZpbHRlciBmw7xyIHZvcmhlcmlnZSBQcm9qZWt0ZSBzdGFuZGFyZG3DpMOfaWcgYWt0aXYgZmFsbHMgdm9yaGVyaWdlIFByb2pla3RlIHZvcmhhbmRlbiBzaW5kLiBFciBrYW5uIG51ciBnZW51dHp0IHdlcmRlbiwgd2VubiBFbmFibGVBdXRvQ29tcGxldGlvbiB1bmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBha3RpdmllcnQgc2luZC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIHVzZXIgaXMgYWxsb3dlZCB0byBlbnRlciAib24gdmFjYXRpb24gbGVhdmUiLCAib24gc2ljayBsZWF2ZSIgYW5kICJvbiBvdmVydGltZSBsZWF2ZSIgdG8gbXVsdGlwbGUgZGF0ZXMgYXQgb25jZS4nfSA9CiAgICAgICAgJ1dlbm4gYWt0aXZpZXJ0LCBrw7ZubmVuIEJlbnV0emVyICJpbSBVcmxhdWIiLCAia3JhbmtnZXNjaHJpZWJlbiIgdW5kICLDnGJlcnN0dW5kZW5hYmJhdSIgYW4gbWVocmVyZW4gVGFnZW4gYXVmIGVpbm1hbCBzZXR6ZW4uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnTWF4aW1hbGUgQW56YWhsIHZvbiBBcmJlaXRzdGFnZW4sIG5hY2ggZGVyIGRpZSBBcmJlaXRzemVpdCBlaW5nZXRyYWdlbiB3ZXJkZW4gbXVzcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWF4aW11bSBudW1iZXIgb2Ygd29ya2luZyBkYXlzIHdpdGhvdXQgd29ya2luZyB1bml0cyBlbnRyeSBhZnRlciB3aGljaCBhIHdhcm5pbmcgd2lsbCBiZSBzaG93bi4nfSA9CiAgICAgICAgJ01heGltYWxlIEFuemFobCB2b24gQXJiZWl0c3RhZ2VuIG9obmUgQXJiZWl0c3plaXRlaW50csOkZ2UgbmFjaCBkZW5lbiBlaW5lIFdhcm51bmcgYW5nZXplaWd0IHdpcmQuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ2aWV3Lid9ID0gJ8OcYmVyc2ljaHQuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnUHJvamVrdC1aZWl0LVJlcG9ydGluZy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIGFjdGlvbiBsaXN0IGFjY29yZGluZyB0byBzZWxlY3RlZCBwcm9qZWN0LiBLZXkgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9uIGZvciBwcm9qZWN0KHMpLCBjb250ZW50IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGFjdGlvbihzKS4nfSA9CiAgICAgICAgJ1JlZ3Vsw6RyZXIgQXVzZHJ1Y2ssIHVtIGRpZSBMaXN0ZSBkZXIgVMOkdGlna2VpdGVuIGJlesO8Z2xpY2ggZGVzIGF1c2dld8OkaGx0ZW4gUHJvamVrdHMgZWluenVzY2hyw6Rua2VuLiBEZXIgU2NobMO8c3NlbCBlbnRow6RsdCBlaW5lbiBSZWd1bMOkcmVuIEF1c2RydWNrIGbDvHIgUHJvamVrdGUsIGRlciBXZXJ0IGVpbmVuIFJlZ3Vsw6RyZW4gQXVzZHJ1Y2sgZsO8ciBkaWUgVMOkdGlna2VpdGVuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZWd1bGFyIGV4cHJlc3Npb25zIGZvciBjb25zdHJhaW5pbmcgcHJvamVjdCBsaXN0IGFjY29yZGluZyB0byB1c2VyIGdyb3Vwcy4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiBncm91cHMuJ30gPQogICAgICAgICdSZWd1bMOkcmVyIEF1c2RydWNrLCB1bSBkaWUgTGlzdGUgZGVyIFByb2pla3RlIGJlesO8Z2xpY2ggZGVzIGFrdGl2ZW4gQmVudXR6ZXJzIGVpbnp1c2NocsOkbmtlbi4gRGVyIFNjaGzDvHNzZWwgZW50aMOkbHQgZWluZW4gUmVndWzDpHJlbiBBdXNkcnVjayBmw7xyIFByb2pla3RlLCBkZXIgV2VydCBlbnRow6RsdCBlaW5lIGtvbW1hLXNlcGFyaWVydGUgTGlzdGUgdm9uIEJlbnV0emVyZ3J1cHBlbi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBhY2NvdW50ZWQgdGltZXMgZm9yIHRoaXMgdGlja2V0J30gPSAnQXVmIGRpZXNlcyBUaWNrZXQgZ2VidWNodGUgWmVpdGFuZ2FiZW4gYW56ZWlnZW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3BlY2lmaWVzIGlmIHdvcmtpbmcgaG91cnMgY2FuIGJlIGluc2VydGVkIHdpdGhvdXQgc3RhcnQgYW5kIGVuZCB0aW1lcy4nfSA9CiAgICAgICAgJ0dpYnQgYW4sIG9iIEFyYmVpdHNzdHVuZGVuIG9obmUgU3RhcnQtIHVuZCBFbmR6ZWl0IGVpbmdlZ2ViZW4gd2VyZGVuIGvDtm5uZW4uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICdEaWVzZXMgTW9kdWwgendpbmd0IHp1ciBFaW5nYWJlIHZvbiBTdHVuZGVuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG5vdGlmaWNhdGlvbiBtb2R1bGUgZ2l2ZXMgYSB3YXJuaW5nIGlmIHRoZXJlIGFyZSB0b28gbWFueSBpbmNvbXBsZXRlIHdvcmtpbmcgZGF5cy4nfSA9CiAgICAgICAgJ01vZHVsLCBkYXNzIGRlbiBBZ2VudCBpbSBOb3RpZmljYXRpb24tQmVyZWljaCBkZXMgQWdlbnQtSW50ZXJmYWNlcyBkYXLDvGJlciBpbmZvcm1pZXJ0LCB3ZW5uIHNjaG9uIHp1IGxhbmdlIGtlaW5lIFN0dW5kZW4gbWVociBlaW5nZXRyYWdlbiB3dXJkZW4uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCB0aW1lIHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIEFjY291bnRpbmcnfSA9ICdaZWl0ZXJmYXNzdW5nJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgUmVwb3J0J30gPSAnWmVpdMO8YmVyc2ljaHQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIGVkaXQuJ30gPSAnWmVpdGVyZmFzc3VuZyBCZWFyYmVpdHVuZy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJ1plaXRlcmZhc3N1bmdzw7xiZXJzaWNodC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHJlcG9ydGluZy4nfSA9ICdaZWl0ZXJmYXNzdW5nIEJlcmljaHRlcnN0YXR0dW5nLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnWmVpdGVyZmFzc3VuZyBFaW5zdGVsbHVuZ2VuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdGlja2V0IHJlcG9ydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHZpZXcuJ30gPSAnWmVpdGVyZmFzc3VuZyBBbnNpY2h0Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcuJ30gPSAnWmVpdGVyZmFzc3VuZy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG8gdXNlIGlmIHNvbWUgYWN0aW9ucyByZWR1Y2VkIHRoZSB3b3JraW5nIGhvdXJzIChmb3IgZXhhbXBsZSwgaWYgb25seSBoYWxmIG9mIHRoZSB0cmF2ZWxpbmcgdGltZSBpcyBwYWlkIEtleSA9PiB0cmF2ZWxpbmc7IENvbnRlbnQgPT4gNTApLid9ID0KICAgICAgICAnSGllciBrYW5uIG1hbiBlaW5nZWJlbiwgb2IgZsO8ciBlaW5lIGJlc3RpbW10ZSBUw6R0aWdrZWl0LCBkaWUgenUgdmVycmVjaG5lbmRlbiBTdHVuZGVuIGdla8O8cnp0IHdlcmRlbi4gWi4gQiB3ZW5uIFJlaXNlemVpdGVuIG51ciB6dXIgSMOkbGZ0ZSB2ZXJnw7x0ZXQgd2VyZGVuIChLZXkgPSZndDsgam91cm5leTsgQ29udGVudCA9Jmd0OyA1MCkuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZSBTZXJ2aWNlIGFzIEFjdGlvbi4gUGxlYXNlIGFkZCBhcyBrZXkgdGhlIHRpbWVhY291bnRpbmcgYWN0aW9uIGFuZCB0aGUgc2VydmljZSBhcyB2YWx1ZS4gUmVnRXggYXJlIGFsbG93ZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2UgbmVlZCB0byBzZXQgYSBkZWZhdWx0IGFjdGlvbiBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2UgbmVlZCB0byBzZXQgYSBkZWZhdWx0IHByb2plY3QgaWQgd2hlbiB3ZSBzeW5jIFRpbWVVbml0cyB0byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIHNhdmUgdGhlIEFydGljbGUgVGltZVVuaXQgdG8gYSBEeW5hbWljRmllbGQgZnJvbSB0eXBlICJBcnRpY2xlIi4gUGxlYXNlIGFkZCBoZXJlIHRoZSBuYW1lIG9mIHRoZSBmaWVsZCBpZiB0aGUgaW5pdGluYWwgbmFtZSBpcyBjaGFuZ2VkLid9ID0KICAgICAgICAnJzsKCgogICAgcHVzaCBAeyAkU2VsZi0+e0phdmFTY3JpcHRTdHJpbmdzfSAvLyBbXSB9LCAoCiAgICAnQ2FuY2VsJywKICAgICdDb25maXJtIGluc2VydCcsCiAgICAnRGVsZXRlIFRpbWUgQWNjb3VudGluZyBFbnRyeScsCiAgICAnTWFzcyBFbnRyeScsCiAgICAnTm8nLAogICAgJ1BsZWFzZSBjaG9vc2UgYSByZWFzb24gZm9yIGFic2VuY2UhJywKICAgICdQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJywKICAgICdTdWJtaXQnLAogICAgJ1llcycsCiAgICApOwoKfQoKMTsK</File>
        <File Location="Kernel/Language/el_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmVsX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIEVuZCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGwgUHJvamVjdHMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBUaWNrZXRJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBObyBQcm9qZWN0IGZvciBUaWNrZXQgZm91bmQuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIHVwZGF0ZSB1c2VyIHNldHRpbmdzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gYWRkIHRpbWUgcGVyaW9kISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICcnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/en_CA_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmVuX0NBX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIEVuZCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGwgUHJvamVjdHMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBUaWNrZXRJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBObyBQcm9qZWN0IGZvciBUaWNrZXQgZm91bmQuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIHVwZGF0ZSB1c2VyIHNldHRpbmdzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gYWRkIHRpbWUgcGVyaW9kISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICcnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/en_GB_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmVuX0dCX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIEVuZCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGwgUHJvamVjdHMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBUaWNrZXRJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBObyBQcm9qZWN0IGZvciBUaWNrZXQgZm91bmQuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIHVwZGF0ZSB1c2VyIHNldHRpbmdzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gYWRkIHRpbWUgcGVyaW9kISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICcnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/es_CO_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmVzX0NPX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIEVuZCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGwgUHJvamVjdHMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBUaWNrZXRJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBObyBQcm9qZWN0IGZvciBUaWNrZXQgZm91bmQuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIHVwZGF0ZSB1c2VyIHNldHRpbmdzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gYWRkIHRpbWUgcGVyaW9kISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICcnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/es_MX_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmVzX01YX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJ1RhcmVhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFyayd9ID0gJ0NvbWVudGFyaW8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICfCv1JlYWxtZW50ZSBkZXNlYSBlbGltaW5hciBsYSBDb250YWJpbGlkYWQgZGUgVGllbXBvIGRlIGVzdGUgZMOtYT8nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnTW9kaWZpY2FyIFJlZ2lzdHJvIGRlIEhvcmFzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnSXIgYSBjb25maWd1cmFjaW9uZXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF0ZSBOYXZpZ2F0aW9uJ30gPSAnTmF2ZWdhY2nDs24gcG9yIEZlY2hhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RheXMgd2l0aG91dCBlbnRyaWVzJ30gPSAnRMOtYXMgc2luIHJlZ2lzdHJvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NlbGVjdCBhbGwgZGF5cyd9ID0gJ1NlbGVjY2lvbmFyIHRvZG9zIGxvcyBkw61hcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXNzIGVudHJ5J30gPSAnUmVnaXN0cm8gbWFzaXZvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgdGhlIHJlYXNvbiBmb3IgeW91ciBhYnNlbmNlIGZvciB0aGUgc2VsZWN0ZWQgZGF5cyd9ID0KICAgICAgICAnUG9yIGZhdm9yIGVzY29qYSB1bmEgcmF6w7NuIHBhcmEgc3UgYXVzZW5jaWEgcGFyYSBsb3MgZMOtYXMgc2VsZWNjaW9uYWRvcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJ0RlIHZhY2FjaW9uZXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gc2ljayBsZWF2ZSd9ID0gJ0F1c2VudGUgcG9yIGVuZmVybWVkYWQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gb3ZlcnRpbWUgbGVhdmUnfSA9ICdBdXNlbnRlIHBvciBoYWJlciB0cmFiYWphZG8gaG9yYXMgZXh0cmFzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnTG9zIGNhbXBvcyByZXF1ZXJpZG9zIGVzdMOhbiBtYXJjYWRvcyBjb24gdW4gIioiLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgaGF2ZSB0byBmaWxsIGluIHN0YXJ0IGFuZCBlbmQgdGltZSBvciBhIHRpbWUgcGVyaW9kLid9ID0gJ0VzIG5lY2VzYXJpbyBxdWUgcHJvcG9yY2lvbmUgdW5hIGhvcmEgZGUgaW5pY2lvIHkgdW5hIGRlIGZpbmFsaXphY2nDs24gbyB1biBwZXJpb2RvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0J30gPSAnUHJveWVjdG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJ8KhUG9yIGZhdm9yIGFncmVndWUgdW5hIG9ic2VydmFjacOzbiBkZSBtXCdzIGRlIDggY2FyYWN0ZXJlcyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXJzcHJ1bmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmVnYXRpdmUgdGltZXMgYXJlIG5vdCBhbGxvd2VkLid9ID0gJ05vIHNlIHBlcm1pdGUgbGEgaW5zZXJjacOzbiBkZSBob3JhcyBuZWdhdGl2YXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICdObyBzZSBwZXJtaXRlIGxhIGluc2VyY2nDs24gZGUgaG9yYXMgcmVwZXRpZGFzLiBMYSBob3JhIGRlIGluaWNpbyBlc3TDoSBpbmNsdcOtZGEgZW4gb3RybyBpbnRlcnZhbG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgZm9ybWF0ISBQbGVhc2UgZW50ZXIgYSB0aW1lIHdpdGggdGhlIGZvcm1hdCBISDpNTS4nfSA9ICdGb3JtYXRvIGludsOhbGlkbyEgUG9yIGZhdm9yIGludHJvZHV6Y2EgbGFzIGhvcmFzIGNvbiBlbCBmb3JtYXRvIEhIOk1NLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcyNDowMCBlcyBzb2xvIHBlcm1pdGlkbyBjb21vIHRpZW1wbyBmaW5hbC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICdIb3JhIGludsOhbGlkYSEgVW4gZMOtYSBzb2xvIHRpZW5lIDI0IGhvcmFzLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSBtdXN0IGJlIGFmdGVyIHN0YXJ0IHRpbWUuJ30gPSAnTGEgaG9yYSBkZSBmaW5hbGl6YWNpw7NuIGRlYmUgc2VyIHBvc3RlcmlvciBhIGxhIGRlIGluaWNpby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBFbmQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICdObyBzZSBwZXJtaXRlIGxhIGluc2VyY2nDs24gZGUgaG9yYXMgcmVwZXRpZGFzLiBMYSBob3JhIGRlIGZpbmFsaXphY2nDs24gZXN0w6EgaW5jbHXDrWRhIGVuIG90cm8gaW50ZXJ2YWxvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnwqFQZXJpb2RvIGludsOhbGlkbyEgVW4gZMOtYSBzw7NsbyB0aWVuZSAyNCBob3Jhcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQSB2YWxpZCBwZXJpb2QgbXVzdCBiZSBncmVhdGVyIHRoYW4gemVyby4nfSA9ICdVbiBwZXJpb2RvIHbDoWxpZG8gZGViZSBzZXIgbWF5b3IgYSBjZXJvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgTmVnYXRpdmUgcGVyaW9kcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnwqFQZXJpb2RvIGludsOhbGlkbyEgTm8gc2UgcGVybWl0ZW4gcGVyaW9kb3MgbmVnYXRpdm9zLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWJtaXQgY2hhbmdlcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgb25lIHJvdyd9ID0gJ0HDsWFkaXIgdW5hIGZpbGEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICfCoVPDs2xvIHNlIHBlcm1pdGUgZWxlZ2lyIHVuIGVsZW1lbnRvIGNoZWNrYm94ISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHNpY2sgbGVhdmU/J30gPSAnwr9Fc3TDoSBzZWd1cm8gcXVlIHRyYWJhasOzIGR1cmFudGUgc3UgYXVzZW5jaWEgcG9yIGVuZmVybWVkYWQ/JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gdmFjYXRpb24/J30gPSAnwr9Fc3TDoSBzZWd1cm8gcXVlIHRyYWJhasOzIGR1cmFudGUgc3VzIHZhY2FjaW9uZXM/JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gb3ZlcnRpbWUgbGVhdmU/J30gPQogICAgICAgICfCv0VzdMOhIHNlZ3VybyBxdWUgdHJhYmFqw7MgZHVyYW50ZSBzdSBhdXNlbmNpYSBwb3IgaGFiZXIgdHJhYmFqYWRvIGhvcmFzIGV4dHJhcz8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCBtb3JlIHRoYW4gMTYgaG91cnM/J30gPSAnwr9Fc3TDoSBzZWd1cm8gcXVlIHRyYWJhasOzIG3DoXMgZGUgMTYgaG9yYXM/JzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nT3ZlcnZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nIG1vbnRobHkgb3ZlcnZpZXcnfSA9ICdWaXN0YSBtZW5zdWFsIGRlIHRpZW1wb3MgcmVwb3J0YWRvcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAoSG91cnMpJ30gPSAnTsO6bWVybyBkZSBob3JhcyBleHRyYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnSG9yYXMgZXh0cmFzIHRyYWJhamFkYXMgKGVzdGUgbWVzKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAodG90YWwpJ30gPSAnVG90YWwgZGUgaG9yYXMgZXh0cmFzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFpbmluZyBvdmVydGltZSBsZWF2ZSd9ID0gJ0hvcmFzIHJlc3RhbnRlcyBwYXJhIGF1c2VudGFyc2UgcG9yIGhhYmVyIHRyYWJhamFkbyBob3JhcyBleHRyYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gKERheXMpJ30gPSAnVmFjYWNpb25lcyAoZMOtYXMpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0aGlzIG1vbnRoKSd9ID0gJ1ZhY2FjaW9uZXMgKGVzdGUgbWVzKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodG90YWwpJ30gPSAnVmFjYWNpb25lcyB0b21hZGFzICh0b3RhbCknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIHZhY2F0aW9uJ30gPSAnRMOtYXMgZGUgdmFjYWNpb25lcyByZXN0YW50ZXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICdBdXNlbmNpYSBwb3IgZW5mZXJtZWRhZCAoZMOtYXMpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUgdGFrZW4gKHRoaXMgbW9udGgpJ30gPSAnQXVzZW5jaWFzIHBvciBlbmZlcm1lZGFkIChlc3RlIG1lcyknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnQXVzZW5jaWFzIHBvciBlbmZlcm1lZGFkICh0b3RhbCknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJldmlvdXMgbW9udGgnfSA9ICdNZXMgYW50ZXJpb3InOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV4dCBtb250aCd9ID0gJ01lcyBzaWd1aWVudGUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJ0TDrWEgZGUgbGEgc2VtYW5hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dvcmtpbmcgSG91cnMnfSA9ICdIb3JhcyB0cmFiYWphZGFzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJ1RvdGFsIGRlIGhvcmFzIHRyYWJhamFkYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlclwncyBwcm9qZWN0IG92ZXJ2aWV3J30gPSAnVmlzdGEgZGUgcHJveWVjdG8gZGUgdXN1YXJpbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyAobW9udGhseSknfSA9ICdIb3JhcyAobWVuc3VhbGVzKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyAoTGlmZXRpbWUpJ30gPSAnSG9yYXMgKHRpZW1wbyBkZSB2aWRhKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHcmFuZCB0b3RhbCd9ID0gJ1RvdGFsIG5ldG8nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnUmVwb3J0ZSBkZSBob3Jhcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNb250aCBOYXZpZ2F0aW9uJ30gPSAnTmF2ZWdhY2nDs24gcG9yIG1lcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBkYXRlJ30gPSAnSXIgYSBmZWNoYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICdSZXBvcnRlcyBkZSB1c3VhcmlvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRobHkgdG90YWwnfSA9ICdUb3RhbCBtZW5zdWFsJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xpZmV0aW1lIHRvdGFsJ30gPSAnVGllbXBvIHRvdGFsIGRlIHZpZGEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgbGVhdmUnfSA9ICdBdXNlbmNpYSBwb3IgaGFiZXIgdHJhYmFqYWRvIGhvcmFzIGV4dHJhcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJ1ZhY2FjaW9uZXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSd9ID0gJ0F1c2VuY2lhIHBvciBlbmZlcm1lZGFkJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJ0TDrWFzIGxpYnJlcyByZXN0YW50ZXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCByZXBvcnRzJ30gPSAnUmVwb3J0ZXMgZGUgcHJveWVjdG8nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJ1JlcG9ydGUgZGUgcHJveWVjdG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gcmVwb3J0aW5nIG92ZXJ2aWV3J30gPSAnSXIgYWwgcmVzdW1lbiBkZSByZXBvcnRlcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDdXJyZW50bHkgb25seSBhY3RpdmUgdXNlcnMgaW4gdGhpcyBwcm9qZWN0IGFyZSBzaG93bi4gVG8gY2hhbmdlIHRoaXMgYmVoYXZpb3IsIHBsZWFzZSB1cGRhdGUgc2V0dGluZzonfSA9CiAgICAgICAgJ0FjdHVhbG1lbnRlIHNvbG8gc2UgbXVlc3RyYW4gbG9zIHVzdWFyaW9zIGFjdGl2b3MgZW4gZXN0ZSBwcm95ZWN0by4gUGFyYSBjYW1iaWFyIGVzdGUgY29tcG9ydGFtaWVudG8sIHBvciBmYXZvciBhY3R1YWxpemUgbGEgY29uZmlndXJhY2nDs246JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0N1cnJlbnRseSBhbGwgdGltZSBhY2NvdW50aW5nIHVzZXJzIGFyZSBzaG93bi4gVG8gY2hhbmdlIHRoaXMgYmVoYXZpb3IsIHBsZWFzZSB1cGRhdGUgc2V0dGluZzonfSA9CiAgICAgICAgJ0FjdHVhbG1lbnRlIHNlIG11ZXN0cmFuIHRvZG9zIGxvcyB1c3VhcmlvcyBkZSBjb250YWJpbGlkYWQgZGUgdGllbXBvLiBQYXJhIGNhbWJpYXIgZXN0ZSBjb21wb3J0YW1pZW50bywgcG9yIGZhdm9yIGFjdHVhbGl6ZSBsYSBjb25maWd1cmFjacOzbjonOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCByZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gdGlja2V0J30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgUHJvamVjdCBTZXR0aW5ncyd9ID0gJ01vZGlmaWNhciBsYSBjb25maWd1cmFjacOzbiBkZWwgcHJveWVjdG8gZGUgY29udGFiaWxpZGFkIGRlIHRpZW1wbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgcHJvamVjdCd9ID0gJ0FncmVnYXIgcHJveWVjdG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICdJciBhbCByZXN1bWVuIGRlIGNvbmZpZ3VyYWNpw7NuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBQcm9qZWN0J30gPSAnQWdyZWdhciBQcm95ZWN0byc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFByb2plY3QgU2V0dGluZ3MnfSA9ICdNb2RpZmljYXIgbGEgQ29uZmlndXJhY2nDs24gZGVsIFByb3llY3RvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICdZYSBleGlzdGUgdW4gcHJveWVjdG8gY29uIGVzdGUgbm9tYnJlLiBQb3IgZmF2b3IsIGVsaWphIHVubyBkaWZlcmVudGUuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFNldHRpbmdzJ30gPSAnTW9kaWZpY2FyIGxhIENvbmZpZ3VyYWNpw7NuIGRlIGxhIENvbnRhYmlsaWRhZCBkZSBUaWVtcG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICdBZ3JlZ2FyIHRhcmVhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBhIHVzZXIgdG8gdGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGaWx0ZXIgZm9yIHByb2plY3RzLCB0YXNrcyBvciB1c2Vycyd9ID0gJ0ZpbHRybyBwYXJhIHByb3llY3RvcywgdGFyZWFzIG8gdXN1YXJpb3MnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBwZXJpb2RzIGNhbiBub3QgYmUgZGVsZXRlZC4nfSA9ICdMb3MgcGVyw61vZG9zIGRlIHRpZW1wbyBubyBwdWVkZW4gc2VyIGVsaW1pbmFkb3MuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJ0xpc3RhIGRlIFByb3llY3Rvcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICdMaXN0YSBkZSBUYXJlYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICdBZ3JlZ2FyIFRhcmVhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGFzayBTZXR0aW5ncyd9ID0gJ01vZGlmaWNhciBsYSBDb25maWd1cmFjacOzbiBkZSBsYSBUYXJlYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgdGFzayB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAnWWEgZXhpc3RlIHVuYSB0YXJlYSBjb24gZXN0ZSBub21icmUuIFBvciBmYXZvciwgZWxpamEgdW5vIGRpZmVyZW50ZS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnTGlzdGEgZGUgVXN1YXJpb3MnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBTZXR0aW5ncyd9ID0gJ0FqdXN0ZXMgZGVsIFVzdWFyaW8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICdFbCB1c3VhcmlvIHB1ZWRlIHZlciBob3JhcyBleHRyYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJ01vc3RyYXIgaG9yYXMgZXh0cmEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIGNyZWF0ZSBwcm9qZWN0cyd9ID0gJ0VsIHVzdWFyaW8gcHVlZGUgY3JlYXIgcHJveWVjdG9zJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICdQZXJtaXRpciBjcmVhY2nDs24gZGUgcHJveWVjdG9zJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBza2lwIHRpbWUgYWNjb3VudGluZyd9ID0gJ0VsIHVzdWFyaW8gdGllbmUgcHVlZGUgb21pdGlyIGxhIGNvbnRhYmlsaWRhZCBkZSB0aWVtcG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsb3cgdGltZSBhY2NvdW50aW5nIHNraXBwaW5nJ30gPSAnUGVybWl0aXIgbGEgb21pc2nDs24gZGUgbGEgY29udGFiaWxpZGFkIGRlIHRpZW1wbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJ1NpIHNlIHNlbGVjY2lvbmEgZXN0YSBvcGNpw7NuLCBsYSBjb250YWJpbGlkYWQgZGUgdGllbXBvIHNlcsOhIG9wY2lvbmFsIHBhcmEgZWwgdXN1YXJpby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlcmUgd2lsbCBiZSBubyB3YXJuaW5ncyBhYm91dCBtaXNzaW5nIGVudHJpZXMgYW5kIG5vIGVudHJ5IGVuZm9yY2VtZW50Lid9ID0KICAgICAgICAnTm8gaGFicsOhIGFkdmVydGVuY2lhcyBzb2JyZSBlbnRyYWRhcyBmYWx0YW50ZXMgeSBubyBzZSBleGlnaXLDoW4gbGFzIGVudHJhZGFzLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFNwYW5zJ30gPSAnRXNwYWNpb3MgZGUgdGllbXBvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBCZWdpbid9ID0gJ1BlcmlvZG8gZGUgaW5pY2lvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBFbmQnfSA9ICdQZXJpb2RvIGRlIGZpbmFsaXphY2nDs24nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF5cyBvZiBWYWNhdGlvbid9ID0gJ0TDrWFzIGRlIFZhY2FjaW9uZXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgcGVyIFdlZWsnfSA9ICdIb3JhcyBwb3IgU2VtYW5hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICdUaWVtcG8gRXh0cmEgQXV0b3JpemFkbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdGFydCBEYXRlJ30gPSAnRmVjaGEgZGUgaW5pY2lvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBpbnNlcnQgYSB2YWxpZCBkYXRlLid9ID0gJ1BvciBmYXZvciBpbnNlcnRlIHVuYSBmZWNoYSB2w6FsaWRhLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgRGF0ZSd9ID0gJ0ZlY2hhIGRlIGZpbmFsaXphY2nDs24nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICdFbCBwZXJpb2RvIGRlIGZpbmFsaXphY2nDs24gZGViZSBzZXIgcG9zdGVyaW9yIGFsIGRlIGluaWNpby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJ0TDrWFzIGRlIGF1c2VuY2lhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlZWtseSBIb3Vycyd9ID0gJ0hvcmFzIHNlbWFuYWxlcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSd9ID0gJ0hvcmFzIGV4dHJhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIHRpbWUgcGVyaW9kcyBmb3VuZC4nfSA9ICdObyBzZSBlbmNvbnRyYXJvbiBwZXJpb2RvcyBkZSB0aWVtcG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCB0aW1lIHBlcmlvZCd9ID0gJ0FncmVnYXIgcGVyaW9kbyBkZSB0aWVtcG8nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnVmVyIHJlZ2lzdHJvIGRlIHRpZW1wbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IG9mICd9ID0gJ1Jlc3VtZW4gZGUgJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJ0TDrWEgYW50ZXJpb3InOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV4dCBkYXknfSA9ICdEw61hIHNpZ3VpZW50ZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICdObyBzZSBlbmNvbnRyYXJvbiBkYXRvcyBkZSBlc3RlIGTDrWEuJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nRWRpdC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGluc2VydCBXb3JraW5nIFVuaXRzISd9ID0gJ8KhTm8gc2UgcHVkaWVyb24gaW50ZW50YXIgbGFzIFVuaWRhZGVzIGRlIFRyYWJham8hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICfDmmx0aW1vcyBQcm95ZWN0b3MnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnwqFObyBzZSBwdWRpZXJvbiBndWFyZGFyIGxvcyBhanVzdGVzLCBwb3JxdWUgZWwgZMOtYSBzb2xvIHRpZW5lIDI0IGhvcmFzISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgZGVsZXRlIFdvcmtpbmcgVW5pdHMhJ30gPSAnwqFObyBzZSBwdWRpZXJvbiBndWFyZGFyIGxhcyBVbmlkYWRlcyBkZSBUcmFiYWpvISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIERhdGUgaXMgb3V0IG9mIGxpbWl0LCBidXQgeW91IGhhdmVuXCd0IGluc2VydCB0aGlzIGRheSB5ZXQsIHNvIHlvdSBnZXQgb25lKCEpIGNoYW5jZSB0byBpbnNlcnQnfSA9CiAgICAgICAgJ0VzdGEgRmVjaGEgZXN0YSBmdWVyYSBkZWwgbMOtbWl0ZSwgcGVybyB0b2RhdsOtYSBubyBoYSBpbnNlcnRhZG8gZXN0ZSBkw61hLCBlbnRvbmNlcyB1c3RlZCB0aWVuZSBzb2xvIHVuYSBvcG9ydHVuaWRhZCBkZSBpbnNlcnRhcic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIFdvcmtpbmcgRGF5cyd9ID0gJ0TDrWFzIExhYm9yYWxlcyBJbmNvbXBsZXRvcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWNjZXNzZnVsIGluc2VydCEnfSA9ICdJbnNlcmNpw7NuIGV4aXRvc2EhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICdFcnJvciBhbCBpbnNlcnRhciBtw7psdGlwbGVzIGZlY2hhcyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnwqFTZSBpbnNlcnRhcm9uIHNhdGlzZmFjdG9yaWFtZW50ZSBsYXMgZW50cmFkYXMgZGUgdmFyaWFzIGZlY2hhcyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW50ZXJlZCBkYXRlIHdhcyBpbnZhbGlkISBEYXRlIHdhcyBjaGFuZ2VkIHRvIHRvZGF5Lid9ID0gJ0xhIGZlY2hhIGVudHJhZGEgZXMgaW5jb3JyZWN0YSEgTGEgZmVjaGEgZGUgaGEgY2FtYmlhZG8gYSBob3kuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIHRpbWUgcGVyaW9kIGNvbmZpZ3VyZWQsIG9yIHRoZSBzcGVjaWZpZWQgZGF0ZSBpcyBvdXRzaWRlIG9mIHRoZSBkZWZpbmVkIHRpbWUgcGVyaW9kcy4nfSA9CiAgICAgICAgJ05vIGhheSB1biBwZXJpb2RvIGRlIHRpZW1wbyBjb25maWd1cmFkbywgbyBsYSBmZWNoYSBlc3BlY2lmaWNhZGEgZXN0w6EgZnVlcmEgZGUgbG9zIHBlcmlvZG9zIGRlIHRpZW1wbyBkZWZpbmlkb3MuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICfCoVBvciBmYXZvciBjb250YWN0ZSBhbCBhZG1pbmlzdHJhZG9yIGRlIGNvbnRhYmlsaWRhZCBkZSB0aWVtcG9zIHBhcmEgYWN0dWFsaXphciBzdXMgcGVyaW9kb3MgZGUgdGllbXBvISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMYXN0IFNlbGVjdGVkIFByb2plY3RzJ30gPSAnTG9zIMOabHRpbW9zIFByb3llY3RvcyBTZWxlY2Npb25hZG9zJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbCBQcm9qZWN0cyd9ID0gJ1RvZG9zIGxvcyBQcm95ZWN0b3MnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnUmVwb3J0ZURlUHJveWVjdG9zOiBOZWNlc2l0YSAiUHJvamVjdElEIic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmcgUHJvamVjdCd9ID0gJ1JlcG9ydGUgZGUgUHJveWVjdG9zJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJ1JlcG9ydGVzJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBOZWVkIFRpY2tldElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5vIFByb2plY3QgZm9yIFRpY2tldCBmb3VuZC4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdTZXR0aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gdXBkYXRlIHVzZXIgc2V0dGluZ3MhJ30gPSAnwqFObyBmdWUgcG9zaWJsZSBhY3R1YWxpemFyIGxvcyBhanVzdGVzIGRlbCB1c3VhcmlvISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJ8KhUHJveWVjdG8gYcOxYWRpZG8hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdXBkYXRlZCEnfSA9ICfCoVByb3llY3RvIGFjdHVhbGl6YWRvISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIGFkZGVkISd9ID0gJ8KhVGFyZWEgYcOxYWRpZGEhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICfCoVRhcmVhIGFjdHVhbGl6YWRhISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgVXNlcklEIGlzIG5vdCB2YWxpZCEnfSA9ICfCoUVsICJVc2VySUQiIG5vIGVzIHbDoWxpZG8hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJ8KhTm8gc2UgcHVlZGUgaW5zZXJ0YXIgZGF0b3MgZGVsIHVzdWFyaW8hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byBhZGQgdGltZSBwZXJpb2QhJ30gPSAnwqFObyBmdWUgcG9zaWJsZSBhw7FhZGlyIGVsIHBlcmlvZG8gZGUgdGllbXBvISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnQ29uZmlndXJhY2nDs24nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciB1cGRhdGVkISd9ID0gJ8KhVXN1YXJpbyBhY3R1YWxpemFkbyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICfCoVVzdWFyaW8gYcOxYWRpZG8hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05ldyBVc2VyJ30gPSAnVXN1YXJpbyBOdWV2byc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgU3RhdHVzJ30gPSAnRXN0YWRvIGRlbCBQZXJpb2RvJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nVmlldy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldzogTmVlZCAlcyEnfSA9ICdWaXN0YTogwqFOZWNlc2l0YSAlcyEnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ob3RpZmljYXRpb24vVGltZUFjY291bnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBpbnNlcnQgeW91ciB3b3JraW5nIGhvdXJzISd9ID0gJ1BvciBmYXZvciBpbnNlcnRlIHN1cyBob3JhcyBkZSB0cmFiYWpvISc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL091dHB1dC9IVE1ML1Rvb2xCYXIvSW5jb21wbGV0ZVdvcmtpbmdEYXlzLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyd9ID0gJ0TDrWFzIGxhYm9yYWxlcyBpbmNvbXBsZXRvcyc7CgogICAgIyBKUyBGaWxlOiBUaW1lQWNjb3VudGluZy5BZ2VudC5FZGl0VGltZVJlY29yZHMKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnfSA9ICfCoVBvciBmYXZvciBzZWxlY2Npb25lIGFsIG1lbm9zIHVuIGTDrWEhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICdSZWdpc3RybyBNYXNpdm8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICfCoVBvciBmYXZvciBlc2NvamEgdW5hIHJhesOzbiBwb3IgYXVzZW5jaWEhJzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5J30gPSAnRWxpbWluYXIgUmVnaXN0cm8gZGUgQ29udGFiaWxpZGFkIGRlIFRpZW1wbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDb25maXJtIGluc2VydCd9ID0gJ0NvbmZpcm1hciBpbnNlcmNpw7NuJzsKCiAgICAjIFN5c0NvbmZpZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWN0aXZhdGUgdGhlIHN5bmNocm9uaXNhdGlvbiBvZiBUaWNrZXQtVGltZVVuaXRzIGludG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZ2VudCBpbnRlcmZhY2Ugbm90aWZpY2F0aW9uIG1vZHVsZSB0byBzZWUgdGhlIG51bWJlciBvZiBpbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyBmb3IgdGhlIHVzZXIuJ30gPQogICAgICAgICdNw7NkdWxvIGRlIG5vdGlmaWNhY2nDs24gZGUgbGEgaW50ZXJmYXogZGVsIGFnZW50ZSwgbmVjZXNhcmlvIHBhcmEgdmlzdWFsaXphciBlbCBuw7ptZXJvIGRlIGTDrWFzIGluY29tcGxldG9zIGRlIHVuIHVzdWFyaW8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Fsc28gc3luY2hyb25pc2UgY3VzdG9tZXJzIGFzIGEgbmV3IHByb2plY3QgaWYgdGhleSBoYXZlIG5vdCB5ZXQgYmVlbiBjcmVhdGVkIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcyBzb29uIGFzIHRoZSBzeW5jaHJvbmlzYXRpb24gb2YgdGlja2V0IFRpbWVVbml0cyBpcyBhY3RpdmF0ZWQsIGl0IGlzIHBvc3NpYmxlIHRvIHNldCB0aGUgZW50cmllcyBSZWFkT25seS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDcmVhdGUgYSBuZXcgdGltZSBhY2NvdW50aW5nIGVudHJ5IHJlbGF0ZWQgdG8gdGhlIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IG5hbWUgZm9yIG5ldyBhY3Rpb25zLid9ID0gJ05vbWJyZSBwb3IgZGVmZWN0byBwYXJhIGFjY2lvbmVzIG51ZXZhcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnTm9tYnJlIHBvciBkZWZlY3RvIHBhcmEgcHJveWVjdG9zIG51ZXZvcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkYXRlIGVuZC4nfSA9ICdDb25maWd1cmFjacOzbiBwb3IgZGVmZWN0byBwYXJhIGxhIGZlY2hhIGRlIGZpbmFsaXphY2nDs24uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICdDb25maWd1cmFjacOzbiBwb3IgZGVmZWN0byBwYXJhIGxhIGZlY2hhIGRlIGluaWNpby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICdDb25maWd1cmFjacOzbiBwb3IgZGVmZWN0byBwYXJhIGxhIGRlc2NyaXBjacOzbi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJ0NvbmZpZ3VyYWNpw7NuIHBvciBkZWZlY3RvIHBhcmEgbGFzIGZhbHRhcyAoZMOtYXMgZGUgYXVzZW5jaWEpLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJ0NvbmZpZ3VyYWNpw7NuIHBvciBkZWZlY3RvIHBhcmEgbGFzIGhvcmFzIGV4dHJhcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciB0aGUgc3RhbmRhcmQgd2Vla2x5IGhvdXJzLid9ID0gJ0NvbmZpZ3VyYWNpw7NuIHBvciBkZWZlY3RvIHBhcmEgbGFzIGhvcmFzIHNlbWFuYWxlcyBlc3TDoW5kYXIuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICdFc3RhZG8gcG9yIGRlZmVjdG8gcGFyYSBhY2Npb25lcyBudWV2YXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnRXN0YWRvIHBvciBkZWZlY3RvIHBhcmEgcHJveWVjdG9zIG51ZXZvcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICdFc3RhZG8gcG9yIGRlZmVjdG8gcGFyYSB1c3VhcmlvcyBudWV2b3MuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmluZXMgdGhlIHByb2plY3RzIGZvciB3aGljaCBhIHJlbWFyayBpcyByZXF1aXJlZC4gSWYgdGhlIFJlZ0V4cCBtYXRjaGVzIG9uIHRoZSBwcm9qZWN0LCB5b3UgaGF2ZSB0byBpbnNlcnQgYSByZW1hcmsgdG9vLiBUaGUgUmVnRXhwIHVzZSB0aGUgc214IHBhcmFtZXRlci4nfSA9CiAgICAgICAgJ0RlZmluZSBwYXJhIGN1w6FsZXMgcHJveWVjdG9zIGVzIG9ibGlnYXRvcmlhIGxhIGluc2VyY2nDs24gZGUgY29tZW50YXJpb3MuIFNpIGxhIGV4cHJlc2nDs24gcmVndWxhciBjb2luY2lkZSBjb24gZWwgcHJveWVjdG8sIHNlIHRpZW5lIHF1ZSBlc2NyaWJpciB1biBjb21lbnRhcmlvLiBMYSBleHByZXNpw7NuIHJlZ3VsYXIgdXNhIGVsIHBhcsOhbWV0cm8gc214Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZXRlcm1pbmVzIGlmIHRoZSBzdGF0aXN0aWNzIG1vZHVsZSBtYXkgZ2VuZXJhdGUgdGltZSBhY2NvdW50aW5nIGluZm9ybWF0aW9uLid9ID0KICAgICAgICAnRGV0ZXJtaW5hIHNpIGVsIG3Ds2R1bG8gZGUgZXN0YWTDrXN0aWNhcyBkZWJlIGdlbmVyYXIgaW5mb3JtYWNpw7NuIGRlIGNvbnRhYmlsaWRhZCBkZSB0aWVtcG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSBhY2NvdW50aW5nIHNldHRpbmdzLid9ID0gJ0VkaXRhciBhanVzdGVzIGRlIGNvbnRhYmlsaWRhZCBkZSB0aWVtcG9zLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IHRpbWUgcmVjb3JkLid9ID0gJ0VkaXRhciByZWdpc3RybyBkZSB0aWVtcG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJ0VzcGVjaWZpY2EgZWwgbsO6bWVybyBtw6F4aW1vIGRlIGTDrWFzIHBhcmEgcmVnaXN0cmFyIGhvcmFzIGRlIHRyYWJham8gYXRyYXNhZGFzIChwb3IgZWplbXBsbzogMTAgZMOtYXMgZGUgYW50aWfDvGVkYWQpLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICdTaSBzZSBoYWJpbGl0YSwgc29sYW1lbnRlIGxvcyB1c3VhcmlvcyBxdWUgaGFuIHJlZ2lzdHJhZG8gc3VzIHRpZW1wb3MgZW4gZWwgcHJveWVjdG8gc2VsZWNjaW9uYWRvIHNlcsOhbiBtb3N0cmFkb3MuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBkcm9wZG93biBlbGVtZW50cyBpbiB0aGUgZWRpdCBzY3JlZW4gYXJlIGNoYW5nZWQgdG8gbW9kZXJuaXplZCBhdXRvY29tcGxldGlvbiBmaWVsZHMuJ30gPQogICAgICAgICdTaSBlc3TDoW4gaGFiaWxpdGFkb3MsIGxvcyBlbGVtZW50b3MgZGVzcGxlZ2FibGVzIGVuIGxhIHBhbnRhbGxhIGRlIGVkaWNpw7NuIGhhbiBzaWRvIG1vZGlmaWNhZG9zIHBvciBjYW1wb3MgZGUgYXV0by1jb21wbGV0YWRvLCBlc3RvIHBhcmEgc2VyIG1hcyBtb2Rlcm5vcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGNhbiBiZSB1c2VkIGluc3RlYWQgdHdvIGxpc3Qgb2YgcHJvamVjdHMgKGxhc3QgYW5kIGFsbCBvbmVzKS4gSXQgY291bGQgYmUgdXNlZCBvbmx5IGlmIFRpbWVBY2NvdW50aW5nOjpFbmFibGVBdXRvQ29tcGxldGlvbiBpcyBlbmFibGVkLid9ID0KICAgICAgICAnU2kgZXN0w6EgaGFiaWxpdGFkbywgZWwgZmlsdHJvIHBhcmEgZWwgcHJveWVjdG8gYW50ZXJpb3IgcHVlZGUgc2VyIHVzYWRvIGVuIHZleiBkZSBkb3MgbGlzdGFzIGRlIHByb3llY3RvcyAobGFzIGFudGVyaW9yIHkgdG9kYXMgbGFzIGRlbcOhcykuIEVzdG8gc2UgcG9kcsOhIHVzYXIgc2ksIHkgc29sbyBzaSBUaW1lQWNjb3VudGluZzo6RW5hYmxlQXV0b0NvbXBsZXRpb24gZXN0w6EgaGFiaWxpdGFkby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJ1NpIGVzdMOhIGhhYmlsaXRhZG8sIGVsIGZpbHRybyBwYXJhIGVsIHByb3llY3RvIGFudGVyaW9yIGVzdMOhIGFjdGl2YWRvIHBvciBvbWlzacOzbiBzaSBoYXkgcHJveWVjdG9zIHByZXZpb3MuIEVzdG8gcHVlZGUgc2VyIHV0aWxpemFkbyBzaSwgeSBzb2xvIHNpLCBUaW1lQWNjb3VudGluZzo6VXNlRmlsdGVyIGVzdMOhIGhhYmlsaXRhZG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSB1c2VyIGlzIGFsbG93ZWQgdG8gZW50ZXIgIm9uIHZhY2F0aW9uIGxlYXZlIiwgIm9uIHNpY2sgbGVhdmUiIGFuZCAib24gb3ZlcnRpbWUgbGVhdmUiIHRvIG11bHRpcGxlIGRhdGVzIGF0IG9uY2UuJ30gPQogICAgICAgICdTaSBzZSBoYWJpbGl0YSwgc2UgbGUgcGVybWl0aXLDoSBhbCB1c3VhcmlvIHJlZ2lzdHJhciAidmFjYWNpb25lcyIsICJhdXNlbmNpYSBwb3IgZW5mZXJtZWRhZCIsICJhdXNlbmNpYSBwb3IgaGFiZXIgdHJhYmFqYWRvIGhvcmFzIGV4dHJhIiBlbiBtw7psdGlwbGVzIGZlY2hhcyBhbCBtaXNtbyB0aWVtcG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnTsO6bWVybyBtw6F4aW1vIGRlIGTDrWFzIGxhYm9yYWxlcyBkZXNwdcOpcyBkZSBsb3MgY3VhbGVzIGVzIG9ibGlnYXRvcmlvIHJlcG9ydGFyIGxhcyBob3JhcyB0cmFiYWphZGFzLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXhpbXVtIG51bWJlciBvZiB3b3JraW5nIGRheXMgd2l0aG91dCB3b3JraW5nIHVuaXRzIGVudHJ5IGFmdGVyIHdoaWNoIGEgd2FybmluZyB3aWxsIGJlIHNob3duLid9ID0KICAgICAgICAnTsO6bWVybyBtw6F4aW1vIGRlIGTDrWFzIGxhYm9yYWxlcyBzaW4gcmVnaXN0cm8gZGUgaG9yYXMgdHJhYmFqYWRhcyBkZXNwdcOpcyBkZSBsb3MgY3VhbGVzIHNlIG1vc3RyYXLDoSB1bmEgYWR2ZXJ0ZW5jaWEuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ2aWV3Lid9ID0gJ1Zpc3RhIEdlbmVyYWwuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnUmVwb3J0ZSBkZSB0aWVtcG9zIGRlbCBwcm95ZWN0by4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIGFjdGlvbiBsaXN0IGFjY29yZGluZyB0byBzZWxlY3RlZCBwcm9qZWN0LiBLZXkgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9uIGZvciBwcm9qZWN0KHMpLCBjb250ZW50IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGFjdGlvbihzKS4nfSA9CiAgICAgICAgJ0V4cHJlc2lvbmVzIHJlZ3VsYXJlcyBwYXJhIHJlc3RyaW5naXIgbGEgbGlzdGEgZGUgYWNjaW9uZXMsIGRlIGFjdWVyZG8gYWwgcHJveWVjdG8gc2VsZWNjaW9uYWRvLiBLZXkgY29udGllbmUgbGEgZXhwcmVzacOzbiByZWd1bGFyIHBhcmEgbG9zIHByb3llY3RvcyB5IENvbnRlbnQsIGxhcyBleHByZXNpb25lcyByZWd1bGFyZXMgcGFyYSBsYXMgYWNjaW9uZXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBwcm9qZWN0IGxpc3QgYWNjb3JkaW5nIHRvIHVzZXIgZ3JvdXBzLiBLZXkgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9uIGZvciBwcm9qZWN0KHMpLCBjb250ZW50IGNvbnRhaW5zIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIGdyb3Vwcy4nfSA9CiAgICAgICAgJ0V4cHJlc2lvbmVzIHJlZ3VsYXJlcyBwYXJhIHJlc3RyaW5naXIgbGEgbGlzdGEgZGUgcHJveWVjdG9zLCBkZSBhY3VlcmRvIGEgbG9zIGdydXBvcyBkZSB1c3Vhcmlvcy4gS2V5IGNvbnRpZW5lIGxhIGV4cHJlc2nDs24gcmVndWxhciBwYXJhIGxvcyBwcm95ZWN0b3MgeSBDb250ZW50LCB1bmEgbGlzdGEgZGUgZ3J1cG9zLCBzZXBhcmFkb3MgcG9yIGNvbWFzLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaG93IGFjY291bnRlZCB0aW1lcyBmb3IgdGhpcyB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3BlY2lmaWVzIGlmIHdvcmtpbmcgaG91cnMgY2FuIGJlIGluc2VydGVkIHdpdGhvdXQgc3RhcnQgYW5kIGVuZCB0aW1lcy4nfSA9CiAgICAgICAgJ0VzcGVjaWZpY2Egc2kgZXMgcG9zaWJsZSBpbnNlcnRhciBsYXMgaG9yYXMgdHJhYmFqYWRhcyBzaW4gZGVmaW5pciBsb3MgdGllbXBvcyBkZSBpbmljaW8geSBmaW5hbGl6YWNpw7NuIGRlIGxhcyB0YXJlYXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICdFc3RlIG3Ds2R1bG8gaGFjZSBvYmxpZ2F0b3JpYSBsYSBpbnNlcmNpw7NuIGRlIGhvcmFzIHRyYWJhamFkYXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgbm90aWZpY2F0aW9uIG1vZHVsZSBnaXZlcyBhIHdhcm5pbmcgaWYgdGhlcmUgYXJlIHRvbyBtYW55IGluY29tcGxldGUgd29ya2luZyBkYXlzLid9ID0KICAgICAgICAnTcOzZHVsbyBkZSBub3RpZmljYWNpw7NuIHF1ZSBtdWVzdHJhIHVuYSBhZHZlcnRlbmNpYSBzaSBoYXkgZGVtYXNpYWRvcyBkw61hcyBzaW4gcmVnaXN0cm8gZGUgaG9yYXMgdHJhYmFqYWRhcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJ0NvbnRhYmlsaWRhZCBkZSBUaWVtcG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBSZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIGVkaXQuJ30gPSAnRWRpdGFyIGNvbnRhYmlsaWRhZCBkZSB0aWVtcG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBvdmVydmlldy4nfSA9ICdSZXN1bWVuIGRlIGNvbnRhYmlsaWRhZCBkZSB0aWVtcG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyByZXBvcnRpbmcuJ30gPSAnUmVwb3J0ZSBkZSBjb250YWJpbGlkYWQgZGUgdGllbXBvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnQWp1c3RlcyBkZSBjb250YWJpbGlkYWQgZGUgdGllbXBvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdGlja2V0IHJlcG9ydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHZpZXcuJ30gPSAnVmVyIGNvbnRhYmlsaWRhZCBkZSB0aWVtcG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZy4nfSA9ICdDb250YWJpbGlkYWQgZGUgdGllbXBvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICdTZSB1c2Egc2kgYWxndW5hcyBhY2Npb25lcyByZWR1Y2VuIGVsIG7Dum1lcm8gZGUgaG9yYXMgdHJhYmFqYWRhcyAocG9yIGVqZW1wbG86IHNpIHPDs2xvIHNlIHBhZ2EgbGEgbWl0YWQgZGVsIHRpZW1wbyBkZSB2aWFqZSBwdWVkZSBlc3BlY2lmaWNhcnNlIEtleSA9PiBWaWFqZTsgQ29udGVudCA9PiA1MCkuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZSBTZXJ2aWNlIGFzIEFjdGlvbi4gUGxlYXNlIGFkZCBhcyBrZXkgdGhlIHRpbWVhY291bnRpbmcgYWN0aW9uIGFuZCB0aGUgc2VydmljZSBhcyB2YWx1ZS4gUmVnRXggYXJlIGFsbG93ZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2UgbmVlZCB0byBzZXQgYSBkZWZhdWx0IGFjdGlvbiBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2UgbmVlZCB0byBzZXQgYSBkZWZhdWx0IHByb2plY3QgaWQgd2hlbiB3ZSBzeW5jIFRpbWVVbml0cyB0byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIHNhdmUgdGhlIEFydGljbGUgVGltZVVuaXQgdG8gYSBEeW5hbWljRmllbGQgZnJvbSB0eXBlICJBcnRpY2xlIi4gUGxlYXNlIGFkZCBoZXJlIHRoZSBuYW1lIG9mIHRoZSBmaWVsZCBpZiB0aGUgaW5pdGluYWwgbmFtZSBpcyBjaGFuZ2VkLid9ID0KICAgICAgICAnJzsKCgogICAgcHVzaCBAeyAkU2VsZi0+e0phdmFTY3JpcHRTdHJpbmdzfSAvLyBbXSB9LCAoCiAgICAnQ2FuY2VsJywKICAgICdDb25maXJtIGluc2VydCcsCiAgICAnRGVsZXRlIFRpbWUgQWNjb3VudGluZyBFbnRyeScsCiAgICAnTWFzcyBFbnRyeScsCiAgICAnTm8nLAogICAgJ1BsZWFzZSBjaG9vc2UgYSByZWFzb24gZm9yIGFic2VuY2UhJywKICAgICdQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJywKICAgICdTdWJtaXQnLAogICAgJ1llcycsCiAgICApOwoKfQoKMTsK</File>
        <File Location="Kernel/Language/es_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmVzX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJ1RhcmVhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFyayd9ID0gJ0NvbWVudGFyaW8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICfCv1JlYWxtZW50ZSBkZXNlYSBlbGltaW5hciBsYSBDb250YWJpbGlkYWQgZGUgVGllbXBvIGRlIGVzdGUgZMOtYT8nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnTW9kaWZpY2FyIHJlZ2lzdHJvIGRlIGhvcmFzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnSXIgYSBjb25maWd1cmFjaW9uZXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF0ZSBOYXZpZ2F0aW9uJ30gPSAnTmF2ZWdhY2nDs24gcG9yIGZlY2hhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RheXMgd2l0aG91dCBlbnRyaWVzJ30gPSAnRMOtYXMgc2luIHJlZ2lzdHJvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NlbGVjdCBhbGwgZGF5cyd9ID0gJ1NlbGVjY2lvbmFyIHRvZG9zIGxvcyBkw61hcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXNzIGVudHJ5J30gPSAnUmVnaXN0cm8gbWFzaXZvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgdGhlIHJlYXNvbiBmb3IgeW91ciBhYnNlbmNlIGZvciB0aGUgc2VsZWN0ZWQgZGF5cyd9ID0KICAgICAgICAnUG9yIGZhdm9yIGVzY29qYSB1bmEgcmF6w7NuIHBhcmEgc3UgYXVzZW5jaWEgcGFyYSBsb3MgZMOtYXMgc2VsZWNjaW9uYWRvcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJ0RlIHZhY2FjaW9uZXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gc2ljayBsZWF2ZSd9ID0gJ0F1c2VudGUgcG9yIGVuZmVybWVkYWQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gb3ZlcnRpbWUgbGVhdmUnfSA9ICdBdXNlbnRlIHBvciBoYWJlciB0cmFiYWphZG8gaG9yYXMgZXh0cmFzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnTG9zIGNhbXBvcyByZXF1ZXJpZG9zIGVzdMOhbiBtYXJjYWRvcyBjb24gdW4gIioiLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgaGF2ZSB0byBmaWxsIGluIHN0YXJ0IGFuZCBlbmQgdGltZSBvciBhIHRpbWUgcGVyaW9kLid9ID0gJ0VzIG5lY2VzYXJpbyBxdWUgcHJvcG9yY2lvbmUgdW5hIGhvcmEgZGUgaW5pY2lvIHkgdW5hIGRlIGZpbmFsaXphY2nDs24gbyB1biBwZXJpb2RvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0J30gPSAnUHJveWVjdG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJ8KhUG9yIGZhdm9yLCBhw7FhZGUgdW4gY29tZW50YXJpbyBjb24gbWFzIGRlIDggY2FyYWN0ZXJlcyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXJzcHJ1bmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmVnYXRpdmUgdGltZXMgYXJlIG5vdCBhbGxvd2VkLid9ID0gJ05vIHNlIHBlcm1pdGUgbGEgaW5zZXJjacOzbiBkZSBob3JhcyBuZWdhdGl2YXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICdObyBzZSBwZXJtaXRlIGxhIGluc2VyY2nDs24gZGUgaG9yYXMgcmVwZXRpZGFzLiBMYSBob3JhIGRlIGluaWNpbyBlc3TDoSBpbmNsdcOtZGEgZW4gb3RybyBpbnRlcnZhbG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgZm9ybWF0ISBQbGVhc2UgZW50ZXIgYSB0aW1lIHdpdGggdGhlIGZvcm1hdCBISDpNTS4nfSA9ICfCoUZvcm1hdG8gbm8gdsOhbGlkbyEgUG9yIGZhdm9yIGludHJvZHV6Y2EgbGFzIGhvcmFzIGNvbiBlbCBmb3JtYXRvIEhIOk1NLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcyNDowMCBlcyBzb2xvIHBlcm1pdGlkbyBjb21vIHRpZW1wbyBmaW5hbC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICfCoUhvcmEgbm8gdsOhbGlkYSEgVW4gZMOtYSBzb2xvIHRpZW5lIDI0IGhvcmFzLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSBtdXN0IGJlIGFmdGVyIHN0YXJ0IHRpbWUuJ30gPSAnTGEgaG9yYSBkZSBmaW5hbGl6YWNpw7NuIGRlYmUgc2VyIHBvc3RlcmlvciBhIGxhIGRlIGluaWNpby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBFbmQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICdObyBzZSBwZXJtaXRlIGxhIGluc2VyY2nDs24gZGUgaG9yYXMgcmVwZXRpZGFzLiBMYSBob3JhIGRlIGZpbmFsaXphY2nDs24gZXN0w6EgaW5jbHXDrWRhIGVuIG90cm8gaW50ZXJ2YWxvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnwqFQZXJpb2RvIG5vIHbDoWxpZG8hIFVuIGTDrWEgc8OzbG8gdGllbmUgMjQgaG9yYXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnVW4gcGVyaW9kbyB2w6FsaWRvIGRlYmUgc2VyIG1heW9yIGEgY2Vyby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIE5lZ2F0aXZlIHBlcmlvZHMgYXJlIG5vdCBhbGxvd2VkLid9ID0gJ8KhUGVyaW9kbyBubyB2w6FsaWRvISBObyBzZSBwZXJtaXRlbiBwZXJpb2RvcyBuZWdhdGl2b3MuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Ym1pdCBjaGFuZ2VzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBvbmUgcm93J30gPSAnQcOxYWRpciB1bmEgZmlsYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgY2FuIG9ubHkgc2VsZWN0IG9uZSBjaGVja2JveCBlbGVtZW50ISd9ID0gJ8KhU8OzbG8gc2UgcGVybWl0ZSBlbGVnaXIgdW4gZWxlbWVudG8gZGUgbGEgY2FzaWxsYSBkZSB2ZXJpZmljYWNpw7NuISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHNpY2sgbGVhdmU/J30gPSAnwr9Fc3TDoSBzZWd1cm8gcXVlIHRyYWJhasOzIGR1cmFudGUgc3UgYXVzZW5jaWEgcG9yIGVuZmVybWVkYWQ/JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gdmFjYXRpb24/J30gPSAnwr9Fc3TDoSBzZWd1cm8gcXVlIHRyYWJhasOzIGR1cmFudGUgc3VzIHZhY2FjaW9uZXM/JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gb3ZlcnRpbWUgbGVhdmU/J30gPQogICAgICAgICfCv0VzdMOhIHNlZ3VybyBxdWUgdHJhYmFqw7MgZHVyYW50ZSBzdSBhdXNlbmNpYSBwb3IgaGFiZXIgdHJhYmFqYWRvIGhvcmFzIGV4dHJhcz8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCBtb3JlIHRoYW4gMTYgaG91cnM/J30gPSAnwr9Fc3TDoSBzZWd1cm8gcXVlIHRyYWJhasOzIG3DoXMgZGUgMTYgaG9yYXM/JzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nT3ZlcnZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nIG1vbnRobHkgb3ZlcnZpZXcnfSA9ICdWaXN0YSBtZW5zdWFsIGRlIHRpZW1wb3MgcmVwb3J0YWRvcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAoSG91cnMpJ30gPSAnTsO6bWVybyBkZSBob3JhcyBleHRyYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnSG9yYXMgZXh0cmFzIHRyYWJhamFkYXMgKGVzdGUgbWVzKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAodG90YWwpJ30gPSAnVG90YWwgZGUgaG9yYXMgZXh0cmFzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFpbmluZyBvdmVydGltZSBsZWF2ZSd9ID0gJ0hvcmFzIHJlc3RhbnRlcyBwYXJhIGF1c2VudGFyc2UgcG9yIGhhYmVyIHRyYWJhamFkbyBob3JhcyBleHRyYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gKERheXMpJ30gPSAnVmFjYWNpb25lcyAoZMOtYXMpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0aGlzIG1vbnRoKSd9ID0gJ1ZhY2FjaW9uZXMgdG9tYWRhcyAoZXN0ZSBtZXMpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0b3RhbCknfSA9ICdWYWNhY2lvbmVzIHRvbWFkYXMgKHRvdGFsKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICdEw61hcyBkZSB2YWNhY2lvbmVzIHJlc3RhbnRlcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIExlYXZlIChEYXlzKSd9ID0gJ0F1c2VuY2lhIHBvciBlbmZlcm1lZGFkIChkw61hcyknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICdBdXNlbmNpYXMgcG9yIGVuZmVybWVkYWQgKGVzdGUgbWVzKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlIHRha2VuICh0b3RhbCknfSA9ICdBdXNlbmNpYXMgcG9yIGVuZmVybWVkYWQgKHRvdGFsKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcmV2aW91cyBtb250aCd9ID0gJ01lcyBhbnRlcmlvcic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IG1vbnRoJ30gPSAnTWVzIHNpZ3VpZW50ZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrZGF5J30gPSAnRMOtYSBkZSBsYSBzZW1hbmEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV29ya2luZyBIb3Vycyd9ID0gJ0hvcmFzIHRyYWJhamFkYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG90YWwgd29ya2VkIGhvdXJzJ30gPSAnVG90YWwgZGUgaG9yYXMgdHJhYmFqYWRhcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICdWaXN0YSBkZSBwcm95ZWN0byBkZSB1c3VhcmlvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChtb250aGx5KSd9ID0gJ0hvcmFzIChtZW5zdWFsZXMpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICdIb3JhcyAodGllbXBvIGRlIHZpZGEpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dyYW5kIHRvdGFsJ30gPSAnVG90YWwgbmV0byc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSByZXBvcnRpbmcnfSA9ICdSZXBvcnRlIGRlIGhvcmFzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICdOYXZlZ2FjacOzbiBwb3IgbWVzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIGRhdGUnfSA9ICdJciBhIGZlY2hhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgcmVwb3J0cyd9ID0gJ1JlcG9ydGVzIGRlIHVzdWFyaW8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJ1RvdGFsIG1lbnN1YWwnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGlmZXRpbWUgdG90YWwnfSA9ICdUaWVtcG8gdG90YWwgZGUgdmlkYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJ0F1c2VuY2lhIHBvciBoYWJlciB0cmFiYWphZG8gaG9yYXMgZXh0cmFzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uJ30gPSAnVmFjYWNpb25lcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAnQXVzZW5jaWEgcG9yIGVuZmVybWVkYWQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gcmVtYWluaW5nJ30gPSAnRMOtYXMgbGlicmVzIHJlc3RhbnRlcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICdSZXBvcnRlcyBkZSBwcm95ZWN0byc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1Byb2plY3QKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgcmVwb3J0J30gPSAnUmVwb3J0ZSBkZSBwcm95ZWN0byc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICdJciBhbCByZXN1bWVuIGRlIHJlcG9ydGVzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0N1cnJlbnRseSBvbmx5IGFjdGl2ZSB1c2VycyBpbiB0aGlzIHByb2plY3QgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnQWN0dWFsbWVudGUgc29sbyBzZSBtdWVzdHJhbiBsb3MgdXN1YXJpb3MgYWN0aXZvcyBlbiBlc3RlIHByb3llY3RvLiBQYXJhIGNhbWJpYXIgZXN0ZSBjb21wb3J0YW1pZW50bywgcG9yIGZhdm9yIGFjdHVhbGl6ZSBsYSBjb25maWd1cmFjacOzbjonOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnQWN0dWFsbWVudGUgc2UgbXVlc3RyYW4gdG9kb3MgbG9zIHVzdWFyaW9zIGRlIGNvbnRhYmlsaWRhZCBkZSB0aWVtcG8uIFBhcmEgY2FtYmlhciBlc3RlIGNvbXBvcnRhbWllbnRvLCBwb3IgZmF2b3IgYWN0dWFsaXplIGxhIGNvbmZpZ3VyYWNpw7NuOic7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byB0aWNrZXQnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdTZXR0aW5nCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgQWNjb3VudGluZyBQcm9qZWN0IFNldHRpbmdzJ30gPSAnTW9kaWZpY2FyIGxhIGNvbmZpZ3VyYWNpw7NuIGRlbCBwcm95ZWN0byBkZSBjb250YWJpbGlkYWQgZGUgdGllbXBvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgcHJvamVjdCd9ID0gJ0FncmVnYXIgcHJveWVjdG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICdJciBhbCByZXN1bWVuIGRlIGNvbmZpZ3VyYWNpw7NuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBQcm9qZWN0J30gPSAnQWdyZWdhciBQcm95ZWN0byc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFByb2plY3QgU2V0dGluZ3MnfSA9ICdNb2RpZmljYXIgbGEgQ29uZmlndXJhY2nDs24gZGVsIFByb3llY3RvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICdZYSBleGlzdGUgdW4gcHJveWVjdG8gY29uIGVzdGUgbm9tYnJlLiBQb3IgZmF2b3IsIGVsaWphIHVubyBkaWZlcmVudGUuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFNldHRpbmdzJ30gPSAnTW9kaWZpY2FyIGxhIENvbmZpZ3VyYWNpw7NuIGRlIGxhIENvbnRhYmlsaWRhZCBkZSBUaWVtcG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICdBZ3JlZ2FyIHRhcmVhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBhIHVzZXIgdG8gdGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGaWx0ZXIgZm9yIHByb2plY3RzLCB0YXNrcyBvciB1c2Vycyd9ID0gJ0ZpbHRybyBwYXJhIHByb3llY3RvcywgdGFyZWFzIG8gdXN1YXJpb3MuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnTG9zIHBlcsOtb2RvcyBkZSB0aWVtcG8gbm8gc2UgcHVlZGVuIGJvcnJhci4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCBMaXN0J30gPSAnTGlzdGEgZGUgUHJveWVjdG9zJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgTGlzdCd9ID0gJ0xpc3RhIGRlIFRhcmVhcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgVGFzayd9ID0gJ0FncmVnYXIgVGFyZWEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnTW9kaWZpY2FyIGxhIENvbmZpZ3VyYWNpw7NuIGRlIGxhIFRhcmVhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICdZYSBleGlzdGUgdW5hIHRhcmVhIGNvbiBlc3RlIG5vbWJyZS4gUG9yIGZhdm9yLCBlbGlqYSB1bm8gZGlmZXJlbnRlLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIExpc3QnfSA9ICdMaXN0YSBkZSBVc3Vhcmlvcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIFNldHRpbmdzJ30gPSAnQWp1c3RlcyBkZSB1c3VhcmlvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBzZWUgb3ZlcnRpbWVzJ30gPSAnRWwgdXN1YXJpbyBwdWVkZSB2ZXIgaG9yYXMgZXh0cmFzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgT3ZlcnRpbWUnfSA9ICdNb3N0cmFyIGhvcmFzIGV4dHJhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBjcmVhdGUgcHJvamVjdHMnfSA9ICdFbCB1c3VhcmlvIHRpZW5lIHBlcm1pdGlkbyBjcmVhciBwcm95ZWN0b3MnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsb3cgcHJvamVjdCBjcmVhdGlvbid9ID0gJ1Blcm1pdGlyIGNyZWFjacOzbiBkZSBwcm95ZWN0b3MnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnRWwgdXN1YXJpbyBlc3TDoSBhdXRvcml6YWRvIGEgY29udGFiaWxpemFyIGVsIHRpZW1wbyAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsb3cgdGltZSBhY2NvdW50aW5nIHNraXBwaW5nJ30gPSAnUGVybWl0aXIgc2FsdGFyIGxhIGNvbnRhYmlsaXphY2nDs24gZGVsIHRpZW1wbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJ1NpIGVzdGEgb3BjacOzbiBlc3TDoSBtYXJjYWRhLCBsYSBjb250YWJpbGl6YWNpw7NuIGRlbCB0aWVtcG8gc2UgY29udmllcnRlIGVuIG9wY2lvbmFsIHBhcmEgZWwgdXN1YXJpbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICdObyBoYWJyw6EgYWR2ZXJ0ZW5jaWFzIGFjZXJjYSBkZSBsYXMgZW50cmFkYXMgcXVlIGZhbHRhbiB5IG5vIGhhYnLDoSBlbnRyYWRhcyBkZSBhcGxpY2FjacOzbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFNwYW5zJ30gPSAnTGFwc28gZGUgdGllbXBvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBCZWdpbid9ID0gJ1BlcmlvZG8gZGUgaW5pY2lvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBFbmQnfSA9ICdQZXJpb2RvIGRlIGZpbmFsaXphY2nDs24nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF5cyBvZiBWYWNhdGlvbid9ID0gJ0TDrWFzIGRlIFZhY2FjaW9uZXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgcGVyIFdlZWsnfSA9ICdIb3JhcyBwb3IgU2VtYW5hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICdUaWVtcG8gRXh0cmEgQXV0b3JpemFkbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdGFydCBEYXRlJ30gPSAnRmVjaGEgZGUgaW5pY2lvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBpbnNlcnQgYSB2YWxpZCBkYXRlLid9ID0gJ1BvciBmYXZvciBpbnNlcnRlIHVuYSBmZWNoYSB2w6FsaWRhLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgRGF0ZSd9ID0gJ0ZlY2hhIGRlIGZpbmFsaXphY2nDs24nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICdFbCBwZXJpb2RvIGRlIGZpbmFsaXphY2nDs24gZGViZSBzZXIgcG9zdGVyaW9yIGFsIGRlIGluaWNpby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJ0TDrWFzIGRlIGF1c2VuY2lhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlZWtseSBIb3Vycyd9ID0gJ0hvcmFzIHNlbWFuYWxlcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSd9ID0gJ0hvcmFzIGV4dHJhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIHRpbWUgcGVyaW9kcyBmb3VuZC4nfSA9ICdObyBzZSBlbmNvbnRyYXJvbiBwZXJpb2RvcyBkZSB0aWVtcG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCB0aW1lIHBlcmlvZCd9ID0gJ0FncmVnYXIgcGVyaW9kbyBkZSB0aWVtcG8nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnVmVyIHJlZ2lzdHJvIGRlIHRpZW1wbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IG9mICd9ID0gJ1Jlc3VtZW4gZGUgJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJ0TDrWEgYW50ZXJpb3InOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV4dCBkYXknfSA9ICdEw61hIHNpZ3VpZW50ZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICdObyBzZSBlbmNvbnRyYXJvbiBkYXRvcyBkZSBlc3RlIGTDrWEuJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nRWRpdC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGluc2VydCBXb3JraW5nIFVuaXRzISd9ID0gJ8KhTm8gc2UgcHVlZGVuIGluc2VydGFyIHVuaWRhZGVzIGRlIHRyYWJham8hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICfDmmx0aW1vcyBQcm95ZWN0b3MnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnwqFObyBzZSBwdWVkZSBndWFyZGFyIGxhIGNvbmZpZ3VyYWNpw7NuLCBwb3JxdWUgdW4gZMOtYSBzw7NsbyB0aWVuZSAyNCBob3JhcyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGRlbGV0ZSBXb3JraW5nIFVuaXRzISd9ID0gJ8KhTm8gc2UgcHVlZGVuIGJvcnJhciB1bmlkYWRlcyBkZSB0cmFiYWpvISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIERhdGUgaXMgb3V0IG9mIGxpbWl0LCBidXQgeW91IGhhdmVuXCd0IGluc2VydCB0aGlzIGRheSB5ZXQsIHNvIHlvdSBnZXQgb25lKCEpIGNoYW5jZSB0byBpbnNlcnQnfSA9CiAgICAgICAgJ0VzdGEgZmVjaGEgZXN0w6EgZnVlcmEgZGVsIGzDrW1pdGUsIHBlcm8gbm8gaGEgaW5zZXJ0YWRvIHRvZGF2w61hIGVzdGUgZMOtYSwgcG9yIGxvIHF1ZSBvYnRpZW5lIHVuYSAoIMKhc29sbyB1bmEhKSBvcG9ydHVuaWRhZCBkZSBpbnNlcnRhcic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIFdvcmtpbmcgRGF5cyd9ID0gJ0TDrWFzIExhYm9yYWxlcyBJbmNvbXBsZXRvcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWNjZXNzZnVsIGluc2VydCEnfSA9ICfCoUluc2VyY2nDs24gZXhpdG9zYSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRXJyb3Igd2hpbGUgaW5zZXJ0aW5nIG11bHRpcGxlIGRhdGVzISd9ID0gJ8KhRXJyb3IgYWwgaW5zZXJ0YXIgbcO6bHRpcGxlcyBmZWNoYXMhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Y2Nlc3NmdWxseSBpbnNlcnRlZCBlbnRyaWVzIGZvciBzZXZlcmFsIGRhdGVzISd9ID0gJ8KhU2UgaGFuIGluc2VydGFkbyBzYXRpc2ZhY3RvcmlhbWVudGUgZW50cmFkYXMgcGFyYSB2YXJpYXMgZmVjaGFzISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbnRlcmVkIGRhdGUgd2FzIGludmFsaWQhIERhdGUgd2FzIGNoYW5nZWQgdG8gdG9kYXkuJ30gPSAnwqFMYSBmZWNoYSBpbnRyb2R1Y2lkYSBubyBlcmEgdsOhbGlkYSEgTGEgZmVjaGEgc2UgY2FtYmnDsyBhIGhveS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnU2luIHBlcsOtb2RvIGRlIHRpZW1wbyBjb25maWd1cmFkbywgbyBsYSBmZWNoYSBlc3BlY2lmaWNhZGEgZXN0w6EgZnVlcmEgZGUgbG9zIHBlcsOtb2RvcyBkZSB0aWVtcG8gZGVmaW5pZG9zLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY29udGFjdCB0aGUgdGltZSBhY2NvdW50aW5nIGFkbWluaXN0cmF0b3IgdG8gdXBkYXRlIHlvdXIgdGltZSBwZXJpb2RzISd9ID0KICAgICAgICAnwqFQb3IgZmF2b3IsIHDDs25nYXNlIGVuIGNvbnRhY3RvIGNvbiBlbCBhZG1pbmlzdHJhZG9yIGRlIGNvbnRhYmlsaWRhZCBkZSB0aWVtcG8gcGFyYSBhY3R1YWxpemFyIHN1cyBwZXLDrW9kb3MgZGUgdGllbXBvISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMYXN0IFNlbGVjdGVkIFByb2plY3RzJ30gPSAnw5psdGltb3MgUHJveWVjdG9zIHNlbGVjY2lvbmFkb3MnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsIFByb2plY3RzJ30gPSAnVG9kb3MgbG9zIFByb3llY3Rvcyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBQcm9qZWN0SUQnfSA9ICdSZXBvcnRpbmdQcm9qZWN0OiBuZWNlc2l0YSBQcm9qZWN0SUQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nIFByb2plY3QnfSA9ICdQcm95ZWN0byBkZSBSZXBvcnRlcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmcnfSA9ICdSZXBvcnRlcyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBUaWNrZXRJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBObyBQcm9qZWN0IGZvciBUaWNrZXQgZm91bmQuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIHVwZGF0ZSB1c2VyIHNldHRpbmdzISd9ID0gJ8KhTm8gc2UgcHVlZGUgYWN0dWFsaXphciBsYSBjb25maWd1cmFjacOzbiBkZWwgdXN1YXJpbyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCBhZGRlZCEnfSA9ICfCoVByb3llY3RvIGHDsWFkaWRvISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAnwqFQcm95ZWN0byBhY3R1YWxpemFkbyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayBhZGRlZCEnfSA9ICfCoVRhcmVhIGHDsWFkaWRhISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIHVwZGF0ZWQhJ30gPSAnwqFUYXJlYSBhY3R1YWxpemFkYSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnwqFMYSBJRCBkZSB1c3VhcmlvIG5vIGVzIHZhbGlkYSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGluc2VydCB1c2VyIGRhdGEhJ30gPSAnwqFObyBwdWVkZSBpbnNlcnRhciBkYXRvcyBkZSB1c3VhcmlvISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gYWRkIHRpbWUgcGVyaW9kISd9ID0gJ8KhTm8gc2UgcHVlZGUgYcOxYWRpciB1biBwZXLDrW9kbyBkZSB0aWVtcG8hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NldHRpbmcnfSA9ICdBanVzdGUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciB1cGRhdGVkISd9ID0gJ8KhVXN1YXJpbyBhY3R1YWxpemFkbyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICfCoVVzdWFyaW8gYcOxYWRpZG8hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05ldyBVc2VyJ30gPSAnTnVldm8gVXN1YXJpbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgU3RhdHVzJ30gPSAnRXN0YWRvIGRlbCBwZXLDrW9kbyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnVmVyOiDCoU5lY2VzaXRhICVzISc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL091dHB1dC9IVE1ML05vdGlmaWNhdGlvbi9UaW1lQWNjb3VudGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGluc2VydCB5b3VyIHdvcmtpbmcgaG91cnMhJ30gPSAnwqFQb3IgZmF2b3IgaW5zZXJ0ZSBzdXMgaG9yYXMgZGUgdHJhYmFqbyEnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICdEw61hcyBsYWJvcmFsZXMgaW5jb21wbGV0b3MnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnwqFQb3IgZmF2b3Igc2VsZWNjaW9uZSBhbCBtZW5vcyB1biBkw61hISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXNzIEVudHJ5J30gPSAnUmVnaXN0cm8gTWFzaXZvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgYSByZWFzb24gZm9yIGFic2VuY2UhJ30gPSAnwqFQb3IgZmF2b3IgZXNjb2phIHVuYSByYXrDs24gcG9yIGF1c2VuY2lhISc7CgogICAgIyBKUyBGaWxlOiBUaW1lQWNjb3VudGluZy5BZ2VudAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVsZXRlIFRpbWUgQWNjb3VudGluZyBFbnRyeSd9ID0gJ0VsaW1pbmFyIFJlZ2lzdHJvIGRlIENvbnRhYmlsaWRhZCBkZSBUaWVtcG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICdDb25maXJtYXIgaW5zZXJjacOzbic7CgogICAgIyBTeXNDb25maWcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FjdGl2YXRlIHRoZSBzeW5jaHJvbmlzYXRpb24gb2YgVGlja2V0LVRpbWVVbml0cyBpbnRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWdlbnQgaW50ZXJmYWNlIG5vdGlmaWNhdGlvbiBtb2R1bGUgdG8gc2VlIHRoZSBudW1iZXIgb2YgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMgZm9yIHRoZSB1c2VyLid9ID0KICAgICAgICAnTcOzZHVsbyBkZSBub3RpZmljYWNpw7NuIGRlIGxhIGludGVyZmF6IGRlbCBhZ2VudGUsIG5lY2VzYXJpbyBwYXJhIHZpc3VhbGl6YXIgZWwgbsO6bWVybyBkZSBkw61hcyBpbmNvbXBsZXRvcyBkZSB1biB1c3VhcmlvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICdOb21icmUgcG9yIGRlZmVjdG8gcGFyYSBhY2Npb25lcyBudWV2YXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgbmFtZSBmb3IgbmV3IHByb2plY3RzLid9ID0gJ05vbWJyZSBwb3IgZGVmZWN0byBwYXJhIHByb3llY3RvcyBudWV2b3MuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnQ29uZmlndXJhY2nDs24gcG9yIGRlZmVjdG8gcGFyYSBsYSBmZWNoYSBkZSBmaW5hbGl6YWNpw7NuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRhdGUgc3RhcnQuJ30gPSAnQ29uZmlndXJhY2nDs24gcG9yIGRlZmVjdG8gcGFyYSBsYSBmZWNoYSBkZSBpbmljaW8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGVzY3JpcHRpb24uJ30gPSAnQ29uZmlndXJhY2nDs24gcG9yIGRlZmVjdG8gcGFyYSBsYSBkZXNjcmlwY2nDs24uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgbGVhdmUgZGF5cy4nfSA9ICdDb25maWd1cmFjacOzbiBwb3IgZGVmZWN0byBwYXJhIGxhcyBmYWx0YXMgKGTDrWFzIGRlIGF1c2VuY2lhKS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBvdmVydGltZS4nfSA9ICdDb25maWd1cmFjacOzbiBwb3IgZGVmZWN0byBwYXJhIGxhcyBob3JhcyBleHRyYXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgdGhlIHN0YW5kYXJkIHdlZWtseSBob3Vycy4nfSA9ICdDb25maWd1cmFjacOzbiBwb3IgZGVmZWN0byBwYXJhIGxhcyBob3JhcyBzZW1hbmFsZXMgZXN0w6FuZGFyLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHN0YXR1cyBmb3IgbmV3IGFjdGlvbnMuJ30gPSAnRXN0YWRvIHBvciBkZWZlY3RvIHBhcmEgYWNjaW9uZXMgbnVldmFzLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHN0YXR1cyBmb3IgbmV3IHByb2plY3RzLid9ID0gJ0VzdGFkbyBwb3IgZGVmZWN0byBwYXJhIHByb3llY3RvcyBudWV2b3MuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgdXNlcnMuJ30gPSAnRXN0YWRvIHBvciBkZWZlY3RvIHBhcmEgdXN1YXJpb3MgbnVldm9zLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZpbmVzIHRoZSBwcm9qZWN0cyBmb3Igd2hpY2ggYSByZW1hcmsgaXMgcmVxdWlyZWQuIElmIHRoZSBSZWdFeHAgbWF0Y2hlcyBvbiB0aGUgcHJvamVjdCwgeW91IGhhdmUgdG8gaW5zZXJ0IGEgcmVtYXJrIHRvby4gVGhlIFJlZ0V4cCB1c2UgdGhlIHNteCBwYXJhbWV0ZXIuJ30gPQogICAgICAgICdEZWZpbmUgcGFyYSBjdcOhbGVzIHByb3llY3RvcyBlcyBvYmxpZ2F0b3JpYSBsYSBpbnNlcmNpw7NuIGRlIGNvbWVudGFyaW9zLiBTaSBsYSBleHByZXNpw7NuIHJlZ3VsYXIgY29pbmNpZGUgY29uIGVsIHByb3llY3RvLCBzZSB0aWVuZSBxdWUgZXNjcmliaXIgdW4gY29tZW50YXJpby4gTGEgZXhwcmVzacOzbiByZWd1bGFyIHVzYSBlbCBwYXLDoW1ldHJvIHNteC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGV0ZXJtaW5lcyBpZiB0aGUgc3RhdGlzdGljcyBtb2R1bGUgbWF5IGdlbmVyYXRlIHRpbWUgYWNjb3VudGluZyBpbmZvcm1hdGlvbi4nfSA9CiAgICAgICAgJ0RldGVybWluYSBzaSBlbCBtw7NkdWxvIGRlIGVzdGFkw61zdGljYXMgZGViZSBnZW5lcmFyIGluZm9ybWFjacOzbiBkZSBjb250YWJpbGlkYWQgZGUgdGllbXBvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IHRpbWUgYWNjb3VudGluZyBzZXR0aW5ncy4nfSA9ICdFZGl0YXIgbGEgY29uZmlndXJhY2nDs24gZGUgQ29udGFiaWxpZGFkIGRlIHRpZW1wby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIHJlY29yZC4nfSA9ICdFZGl0YXIgcmVnaXN0cm8gZGUgdGllbXBvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFdmVyeSB0aW1lIGEgYWdlbnQgYWRkIFRpbWVVbml0cyB0byBhIHRpY2tldCwgd2Ugc3luYyB0aGUgaW5mb3JtYXRpb24gdG8gdGhlIHRpbWVhY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGb3IgaG93IG1hbnkgZGF5cyBhZ28geW91IGNhbiBpbnNlcnQgd29ya2luZyB1bml0cy4nfSA9ICdFc3BlY2lmaWNhIGVsIG7Dum1lcm8gbcOheGltbyBkZSBkw61hcyBwYXJhIHJlZ2lzdHJhciBob3JhcyBkZSB0cmFiYWpvIGF0cmFzYWRhcyAocG9yIGVqZW1wbG86IDEwIGTDrWFzIGRlIGFudGlnw7xlZGFkKS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgb25seSB1c2VycyB0aGF0IGhhcyBhZGRlZCB3b3JraW5nIHRpbWUgdG8gdGhlIHNlbGVjdGVkIHByb2plY3QgYXJlIHNob3duLid9ID0KICAgICAgICAnU2kgc2UgaGFiaWxpdGEsIHNvbGFtZW50ZSBsb3MgdXN1YXJpb3MgcXVlIGhhbiByZWdpc3RyYWRvIHN1cyB0aWVtcG9zIGVuIGVsIHByb3llY3RvIHNlbGVjY2lvbmFkbyBzZXLDoW4gbW9zdHJhZG9zJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBkcm9wZG93biBlbGVtZW50cyBpbiB0aGUgZWRpdCBzY3JlZW4gYXJlIGNoYW5nZWQgdG8gbW9kZXJuaXplZCBhdXRvY29tcGxldGlvbiBmaWVsZHMuJ30gPQogICAgICAgICdTaSBzZSBoYWJpbGl0YSwgbG9zIGVsZW1lbnRvcyBkZXNwbGVnYWJsZXMgZW4gbGEgcGFudGFsbGEgZGUgZWRpY2nDs24gc2UgY2FtYmlhcmFuIGEgbW9yZGVybm9zIGNhbXBvcyBkZSBhdXRvY29tcGxldGFkby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGNhbiBiZSB1c2VkIGluc3RlYWQgdHdvIGxpc3Qgb2YgcHJvamVjdHMgKGxhc3QgYW5kIGFsbCBvbmVzKS4gSXQgY291bGQgYmUgdXNlZCBvbmx5IGlmIFRpbWVBY2NvdW50aW5nOjpFbmFibGVBdXRvQ29tcGxldGlvbiBpcyBlbmFibGVkLid9ID0KICAgICAgICAnU2kgZXN0w6EgaGFiaWxpdGFkbywgZWwgZmlsdHJvIHBhcmEgbG9zIHByb3llY3RvcyBhbnRlcmlvcmVzIHB1ZWRlIHVzYXJzZSBlbiBsdWdhciBkZSBkb3MgbGlzdGFzIGRlIHByb3llY3RvcyAow7psdGltbyB5IHRvZG9zKS4gU2UgcG9kcsOtYSB1c2FyIHNvbG8gc2kgIGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGVzdMOhIGhhYmlsaXRhZG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBmaWx0ZXIgZm9yIHRoZSBwcmV2aW91cyBwcm9qZWN0cyBpcyBhY3RpdmUgYnkgZGVmYXVsdCBpZiB0aGVyZSBhcmUgdGhlIHByZXZpb3VzIHByb2plY3RzLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgRW5hYmxlQXV0b0NvbXBsZXRpb24gYW5kIFRpbWVBY2NvdW50aW5nOjpVc2VGaWx0ZXIgYXJlIGVuYWJsZWQuJ30gPQogICAgICAgICdTaSBlc3TDoSBoYWJpbGl0YWRvLCBlbCBmaWx0cm8gcGFyYSBsb3MgcHJveWVjdG9zIHByZXZpb3MgZXN0w6EgYWN0aXZvIHBvciBkZWZlY3RvIHNpIGV4aXN0ZW4gcHJveWVjdG9zIHByZXZpb3MuIFNlIHBvZHLDrWEgdXNhciBzb2xvIHNpIEVuYWJsZUF1dG9Db21wbGV0aW9uIHkgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBlc3TDoSBoYWJpbGl0YWRvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnU2kgc2UgaGFiaWxpdGEsIHNlIGxlIHBlcm1pdGlyw6EgYWwgdXN1YXJpbyByZWdpc3RyYXIgInZhY2FjaW9uZXMiLCAiYXVzZW5jaWEgcG9yIGVuZmVybWVkYWQiLCAiYXVzZW5jaWEgcG9yIGhhYmVyIHRyYWJhamFkbyBob3JhcyBleHRyYSIgZW4gbcO6bHRpcGxlcyBmZWNoYXMgYWwgbWlzbW8gdGllbXBvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXhpbXVtIG51bWJlciBvZiB3b3JraW5nIGRheXMgYWZ0ZXIgd2hpY2ggdGhlIHdvcmtpbmcgdW5pdHMgaGF2ZSB0byBiZSBpbnNlcnRlZC4nfSA9CiAgICAgICAgJ07Dum1lcm8gbcOheGltbyBkZSBkw61hcyBsYWJvcmFsZXMgZGVzcHXDqXMgZGUgbG9zIGN1YWxlcyBlcyBvYmxpZ2F0b3JpbyByZXBvcnRhciBsYXMgaG9yYXMgdHJhYmFqYWRhcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWF4aW11bSBudW1iZXIgb2Ygd29ya2luZyBkYXlzIHdpdGhvdXQgd29ya2luZyB1bml0cyBlbnRyeSBhZnRlciB3aGljaCBhIHdhcm5pbmcgd2lsbCBiZSBzaG93bi4nfSA9CiAgICAgICAgJ07Dum1lcm8gbcOheGltbyBkZSBkw61hcyBsYWJvcmFsZXMgc2luIHJlZ2lzdHJvIGRlIGhvcmFzIHRyYWJhamFkYXMgZGVzcHXDqXMgZGUgbG9zIGN1YWxlcyBzZSBtb3N0cmFyw6EgdW5hIGFkdmVydGVuY2lhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ2aWV3Lid9ID0gJ1Zpc3RhIGdlbmVyYWwuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnUmVwb3J0ZSBkZWwgdGllbXBvIGRlbCBwcm95ZWN0by4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIGFjdGlvbiBsaXN0IGFjY29yZGluZyB0byBzZWxlY3RlZCBwcm9qZWN0LiBLZXkgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9uIGZvciBwcm9qZWN0KHMpLCBjb250ZW50IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGFjdGlvbihzKS4nfSA9CiAgICAgICAgJ0V4cHJlc2lvbmVzIHJlZ3VsYXJlcyBwYXJhIHJlc3RyaW5naXIgbGEgbGlzdGEgZGUgYWNjaW9uZXMsIGRlIGFjdWVyZG8gYWwgcHJveWVjdG8gc2VsZWNjaW9uYWRvLiBLZXkgY29udGllbmUgbGEgZXhwcmVzacOzbiByZWd1bGFyIHBhcmEgbG9zIHByb3llY3RvcyB5IENvbnRlbnQsIGxhcyBleHByZXNpb25lcyByZWd1bGFyZXMgcGFyYSBsYXMgYWNjaW9uZXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBwcm9qZWN0IGxpc3QgYWNjb3JkaW5nIHRvIHVzZXIgZ3JvdXBzLiBLZXkgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9uIGZvciBwcm9qZWN0KHMpLCBjb250ZW50IGNvbnRhaW5zIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIGdyb3Vwcy4nfSA9CiAgICAgICAgJ0V4cHJlc2lvbmVzIHJlZ3VsYXJlcyBwYXJhIHJlc3RyaW5naXIgbGEgbGlzdGEgZGUgcHJveWVjdG9zLCBkZSBhY3VlcmRvIGEgbG9zIGdydXBvcyBkZSB1c3Vhcmlvcy4gS2V5IGNvbnRpZW5lIGxhIGV4cHJlc2nDs24gcmVndWxhciBwYXJhIGxvcyBwcm95ZWN0b3MgeSBDb250ZW50LCB1bmEgbGlzdGEgZGUgZ3J1cG9zLCBzZXBhcmFkb3MgcG9yIGNvbWFzLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaG93IGFjY291bnRlZCB0aW1lcyBmb3IgdGhpcyB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3BlY2lmaWVzIGlmIHdvcmtpbmcgaG91cnMgY2FuIGJlIGluc2VydGVkIHdpdGhvdXQgc3RhcnQgYW5kIGVuZCB0aW1lcy4nfSA9CiAgICAgICAgJ0VzcGVjaWZpY2Egc2kgZXMgcG9zaWJsZSBpbnNlcnRhciBsYXMgaG9yYXMgdHJhYmFqYWRhcyBzaW4gZGVmaW5pciBsb3MgdGllbXBvcyBkZSBpbmljaW8geSBmaW5hbGl6YWNpw7NuIGRlIGxhcyB0YXJlYXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICdFc3RlIG3Ds2R1bG8gaGFjZSBvYmxpZ2F0b3JpYSBsYSBpbnNlcmNpw7NuIGRlIGhvcmFzIHRyYWJhamFkYXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgbm90aWZpY2F0aW9uIG1vZHVsZSBnaXZlcyBhIHdhcm5pbmcgaWYgdGhlcmUgYXJlIHRvbyBtYW55IGluY29tcGxldGUgd29ya2luZyBkYXlzLid9ID0KICAgICAgICAnTcOzZHVsbyBkZSBub3RpZmljYWNpw7NuIHF1ZSBtdWVzdHJhIHVuYSBhZHZlcnRlbmNpYSBzaSBoYXkgZGVtYXNpYWRvcyBkw61hcyBzaW4gcmVnaXN0cm8gZGUgaG9yYXMgdHJhYmFqYWRhcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJ0NvbnRhYmlsaWRhZCBkZSBUaWVtcG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBSZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIGVkaXQuJ30gPSAnRWRpdGFyIGNvbnRhYmlsaWRhZCBkZSB0aWVtcG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJ1Jlc3VtZW4gZGUgY29udGFiaWxpZGFkIGRlIHRpZW1wbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJ1JlcG9ydGUgZGUgY29udGFiaWxpZGFkIGRlIHRpZW1wbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnQWp1c3RlcyBkZSBjb250YWJpbGlkYWQgZGUgdGllbXBvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICdWZXIgY29udGFiaWxpZGFkIGRlIHRpZW1wbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcuJ30gPSAnQ29udGFiaWxpZGFkIGRlIHRpZW1wby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG8gdXNlIGlmIHNvbWUgYWN0aW9ucyByZWR1Y2VkIHRoZSB3b3JraW5nIGhvdXJzIChmb3IgZXhhbXBsZSwgaWYgb25seSBoYWxmIG9mIHRoZSB0cmF2ZWxpbmcgdGltZSBpcyBwYWlkIEtleSA9PiB0cmF2ZWxpbmc7IENvbnRlbnQgPT4gNTApLid9ID0KICAgICAgICAnU2UgdXNhIHNpIGFsZ3VuYXMgYWNjaW9uZXMgcmVkdWNlbiBlbCBuw7ptZXJvIGRlIGhvcmFzIHRyYWJhamFkYXMgKHBvciBlamVtcGxvOiBzaSBzw7NsbyBzZSBwYWdhIGxhIG1pdGFkIGRlbCB0aWVtcG8gZGUgdmlhamUgcHVlZGUgZXNwZWNpZmljYXJzZSBLZXkgPT4gVmlhamU7IENvbnRlbnQgPT4gNTApLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2UgU2VydmljZSBhcyBBY3Rpb24uIFBsZWFzZSBhZGQgYXMga2V5IHRoZSB0aW1lYWNvdW50aW5nIGFjdGlvbiBhbmQgdGhlIHNlcnZpY2UgYXMgdmFsdWUuIFJlZ0V4IGFyZSBhbGxvd2VkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIG5lZWQgdG8gc2V0IGEgZGVmYXVsdCBhY3Rpb24gaWQgd2hlbiB3ZSBzeW5jIFRpbWVVbml0cyB0byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIG5lZWQgdG8gc2V0IGEgZGVmYXVsdCBwcm9qZWN0IGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBzYXZlIHRoZSBBcnRpY2xlIFRpbWVVbml0IHRvIGEgRHluYW1pY0ZpZWxkIGZyb20gdHlwZSAiQXJ0aWNsZSIuIFBsZWFzZSBhZGQgaGVyZSB0aGUgbmFtZSBvZiB0aGUgZmllbGQgaWYgdGhlIGluaXRpbmFsIG5hbWUgaXMgY2hhbmdlZC4nfSA9CiAgICAgICAgJyc7CgoKICAgIHB1c2ggQHsgJFNlbGYtPntKYXZhU2NyaXB0U3RyaW5nc30gLy8gW10gfSwgKAogICAgJ0NhbmNlbCcsCiAgICAnQ29uZmlybSBpbnNlcnQnLAogICAgJ0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknLAogICAgJ01hc3MgRW50cnknLAogICAgJ05vJywKICAgICdQbGVhc2UgY2hvb3NlIGEgcmVhc29uIGZvciBhYnNlbmNlIScsCiAgICAnUGxlYXNlIGNob29zZSBhdCBsZWFzdCBvbmUgZGF5IScsCiAgICAnU3VibWl0JywKICAgICdZZXMnLAogICAgKTsKCn0KCjE7Cg==</File>
        <File Location="Kernel/Language/et_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmV0X1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIEVuZCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGwgUHJvamVjdHMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBUaWNrZXRJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBObyBQcm9qZWN0IGZvciBUaWNrZXQgZm91bmQuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIHVwZGF0ZSB1c2VyIHNldHRpbmdzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gYWRkIHRpbWUgcGVyaW9kISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICcnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/fa_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmZhX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIEVuZCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGwgUHJvamVjdHMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBUaWNrZXRJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBObyBQcm9qZWN0IGZvciBUaWNrZXQgZm91bmQuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIHVwZGF0ZSB1c2VyIHNldHRpbmdzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gYWRkIHRpbWUgcGVyaW9kISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICcnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/fi_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmZpX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIEVuZCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGwgUHJvamVjdHMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBUaWNrZXRJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBObyBQcm9qZWN0IGZvciBUaWNrZXQgZm91bmQuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIHVwZGF0ZSB1c2VyIHNldHRpbmdzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gYWRkIHRpbWUgcGVyaW9kISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICcnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/fr_CA_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmZyX0NBX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIEVuZCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGwgUHJvamVjdHMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBUaWNrZXRJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBObyBQcm9qZWN0IGZvciBUaWNrZXQgZm91bmQuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIHVwZGF0ZSB1c2VyIHNldHRpbmdzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gYWRkIHRpbWUgcGVyaW9kISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICcnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/fr_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmZyX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJ1TDomNoZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICdWb3VsZXotdm91cyB2cmFpbWVudCBzdXBwcmltZXIgbGEgZ2VzdGlvbiBkZXMgdGVtcHMgcG91ciBjZSBqb3VyID8nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnQWxsZXIgYXV4IHBhcmFtw6h0cmVzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICdTw6lsZWN0aW9ubmVyIHRvdXMgbGVzIGpvdXJzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgZW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSB0aGUgcmVhc29uIGZvciB5b3VyIGFic2VuY2UgZm9yIHRoZSBzZWxlY3RlZCBkYXlzJ30gPQogICAgICAgICdWZXVpbGxleiBjaG9pc2lyIGxhIHJhaXNvbiBkZSB2b3RyZSBhYnNlbmNlIHBvdXIgbGVzIGpvdXJzIHPDqWxlY3Rpb25uw6lzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIHZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIHNpY2sgbGVhdmUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gb3ZlcnRpbWUgbGVhdmUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVxdWlyZWQgZmllbGRzIGFyZSBtYXJrZWQgd2l0aCBhICIqIi4nfSA9ICdMZXMgY2hhbXBzIHJlcXVpcyBzb250IG1hcnF1w6lzIGF2ZWMgdW5lIMOpdG9pbGUgIioiLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgaGF2ZSB0byBmaWxsIGluIHN0YXJ0IGFuZCBlbmQgdGltZSBvciBhIHRpbWUgcGVyaW9kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0J30gPSAnUHJvamV0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09yaWdpbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgYWRkIGEgcmVtYXJrIHdpdGggbW9yZSB0aGFuIDggY2hhcmFjdGVycyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXJzcHJ1bmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmVnYXRpdmUgdGltZXMgYXJlIG5vdCBhbGxvd2VkLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIFN0YXJ0IHRpbWUgbWF0Y2hlcyBhbm90aGVyIGludGVydmFsLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgZm9ybWF0ISBQbGVhc2UgZW50ZXIgYSB0aW1lIHdpdGggdGhlIGZvcm1hdCBISDpNTS4nfSA9ICdGb3JtYXQgaW52YWxpZGUgISBWZXVpbGxleiBlbnRyZXIgdW4gaG9yYWlyZSBhdSBmb3JtYXQgSEg6TU0uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57JzI0OjAwIGlzIG9ubHkgcGVybWl0dGVkIGFzIGVuZCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHRpbWUhIEEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzLid9ID0gJ1RlbXBzIGludmFsaWRlICEgVW4gam91ciBuXCdhIHF1ZSAyNCBoZXVyZXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VuZCB0aW1lIG11c3QgYmUgYWZ0ZXIgc3RhcnQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBFbmQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIEEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBIHZhbGlkIHBlcmlvZCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiB6ZXJvLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgTmVnYXRpdmUgcGVyaW9kcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Ym1pdCBjaGFuZ2VzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBvbmUgcm93J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBjYW4gb25seSBzZWxlY3Qgb25lIGNoZWNrYm94IGVsZW1lbnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gc2ljayBsZWF2ZT8nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiB2YWNhdGlvbj8nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBvdmVydGltZSBsZWF2ZT8nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIG1vcmUgdGhhbiAxNiBob3Vycz8nfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdPdmVydmlldwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSByZXBvcnRpbmcgbW9udGhseSBvdmVydmlldyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAoSG91cnMpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0aGlzIG1vbnRoKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFpbmluZyBvdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiAoRGF5cyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIHZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgTGVhdmUgKERheXMpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUgdGFrZW4gKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUgdGFrZW4gKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcmV2aW91cyBtb250aCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IG1vbnRoJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlZWtkYXknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV29ya2luZyBIb3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUb3RhbCB3b3JrZWQgaG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlclwncyBwcm9qZWN0IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChtb250aGx5KSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyAoTGlmZXRpbWUpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dyYW5kIHRvdGFsJ30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNb250aCBOYXZpZ2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIGRhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciByZXBvcnRzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRobHkgdG90YWwnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGlmZXRpbWUgdG90YWwnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgbGVhdmUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiByZW1haW5pbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCByZXBvcnRzJ30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nUHJvamVjdAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCByZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gcmVwb3J0aW5nIG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0N1cnJlbnRseSBvbmx5IGFjdGl2ZSB1c2VycyBpbiB0aGlzIHByb2plY3QgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0N1cnJlbnRseSBhbGwgdGltZSBhY2NvdW50aW5nIHVzZXJzIGFyZSBzaG93bi4gVG8gY2hhbmdlIHRoaXMgYmVoYXZpb3IsIHBsZWFzZSB1cGRhdGUgc2V0dGluZzonfSA9CiAgICAgICAgJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byB0aWNrZXQnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdTZXR0aW5nCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgQWNjb3VudGluZyBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBwcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzIG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgUHJvamVjdCBTZXR0aW5ncyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgcHJvamVjdCB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCB0YXNrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBhIHVzZXIgdG8gdGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGaWx0ZXIgZm9yIHByb2plY3RzLCB0YXNrcyBvciB1c2Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHBlcmlvZHMgY2FuIG5vdCBiZSBkZWxldGVkLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBUYXNrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGFzayBTZXR0aW5ncyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgdGFzayB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBzZWUgb3ZlcnRpbWVzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIGNyZWF0ZSBwcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyBwcm9qZWN0IGNyZWF0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBza2lwIHRpbWUgYWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyB0aW1lIGFjY291bnRpbmcgc2tpcHBpbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgdGhpcyBvcHRpb24gaXMgc2VsZWN0ZWQsIHRpbWUgYWNjb3VudGluZyBpcyBlZmZlY3RpdmVseSBvcHRpb25hbCBmb3IgdGhlIHVzZXIuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlcmUgd2lsbCBiZSBubyB3YXJuaW5ncyBhYm91dCBtaXNzaW5nIGVudHJpZXMgYW5kIG5vIGVudHJ5IGVuZm9yY2VtZW50Lid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgU3BhbnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEJlZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBFbmQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF5cyBvZiBWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyBwZXIgV2Vlayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBdXRob3JpemVkIE92ZXJ0aW1lJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N0YXJ0IERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGluc2VydCBhIHZhbGlkIGRhdGUuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VuZCBEYXRlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBlbmQgbXVzdCBiZSBhZnRlciBwZXJpb2QgYmVnaW4uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xlYXZlIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2x5IEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIHRpbWUgcGVyaW9kcyBmb3VuZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRpbWUgcGVyaW9kJ30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nVmlldwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldyBUaW1lIFJlY29yZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IG9mICd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcmV2aW91cyBkYXknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV4dCBkYXknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gZGF0YSBmb3VuZCBmb3IgdGhpcyBkYXkuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nRWRpdC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGluc2VydCBXb3JraW5nIFVuaXRzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMYXN0IFByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBzYXZlIHNldHRpbmdzLCBiZWNhdXNlIGEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgZGVsZXRlIFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgRGF0ZSBpcyBvdXQgb2YgbGltaXQsIGJ1dCB5b3UgaGF2ZW5cJ3QgaW5zZXJ0IHRoaXMgZGF5IHlldCwgc28geW91IGdldCBvbmUoISkgY2hhbmNlIHRvIGluc2VydCd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0luY29tcGxldGUgV29ya2luZyBEYXlzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Y2Nlc3NmdWwgaW5zZXJ0ISd9ID0gJ0luc2VydGlvbiByw6l1c3NpZSAhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICdFcnJldXIgZW4gaW5zw6lyYW50IGRlcyBkYXRlcyBtdWx0aXBsZXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnQWpvdXQgZGVzIGRhdGVzIG11bHRpcGxlcyByw6l1c3NpISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbnRlcmVkIGRhdGUgd2FzIGludmFsaWQhIERhdGUgd2FzIGNoYW5nZWQgdG8gdG9kYXkuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIHRpbWUgcGVyaW9kIGNvbmZpZ3VyZWQsIG9yIHRoZSBzcGVjaWZpZWQgZGF0ZSBpcyBvdXRzaWRlIG9mIHRoZSBkZWZpbmVkIHRpbWUgcGVyaW9kcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY29udGFjdCB0aGUgdGltZSBhY2NvdW50aW5nIGFkbWluaXN0cmF0b3IgdG8gdXBkYXRlIHlvdXIgdGltZSBwZXJpb2RzISd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgU2VsZWN0ZWQgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsIFByb2plY3RzJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBOZWVkIFByb2plY3RJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmcgUHJvamVjdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmcnfSA9ICdSYXBwb3J0JzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBOZWVkIFRpY2tldElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5vIFByb2plY3QgZm9yIFRpY2tldCBmb3VuZC4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdTZXR0aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gdXBkYXRlIHVzZXIgc2V0dGluZ3MhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayB1cGRhdGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgVXNlcklEIGlzIG5vdCB2YWxpZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGluc2VydCB1c2VyIGRhdGEhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byBhZGQgdGltZSBwZXJpb2QhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NldHRpbmcnfSA9ICdQYXJhbcOodHJlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICdNZXJjaSBkXCdpbmRpcXVlciB2b3MgaG9yYWlyZXMgZGUgdHJhdmFpbCAhJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvVG9vbEJhci9JbmNvbXBsZXRlV29ya2luZ0RheXMucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0luY29tcGxldGUgd29ya2luZyBkYXlzJ30gPSAnJzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50LkVkaXRUaW1lUmVjb3JkcwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhdCBsZWFzdCBvbmUgZGF5ISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXNzIEVudHJ5J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgYSByZWFzb24gZm9yIGFic2VuY2UhJ30gPSAnJzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NvbmZpcm0gaW5zZXJ0J30gPSAnJzsKCiAgICAjIFN5c0NvbmZpZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWN0aXZhdGUgdGhlIHN5bmNocm9uaXNhdGlvbiBvZiBUaWNrZXQtVGltZVVuaXRzIGludG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZ2VudCBpbnRlcmZhY2Ugbm90aWZpY2F0aW9uIG1vZHVsZSB0byBzZWUgdGhlIG51bWJlciBvZiBpbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyBmb3IgdGhlIHVzZXIuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxzbyBzeW5jaHJvbmlzZSBjdXN0b21lcnMgYXMgYSBuZXcgcHJvamVjdCBpZiB0aGV5IGhhdmUgbm90IHlldCBiZWVuIGNyZWF0ZWQgaW4gdGhlIGN1c3RvbWVyIGRhdGFiYXNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FzIHNvb24gYXMgdGhlIHN5bmNocm9uaXNhdGlvbiBvZiB0aWNrZXQgVGltZVVuaXRzIGlzIGFjdGl2YXRlZCwgaXQgaXMgcG9zc2libGUgdG8gc2V0IHRoZSBlbnRyaWVzIFJlYWRPbmx5Lid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NyZWF0ZSBhIG5ldyB0aW1lIGFjY291bnRpbmcgZW50cnkgcmVsYXRlZCB0byB0aGUgdGlja2V0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgbmFtZSBmb3IgbmV3IGFjdGlvbnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgbmFtZSBmb3IgbmV3IHByb2plY3RzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRhdGUgZW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRhdGUgc3RhcnQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGVzY3JpcHRpb24uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgbGVhdmUgZGF5cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBvdmVydGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciB0aGUgc3RhbmRhcmQgd2Vla2x5IGhvdXJzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHN0YXR1cyBmb3IgbmV3IGFjdGlvbnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgdXNlcnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmluZXMgdGhlIHByb2plY3RzIGZvciB3aGljaCBhIHJlbWFyayBpcyByZXF1aXJlZC4gSWYgdGhlIFJlZ0V4cCBtYXRjaGVzIG9uIHRoZSBwcm9qZWN0LCB5b3UgaGF2ZSB0byBpbnNlcnQgYSByZW1hcmsgdG9vLiBUaGUgUmVnRXhwIHVzZSB0aGUgc214IHBhcmFtZXRlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZXRlcm1pbmVzIGlmIHRoZSBzdGF0aXN0aWNzIG1vZHVsZSBtYXkgZ2VuZXJhdGUgdGltZSBhY2NvdW50aW5nIGluZm9ybWF0aW9uLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSBhY2NvdW50aW5nIHNldHRpbmdzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IHRpbWUgcmVjb3JkLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFdmVyeSB0aW1lIGEgYWdlbnQgYWRkIFRpbWVVbml0cyB0byBhIHRpY2tldCwgd2Ugc3luYyB0aGUgaW5mb3JtYXRpb24gdG8gdGhlIHRpbWVhY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGb3IgaG93IG1hbnkgZGF5cyBhZ28geW91IGNhbiBpbnNlcnQgd29ya2luZyB1bml0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgb25seSB1c2VycyB0aGF0IGhhcyBhZGRlZCB3b3JraW5nIHRpbWUgdG8gdGhlIHNlbGVjdGVkIHByb2plY3QgYXJlIHNob3duLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBkcm9wZG93biBlbGVtZW50cyBpbiB0aGUgZWRpdCBzY3JlZW4gYXJlIGNoYW5nZWQgdG8gbW9kZXJuaXplZCBhdXRvY29tcGxldGlvbiBmaWVsZHMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGNhbiBiZSB1c2VkIGluc3RlYWQgdHdvIGxpc3Qgb2YgcHJvamVjdHMgKGxhc3QgYW5kIGFsbCBvbmVzKS4gSXQgY291bGQgYmUgdXNlZCBvbmx5IGlmIFRpbWVBY2NvdW50aW5nOjpFbmFibGVBdXRvQ29tcGxldGlvbiBpcyBlbmFibGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBmaWx0ZXIgZm9yIHRoZSBwcmV2aW91cyBwcm9qZWN0cyBpcyBhY3RpdmUgYnkgZGVmYXVsdCBpZiB0aGVyZSBhcmUgdGhlIHByZXZpb3VzIHByb2plY3RzLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgRW5hYmxlQXV0b0NvbXBsZXRpb24gYW5kIFRpbWVBY2NvdW50aW5nOjpVc2VGaWx0ZXIgYXJlIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIHVzZXIgaXMgYWxsb3dlZCB0byBlbnRlciAib24gdmFjYXRpb24gbGVhdmUiLCAib24gc2ljayBsZWF2ZSIgYW5kICJvbiBvdmVydGltZSBsZWF2ZSIgdG8gbXVsdGlwbGUgZGF0ZXMgYXQgb25jZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXhpbXVtIG51bWJlciBvZiB3b3JraW5nIGRheXMgYWZ0ZXIgd2hpY2ggdGhlIHdvcmtpbmcgdW5pdHMgaGF2ZSB0byBiZSBpbnNlcnRlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXhpbXVtIG51bWJlciBvZiB3b3JraW5nIGRheXMgd2l0aG91dCB3b3JraW5nIHVuaXRzIGVudHJ5IGFmdGVyIHdoaWNoIGEgd2FybmluZyB3aWxsIGJlIHNob3duLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ2aWV3Lid9ID0gJ1Z1ZSBkXCdlbnNlbWJsZS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCB0aW1lIHJlcG9ydGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIGFjdGlvbiBsaXN0IGFjY29yZGluZyB0byBzZWxlY3RlZCBwcm9qZWN0LiBLZXkgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9uIGZvciBwcm9qZWN0KHMpLCBjb250ZW50IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGFjdGlvbihzKS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZWd1bGFyIGV4cHJlc3Npb25zIGZvciBjb25zdHJhaW5pbmcgcHJvamVjdCBsaXN0IGFjY29yZGluZyB0byB1c2VyIGdyb3Vwcy4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiBncm91cHMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBhY2NvdW50ZWQgdGltZXMgZm9yIHRoaXMgdGlja2V0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NwZWNpZmllcyBpZiB3b3JraW5nIGhvdXJzIGNhbiBiZSBpbnNlcnRlZCB3aXRob3V0IHN0YXJ0IGFuZCBlbmQgdGltZXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3luY2hyb25pc2UgY3VzdG9tZXJzIGFzIGEgbmV3IHByb2plY3QgaWYgdGhleSBleGlzdHMgaW4gdGhlIGN1c3RvbWVyIGRhdGFiYXNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgbW9kdWxlIGZvcmNlcyBpbnNlcnRzIGluIFRpbWVBY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG5vdGlmaWNhdGlvbiBtb2R1bGUgZ2l2ZXMgYSB3YXJuaW5nIGlmIHRoZXJlIGFyZSB0b28gbWFueSBpbmNvbXBsZXRlIHdvcmtpbmcgZGF5cy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgdGltZSByZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBBY2NvdW50aW5nJ30gPSAnR2VzdGlvbiBkZXMgdGVtcHMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBSZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIGVkaXQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBvdmVydmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHJlcG9ydGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHNldHRpbmdzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdGlja2V0IHJlcG9ydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG8gdXNlIGlmIHNvbWUgYWN0aW9ucyByZWR1Y2VkIHRoZSB3b3JraW5nIGhvdXJzIChmb3IgZXhhbXBsZSwgaWYgb25seSBoYWxmIG9mIHRoZSB0cmF2ZWxpbmcgdGltZSBpcyBwYWlkIEtleSA9PiB0cmF2ZWxpbmc7IENvbnRlbnQgPT4gNTApLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZSBTZXJ2aWNlIGFzIEFjdGlvbi4gUGxlYXNlIGFkZCBhcyBrZXkgdGhlIHRpbWVhY291bnRpbmcgYWN0aW9uIGFuZCB0aGUgc2VydmljZSBhcyB2YWx1ZS4gUmVnRXggYXJlIGFsbG93ZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2UgbmVlZCB0byBzZXQgYSBkZWZhdWx0IGFjdGlvbiBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2UgbmVlZCB0byBzZXQgYSBkZWZhdWx0IHByb2plY3QgaWQgd2hlbiB3ZSBzeW5jIFRpbWVVbml0cyB0byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIHNhdmUgdGhlIEFydGljbGUgVGltZVVuaXQgdG8gYSBEeW5hbWljRmllbGQgZnJvbSB0eXBlICJBcnRpY2xlIi4gUGxlYXNlIGFkZCBoZXJlIHRoZSBuYW1lIG9mIHRoZSBmaWVsZCBpZiB0aGUgaW5pdGluYWwgbmFtZSBpcyBjaGFuZ2VkLid9ID0KICAgICAgICAnJzsKCgogICAgcHVzaCBAeyAkU2VsZi0+e0phdmFTY3JpcHRTdHJpbmdzfSAvLyBbXSB9LCAoCiAgICAnQ2FuY2VsJywKICAgICdDb25maXJtIGluc2VydCcsCiAgICAnRGVsZXRlIFRpbWUgQWNjb3VudGluZyBFbnRyeScsCiAgICAnTWFzcyBFbnRyeScsCiAgICAnTm8nLAogICAgJ1BsZWFzZSBjaG9vc2UgYSByZWFzb24gZm9yIGFic2VuY2UhJywKICAgICdQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJywKICAgICdTdWJtaXQnLAogICAgJ1llcycsCiAgICApOwoKfQoKMTsK</File>
        <File Location="Kernel/Language/gl_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmdsX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJ1RhcmVmYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICdPYnNlcnZhY2nDs24nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICdRdWVyZSByZWFsbWVudGUgYm9ycmFyIG8gVGVtcG8gQ29udGFiaWxpemFkbyBkZXN0ZSBkw61hPyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ0VkaXQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBSZWNvcmQnfSA9ICdFZGl0ZSBSZXhpc3RybyBUZW1wbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBzZXR0aW5ncyd9ID0gJ0lyIMOhIGNvbmZpZ3VyYWNpw7NuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJ05hdmVnYWNpw7NuIGVudHJlIGRhdGFzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RheXMgd2l0aG91dCBlbnRyaWVzJ30gPSAnRMOtYXMgc2VuIGVudHJhZGFzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NlbGVjdCBhbGwgZGF5cyd9ID0gJ1NlbGVjY2lvbmFyIHRvZG9zIG9zIGTDrWFzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgZW50cnknfSA9ICdJbnRyb2R1Y2nDs24gZW4gbWFzYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJ0VzY29sbGEgbyBtb3Rpdm8gZGEgc8O6YSBhdXNlbmNpYSBub3MgZMOtYXMgc2VsZWNjaW9uYWRvcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJ1ZhY2FjacOzbnMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gc2ljayBsZWF2ZSd9ID0gJ0xpY2VuemEgcG9yIGVuZmVybWlkYWRlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnRW4gcGVybWlzbyBkZSBob3JhcyBleHRyYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVxdWlyZWQgZmllbGRzIGFyZSBtYXJrZWQgd2l0aCBhICIqIi4nfSA9ICdPcyBjYW1wb3Mgb2JyaWdhdG9yaW9zIGVzdMOhbiBtYXJjYWRvcyBjdW4gwqsqwrsuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnSGFpIHF1ZSBkYXIgdW5oYSBob3JhIGRlIGluaWNpbyBlIGRlIHJlbWF0ZSBvdSB1biBwZXLDrW9kbyBkZSB0ZW1wby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCd9ID0gJ1Byb3hlY3RvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09yaWdpbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgYWRkIGEgcmVtYXJrIHdpdGggbW9yZSB0aGFuIDggY2hhcmFjdGVycyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXJzcHJ1bmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmVnYXRpdmUgdGltZXMgYXJlIG5vdCBhbGxvd2VkLid9ID0gJ05vbiBzZSBwZXJtaXRlbiBob3JhcyBuZWdhdGl2YXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICdOb24gc2UgcGVybWl0ZW4gaG9yYXMgcmVwZXRpZGFzLiBBIGhvcmEgZGUgaW5pY2lvIGNvaW5jaWRlIGNvbiBvdXRybyBpbnRlcnZhbG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgZm9ybWF0ISBQbGVhc2UgZW50ZXIgYSB0aW1lIHdpdGggdGhlIGZvcm1hdCBISDpNTS4nfSA9ICdPIGZvcm1hdG8gw6kgaW5jb3JyZWN0byEgSW50cm9kdXphIHVuaGEgaG9yYSBubyBmb3JtYXRvIEhIOk1NLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcyNDowMCBzw7MgZXN0w6EgcGVybWl0aWRvIGNvbW8gaG9yYSBkZSBmaW5hbGl6YWNpw7NuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHRpbWUhIEEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzLid9ID0gJ0EgaG9yYSDDqSBpbmNvcnJlY3RhISBVbiBkw61hIHPDsyB0ZW4gMjQgaG9yYXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VuZCB0aW1lIG11c3QgYmUgYWZ0ZXIgc3RhcnQgdGltZS4nfSA9ICdBIGhvcmEgZGUgZmluYWxpemFjacOzbiBoYSBkZSBzZXIgcG9zdGVyaW9yIMOhIGRlIGluaWNpby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBFbmQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICdOb24gc2UgcGVybWl0ZW4gaG9yYXMgcmVwZXRpZGFzLiBBIGhvcmEgZGUgZmluYWxpemFjacOzbiBjb2luY2lkZSBjb24gb3V0cm8gaW50ZXJ2YWxvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnTyBwZXLDrW9kbyDDqSBpbmNvcnJlY3RvISBVbiBkw61hIHPDsyB0ZW4gMjQgaG9yYXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnVW4gcGVyw61vZG8gY29ycmVjdG8gaGEgZGUgc2VyIG1haW9yIGRlIGNlcm8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICdPIHBlcsOtb2RvIMOpIGluY29ycmVjdG8hIE5vbiBzZSBwZXJtaXRlbiBwZXLDrW9kb3MgbmVnYXRpdm9zLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWJtaXQgY2hhbmdlcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgb25lIHJvdyd9ID0gJ0VuZ2FkaXIgdW5oYSBmaWxhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBjYW4gb25seSBzZWxlY3Qgb25lIGNoZWNrYm94IGVsZW1lbnQhJ30gPSAnU8OzIMOpIHBvc8OtYmVsIHNlbGVjY2lvbmFyIHVuIGVsZW1lbnRvISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHNpY2sgbGVhdmU/J30gPSAnQ29uZmlybWEgcXVlIHRyYWJhbGxvdSBtZW50cmVzIHRpw7FhIGxpY2VuemEgcG9yIGVuZmVybWlkYWRlPyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJ0NvbmZpcm1hIHF1ZSB0cmFiYWxsb3UgbWVudHJlcyBlc3RhYmEgZGUgdmFjYWNpw7Nucz8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBvdmVydGltZSBsZWF2ZT8nfSA9CiAgICAgICAgJ0NvbmZpcm1hIHF1ZSB0cmFiYWxsb3UgbWVudHJlcyB0acOxYSBwZXJtaXNvIHBvciBob3JhcyBleHRyYXM/JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJ0NvbmZpcm1hIHF1ZSB0cmFiYWxsb3UgbcOhaXMgZGUgZGV6YXNlaXMgaG9yYXM/JzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nT3ZlcnZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nIG1vbnRobHkgb3ZlcnZpZXcnfSA9ICdWaXN0YSB4ZXJhbCBtZW5zdWFsIGRlIHJlcG9ydGUgZGUgdGVtcG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKEhvdXJzKSd9ID0gJ0hvcmFzIGV4dHJhIChob3JhcyknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnSG9yYXMgZXh0cmEgKGVzdGUgbWVzKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAodG90YWwpJ30gPSAnSG9yYXMgZXh0cmEgKHRvdGFsKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgb3ZlcnRpbWUgbGVhdmUnfSA9ICdQZXJtaXNvIHBvciBob3JhcyBleHRyYXMgcmVzdGFudGVzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJ1ZhY2FjacOzbnMgKGTDrWFzKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICdWYWNhY2nDs25zIGNvbGxpZGFzIChlc3RlIG1lcyknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJ1ZhY2FjacOzbnMgY29sbGlkYXMgKHRvdGFpcyknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIHZhY2F0aW9uJ30gPSAnVmFjYWNpw7NucyByZXN0YW50ZXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICdMaWNlbnphIHBvciBlbmZlcm1pZGFkZSAoZMOtYXMpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUgdGFrZW4gKHRoaXMgbW9udGgpJ30gPSAnTGljZW56YXMgcG9yIGVuZmVybWlkYWRlIGNvbGxpZGFzIChlc3RlIG1lcyknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnTGljZW56YXMgcG9yIGVuZmVybWlkYWRlIGNvbGxpZGFzICh0b3RhaXMpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnTWVzIGFudGVyaW9yJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICdNZXMgc2VndWludGUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJ0TDrWEgZGEgc2VtYW5hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dvcmtpbmcgSG91cnMnfSA9ICdIb3JhcyBsYWJvcmFpcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUb3RhbCB3b3JrZWQgaG91cnMnfSA9ICdIb3JhcyB0cmFiYWxsYWRhcyB0b3RhaXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlclwncyBwcm9qZWN0IG92ZXJ2aWV3J30gPSAnVmlzdGEgeGVyYWwgZG8gcHJveGVjdG8gZG8gdXN1YXJpbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyAobW9udGhseSknfSA9ICdIb3JhcyAocG9yIG1lcyknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKExpZmV0aW1lKSd9ID0gJ0hvcmFzICh2aWRhKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHcmFuZCB0b3RhbCd9ID0gJ1RvdGFsIGFjdW11bGFkbyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSByZXBvcnRpbmcnfSA9ICdSZXBvcnRlIHRlbXBvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICdOYXZlZ2FjacOzbiBwb3IgbWVzZXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJ0lyIGEgdW5oYSBkYXRhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgcmVwb3J0cyd9ID0gJ0luZm9ybWVzIGRlIHVzdWFyaW8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJ1RvdGFsIG1lbnN1YWwnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGlmZXRpbWUgdG90YWwnfSA9ICdUb3RhbCBkYSB2aWRhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIGxlYXZlJ30gPSAnTGljZW56YSBwb3IgaG9yYXMgZXh0cmEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24nfSA9ICdWYWNhY2nDs25zJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUnfSA9ICdMaWNlbnphIHBvciBlbmZlcm1pZGFkZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiByZW1haW5pbmcnfSA9ICdWYWNhY2nDs25zIHJlc3RhbnRlcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICdJbmZvcm1lcyBkZSBwcm94ZWN0b3MnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJ0luZm9ybWUgZGUgcHJveGVjdG9zJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHJlcG9ydGluZyBvdmVydmlldyd9ID0gJ0lyIMOhIHZpc3RhIHhlcmFsIGRlIGluZm9ybWVzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0N1cnJlbnRseSBvbmx5IGFjdGl2ZSB1c2VycyBpbiB0aGlzIHByb2plY3QgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnQWN0dWFsbWVudGUgc8OzIHVzdWFyaW9zIGFjdGl2b3MgbmVzdGUgcHJveGVjdG8gc29uIG1vc3RyYWRvcy4gUGFyYSBjYW1iaWFyIGVzdGUgY29tcG9ydGFtZW50bywgcG9yIGZhdm9yIGFjdHVhbGljZSBvIGF4dXN0ZTonOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnVG9kbyBvIHRlbXBvIGNvbnRhYmlsaXphZG8gcG9sb3MgdXN1YXJpb3Mgw6kgbW9zdHJhZG8uIFBhcmEgY2FtYmlhciBlc3RlIGNvbXBvcnRhbWVudG8sIHBvciBmYXZvciBhY3R1bGljZSBvIGF4dXN0ZTonOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCByZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gdGlja2V0J30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgUHJvamVjdCBTZXR0aW5ncyd9ID0gJ0VkaXRlIENvbnRhYmlsaXphY2nDs24gZG8gVGVtcG8gZW4gQXh1c3RlcyBkZSBQcm95ZWN0byc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgcHJvamVjdCd9ID0gJ0VuZ2FkaXIgdW4gcHJveGVjdG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICdWYWlhIMOhIHZpc3RhIHhlcmFsIGRlIGF4dXN0ZXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICdFbmdhZGlyIHVuIHByb3hlY3RvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgUHJvamVjdCBTZXR0aW5ncyd9ID0gJ0VkaXRhciBhIGNvbmZpZ3VyYWNpw7NuIGRvIHByb3hlY3RvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICdYYSBoYWkgdW4gcHJveGVjdG8gY29uIGVzdGUgbm9tZS4gUG9yIGZhdm9yLCBlc2NvbGxhIHVuIGRpZmVyZW50ZS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICdFZGl0ZSBDb250YWJpbGl6YWNpw7NuIGRvIFRlbXBvIGVuIEF4dXN0ZXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICdFbmdhZGlyIHVuaGEgdGFyZWZhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBhIHVzZXIgdG8gdGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGaWx0ZXIgZm9yIHByb2plY3RzLCB0YXNrcyBvciB1c2Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHBlcmlvZHMgY2FuIG5vdCBiZSBkZWxldGVkLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IExpc3QnfSA9ICdMaXN0YSBkZSBwcm94ZWN0b3MnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayBMaXN0J30gPSAnTGlzdGEgZGUgdGFyZWZhcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgVGFzayd9ID0gJ0VuZ2FkaXIgdW5oYSB0YXJlZmEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnRWRpdGFyIGEgY29uZmlndXJhY2nDs24gZGEgdGFyZWZhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICdYYSBoYWkgdW5oYSB0YXJlZmEgY29uIGVzdGUgbm9tZS4gUG9yIGZhdm9yLCBlc2NvbGxhIHVuIGRpZmVyZW50ZS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnTGlzdGEgZGUgdXN1YXJpb3MnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBTZXR0aW5ncyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gc2VlIG92ZXJ0aW1lcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaG93IE92ZXJ0aW1lJ30gPSAnTW9zdHJhciBUZW1wbyBFeGNlc28nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIGNyZWF0ZSBwcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyBwcm9qZWN0IGNyZWF0aW9uJ30gPSAnUGVybWl0aXIgY3JlYWNpw7NuIHByb3hlY3RvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBza2lwIHRpbWUgYWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyB0aW1lIGFjY291bnRpbmcgc2tpcHBpbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgdGhpcyBvcHRpb24gaXMgc2VsZWN0ZWQsIHRpbWUgYWNjb3VudGluZyBpcyBlZmZlY3RpdmVseSBvcHRpb25hbCBmb3IgdGhlIHVzZXIuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlcmUgd2lsbCBiZSBubyB3YXJuaW5ncyBhYm91dCBtaXNzaW5nIGVudHJpZXMgYW5kIG5vIGVudHJ5IGVuZm9yY2VtZW50Lid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgU3BhbnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEJlZ2luJ30gPSAnQ29taWVuem8gUGVyaW9kbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgRW5kJ30gPSAnRmluIFBlcmlvZG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF5cyBvZiBWYWNhdGlvbid9ID0gJ0TDrWFzIGRlIFZhY2FjaW9uZXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgcGVyIFdlZWsnfSA9ICdIb3JhcyBwb3IgU2VtYW5hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICdFeGNlc28gVGVtcG8gQXV0b3JpemFkbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdGFydCBEYXRlJ30gPSAnRGF0YSBkZSBjb21lem8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGluc2VydCBhIHZhbGlkIGRhdGUuJ30gPSAnUG9yIGZhdm9yIGludHJvZHV6Y2EgdW5oYSBkYXRhIHbDoWxpZGEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICdEYXRhIGRlIGZpbmFsaXphY2nDs24nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICdGaW4gZG8gcGVyaW9kbyBkZWJlIHNlciBkZXNwb2lzIGRlIHF1ZSBjb21pZW5jZSBvIHBlcmlvZG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJ0TDrWFzIGRlIHBlcm1pc28nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2x5IEhvdXJzJ30gPSAnSG9yYXMgc2VtYW5haXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICdIb3JhcyBleHRyYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyB0aW1lIHBlcmlvZHMgZm91bmQuJ30gPSAnTm9uIHNlIGF0b3Bhcm9uIHBlcsOtb2RvcyBkZSB0ZW1wby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRpbWUgcGVyaW9kJ30gPSAnRW5nYWRpciBwZXJpb2RvIGRlIHRlbXBvJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nVmlldwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldyBUaW1lIFJlY29yZCd9ID0gJ1Zpc3RhIFJleGlzdHJvIGRlIFRlbXBvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnVmlzdGEgZGUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJldmlvdXMgZGF5J30gPSAnRMOtYSBhbnRlcmlvcic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJ0TDrWEgc2VndWludGUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gZGF0YSBmb3VuZCBmb3IgdGhpcyBkYXkuJ30gPSAnTm9uIHNlIGF0b3Bhcm9uIGRhdG9zIHBhcmEgZXN0ZSBkw61hLic7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ0VkaXQucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3Qgc2F2ZSBzZXR0aW5ncywgYmVjYXVzZSBhIGRheSBoYXMgb25seSAyNCBob3VycyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGRlbGV0ZSBXb3JraW5nIFVuaXRzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIERhdGUgaXMgb3V0IG9mIGxpbWl0LCBidXQgeW91IGhhdmVuXCd0IGluc2VydCB0aGlzIGRheSB5ZXQsIHNvIHlvdSBnZXQgb25lKCEpIGNoYW5jZSB0byBpbnNlcnQnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIFdvcmtpbmcgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWNjZXNzZnVsIGluc2VydCEnfSA9ICdJbnNlcmNpw7NuIHNhdGlzZmFjdG9yaWEhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICdFcnJvIG1lbnRyZXMgaW50cm9kdWPDrWFuc2UgZGF0YXMgbcO6bHRpcGxlcyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnRW50cmFkYXMgc2F0aXNmYWN0b3JpYW1lbnRlIGludHJvZHVjaWRhcyBwYXJhIHZhcmlhcyBkYXRhcyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW50ZXJlZCBkYXRlIHdhcyBpbnZhbGlkISBEYXRlIHdhcyBjaGFuZ2VkIHRvIHRvZGF5Lid9ID0gJ0RhdGEgaW50cm9kdWNpZGEgZm9pIGludmFsaWRhISBBIGRhdGEgZm9pIGNhbWJpYWRhIGEgaG94ZS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGwgUHJvamVjdHMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJ0luZm9ybWVzJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBOZWVkIFRpY2tldElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5vIFByb2plY3QgZm9yIFRpY2tldCBmb3VuZC4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdTZXR0aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gdXBkYXRlIHVzZXIgc2V0dGluZ3MhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayB1cGRhdGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgVXNlcklEIGlzIG5vdCB2YWxpZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGluc2VydCB1c2VyIGRhdGEhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byBhZGQgdGltZSBwZXJpb2QhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NldHRpbmcnfSA9ICdDb25maWd1cmFjacOzbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05ldyBVc2VyJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBTdGF0dXMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdWaWV3LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3OiBOZWVkICVzISd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL091dHB1dC9IVE1ML05vdGlmaWNhdGlvbi9UaW1lQWNjb3VudGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGluc2VydCB5b3VyIHdvcmtpbmcgaG91cnMhJ30gPSAnSW50cm9kdXphIGFzIHPDumFzIGhvcmFzIGRlIHRyYWJhbGxvISc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL091dHB1dC9IVE1ML1Rvb2xCYXIvSW5jb21wbGV0ZVdvcmtpbmdEYXlzLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyd9ID0gJyc7CgogICAgIyBKUyBGaWxlOiBUaW1lQWNjb3VudGluZy5BZ2VudC5FZGl0VGltZVJlY29yZHMKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnfSA9ICdFc2NvbGxhIGFvIG1lbm9zIHVuIGTDrWEhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICdJbnRyb2R1Y2nDs24gZW4gbWFzYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGEgcmVhc29uIGZvciBhYnNlbmNlISd9ID0gJ0VzY29sbGEgbyBtb3Rpdm8gZGEgYXVzZW5jaWEhJzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5J30gPSAnRWxpbWluZSBFbnRyYWRhIFRlbXBvIENvbnRhYmlsaXphZG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICdDb25maXJtZSBhIGluc2VyY2nDs24nOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJ03Ds2R1bG8gbm90aWZpY2FjacOzbiBpbnRlcmZhY2UgZGUgYXhlbnRlIHBhcmEgdmVyIG8gbsO6bWVybyBkZSBkw61hcyBkZSB0cmFiYWxsbyBpbmNvbXBsZXRvcyBwYXJhIG8gdXN1YXJpby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxzbyBzeW5jaHJvbmlzZSBjdXN0b21lcnMgYXMgYSBuZXcgcHJvamVjdCBpZiB0aGV5IGhhdmUgbm90IHlldCBiZWVuIGNyZWF0ZWQgaW4gdGhlIGN1c3RvbWVyIGRhdGFiYXNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FzIHNvb24gYXMgdGhlIHN5bmNocm9uaXNhdGlvbiBvZiB0aWNrZXQgVGltZVVuaXRzIGlzIGFjdGl2YXRlZCwgaXQgaXMgcG9zc2libGUgdG8gc2V0IHRoZSBlbnRyaWVzIFJlYWRPbmx5Lid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NyZWF0ZSBhIG5ldyB0aW1lIGFjY291bnRpbmcgZW50cnkgcmVsYXRlZCB0byB0aGUgdGlja2V0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgbmFtZSBmb3IgbmV3IGFjdGlvbnMuJ30gPSAnTm9tZSBwcmVkZXRlcm1pbmFkbyBwYXJhIGFzIGFjY2nDs25zIG5vdmFzLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IG5hbWUgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICdOb21lIHByZWRldGVybWluYWRvIHBhcmEgb3MgcHJveGVjdG9zIG5vdm9zLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRhdGUgZW5kLid9ID0gJ0F4dXN0ZSBwb3IgZGVmZWN0byBwYXJhIGZpbiBkYSBkYXRhLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRhdGUgc3RhcnQuJ30gPSAnQXh1c3RlIHBvciBkZWZlY3RvIHBhcmEgaW5pY2lvIGRhIGRhdGEuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGVzY3JpcHRpb24uJ30gPSAnQ29uZmlndXJhY2nDs24gcHJlZGVmaW5pZGEgZGEgZGVzY3JpY2nDs24nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJ0NvbmZpZ3VyYWNpw7NuIHByZWRlZmluaWRhIGRvcyBkw61hcyBkZSBwZXJtaXNvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJ0NvbmZpZ3VyYWNpw7NuIHByZWRlZmluaWRhIGRhcyBob3JhcyBleHRyYS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciB0aGUgc3RhbmRhcmQgd2Vla2x5IGhvdXJzLid9ID0gJ0F4dXN0ZSBwb3IgZGVmZWN0byBwYXJhIGFzIGhvcmFzIGVzdGFuZGFyZCBzZW1hbsOhaXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICdFc3RhZG8gcHJlZGV0ZXJtaW5hZG8gcGFyYSBhcyBhY2Npw7NucyBub3Zhcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICdFc3RhZG8gcHJlZGV0ZXJtaW5hZG8gcGFyYSBvcyBwcm94ZWN0b3Mgbm92b3MuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgdXNlcnMuJ30gPSAnRXN0YWRvIHByZWRldGVybWluYWRvIHBhcmEgb3MgdXN1YXJpb3Mgbm92b3MuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmluZXMgdGhlIHByb2plY3RzIGZvciB3aGljaCBhIHJlbWFyayBpcyByZXF1aXJlZC4gSWYgdGhlIFJlZ0V4cCBtYXRjaGVzIG9uIHRoZSBwcm9qZWN0LCB5b3UgaGF2ZSB0byBpbnNlcnQgYSByZW1hcmsgdG9vLiBUaGUgUmVnRXhwIHVzZSB0aGUgc214IHBhcmFtZXRlci4nfSA9CiAgICAgICAgJ0RlZmluZSBvcyBwcm94ZWN0b3MgcGFyYSBvcyBjYWxlcyB1biBjb21lbnRhcmlvIMOpIHJlcXVpcmlkby4gU2UgYSBFeHBSZWcgY29pbmNpZGUgbm8gcHJveGVjdG8sIHRlbiBxdWUgaW5zZXJ0YXIgdW4gY29tZW50YXJpbyB0YW3DqW4uIEEgRXhwUmVnIHVzYSBvIHBhcsOhbWV0cm8gc214Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZXRlcm1pbmVzIGlmIHRoZSBzdGF0aXN0aWNzIG1vZHVsZSBtYXkgZ2VuZXJhdGUgdGltZSBhY2NvdW50aW5nIGluZm9ybWF0aW9uLid9ID0KICAgICAgICAnRGV0ZXJtaW5hIHNlIG8gbcOzZHVsbyBkZSBlc3RhdMOtc3RpY2FzIHBvZGUgeGVyYXIgaW5mb3JtYWNpw7NuIGRlIGNvbnRhYmlsaXphY2nDs24gZGUgdGVtcG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSBhY2NvdW50aW5nIHNldHRpbmdzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IHRpbWUgcmVjb3JkLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFdmVyeSB0aW1lIGEgYWdlbnQgYWRkIFRpbWVVbml0cyB0byBhIHRpY2tldCwgd2Ugc3luYyB0aGUgaW5mb3JtYXRpb24gdG8gdGhlIHRpbWVhY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGb3IgaG93IG1hbnkgZGF5cyBhZ28geW91IGNhbiBpbnNlcnQgd29ya2luZyB1bml0cy4nfSA9ICdQb3IgY2FudG9zIGTDrWFzIGF0csOhcyBwb2RlIGluc2VydGFyIHVuaWRhZGVzIGRlIHRyYWJhbGxvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICdTZSBoYWJpbGl0YWRvLCBzw7MgdXN1YXJpb3MgcXVlIGVuZ2FkaXJvbiB0ZW1wbyBkZSB0cmFiYWxsbyBhbyBwcm94ZWN0byBzZWxlY2Npb25hZG8gc29uIG1vc3RyYWRvcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnU2UgaGFiaWxpdGFkbywgYW8gdXN1YXJpbyBwZXJtaXRlc2VsbGUgaW50cm9kdWNpciAicGVybWlzbyBkZSB2YWNhY2nDs25zIiAsICJwZXJtaXNvIHBvciBlbmZlcm1pZGFkZSIgZSAicGVybWlzbyBwb3IgZXhjZXNvIGRlIHRlbXBvIiBwYXJhIG11bHRpcGxlcyBkYXRhcyBkdW5oYSB2ZXouJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnTsO6bWVybyBtw6F4aW1vIGRlIGTDrWFzIGRlIHRyYWJhbGxvIGRlc3BvaXMgZG9zIGNhbGVzIGFzIHVuaWRhZGVzIGRlIHRyYWJhbGxvIGRlYmVuIHNlciBpbnNlcnRhZGFzLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXhpbXVtIG51bWJlciBvZiB3b3JraW5nIGRheXMgd2l0aG91dCB3b3JraW5nIHVuaXRzIGVudHJ5IGFmdGVyIHdoaWNoIGEgd2FybmluZyB3aWxsIGJlIHNob3duLid9ID0KICAgICAgICAnTsO6bWVybyBtw6F4aW1vIGRlIGTDrWFzIGRlIHRyYWJhbGxvIHNlbiBlbnRyYWRhcyBkZSB1bmlkYWRlcyBkZSB0cmFiYWxsbyBkZXNwb2lzIGRvcyBjYWxlcyB1bmhhIGFsZXJ0YSBzZXLDoSBtb3N0cmFkYS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICdFeHByZXNpw7NucyByZWd1bGFyZXMgcGFyYSBhIGxpc3RhIHF1ZSBjb250cmlueGUgYSBhY2Npw7NuIHNlZ3VuZG8gbyBwcm94ZWN0byBzZWxlY2Npb25hZG8uIENoYXZlIGNvbnTDqW4gYSBleHByZXNpw7NuIHJlZ3VsYXIgcGFyYSBwcm94ZWN0byhzKSwgY29udGlkbyBjb250w6luIGV4cHJlc2nDs25zIHJlZ3VsYXJlcyBwYXJhIGFjY2nDs24ocykuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBwcm9qZWN0IGxpc3QgYWNjb3JkaW5nIHRvIHVzZXIgZ3JvdXBzLiBLZXkgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9uIGZvciBwcm9qZWN0KHMpLCBjb250ZW50IGNvbnRhaW5zIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIGdyb3Vwcy4nfSA9CiAgICAgICAgJ0V4cHJlc2nDs25zIHJlZ3VsYXJlcyBwYXJhIGEgbGlzdGEgcXVlIGNvbnRyaW54ZSBvIHByb3hlY3RvIHNlZ3VuZG8gb3MgZ3J1cG9zIHNlbGVjY2lvbmFkb3MuIENoYXZlIGNvbnTDqW4gYSBleHByZXNpw7NuIHJlZ3VsYXIgcGFyYSBwcm94ZWN0byhzKSwgY29udGlkbyBjb250w6luIGxpc3RhIHNlcGFyYWRhIHBvciBjb21hcyBkZSBncnVwb3MuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnRXNwZWNpZmljYSBzZSBhcyBob3JhcyBkZSB0cmFiYWxsbyBwb2RlbiBzZXIgaW5zZXJ0YWRhcyBzZW4gdGVtcG9zIGRlIGluaWNpbyBlIGZpbi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3luY2hyb25pc2UgY3VzdG9tZXJzIGFzIGEgbmV3IHByb2plY3QgaWYgdGhleSBleGlzdHMgaW4gdGhlIGN1c3RvbWVyIGRhdGFiYXNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgbW9kdWxlIGZvcmNlcyBpbnNlcnRzIGluIFRpbWVBY2NvdW50aW5nLid9ID0gJ0VzdGUgbcOzZHVsbyBmb3J6YSBhcyBpbnNlcmNpw7NucyBlbiBDb250YWJpbGl6YWNpw7NuVGVtcG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgbm90aWZpY2F0aW9uIG1vZHVsZSBnaXZlcyBhIHdhcm5pbmcgaWYgdGhlcmUgYXJlIHRvbyBtYW55IGluY29tcGxldGUgd29ya2luZyBkYXlzLid9ID0KICAgICAgICAnRXN0ZSBtw7NkdWxvIGRlIG5vdGlmaWNhY2nDs24gZGEgdW5oYSBhbGVydGEgc2UgaGFpIG1vaXRvcyBkw61hcyBkZSB0cmFiYWxsbyBpbmNvbXBsZXRvcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJ0NvbnRhYmlsaXphciBUZW1wbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICdFZGl0ZSBjb250YWJpbGl6YWNpw7NuIGRvIHRlbXBvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgb3ZlcnZpZXcuJ30gPSAnVmlzdGEgWGVyYWwgY29udGFiaWxpemFjacOzbiB0ZW1wby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHJlcG9ydGluZy4nfSA9ICdJbmZvcm1lIGNvbnRhYmlsaXphY2nDs24gdGVtcG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBzZXR0aW5ncy4nfSA9ICdBeHVzdGVzIGNvbnRhYmlsaXphY2nDs24gdGVtcG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICdWaXN0YSBjb250YWJpbGl6YWNpw7NuIHRlbXBvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcuJ30gPSAnQ29udGFiaWxpemFjacOzbiB0ZW1wby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG8gdXNlIGlmIHNvbWUgYWN0aW9ucyByZWR1Y2VkIHRoZSB3b3JraW5nIGhvdXJzIChmb3IgZXhhbXBsZSwgaWYgb25seSBoYWxmIG9mIHRoZSB0cmF2ZWxpbmcgdGltZSBpcyBwYWlkIEtleSA9PiB0cmF2ZWxpbmc7IENvbnRlbnQgPT4gNTApLid9ID0KICAgICAgICAnUGFyYSB1c2FyIHNlIGFsZ3VuaGFzIGFjY2nDs25zIHJlZHVjaXJvbiBhcyBob3JhcyBkZSB0cmFiYWxsbyAocG9yIGV4ZW1wbG8sIHNlIHPDsyBhIG1pdGFkZSBkbyB0ZW1wbyBkZSB2aWF4ZSDDqSBwYWdhZG8gQ2hhdmUgPT4gdmlheGU7IENvbnRpZG8gPT4gNTApLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2UgU2VydmljZSBhcyBBY3Rpb24uIFBsZWFzZSBhZGQgYXMga2V5IHRoZSB0aW1lYWNvdW50aW5nIGFjdGlvbiBhbmQgdGhlIHNlcnZpY2UgYXMgdmFsdWUuIFJlZ0V4IGFyZSBhbGxvd2VkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIG5lZWQgdG8gc2V0IGEgZGVmYXVsdCBhY3Rpb24gaWQgd2hlbiB3ZSBzeW5jIFRpbWVVbml0cyB0byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIG5lZWQgdG8gc2V0IGEgZGVmYXVsdCBwcm9qZWN0IGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBzYXZlIHRoZSBBcnRpY2xlIFRpbWVVbml0IHRvIGEgRHluYW1pY0ZpZWxkIGZyb20gdHlwZSAiQXJ0aWNsZSIuIFBsZWFzZSBhZGQgaGVyZSB0aGUgbmFtZSBvZiB0aGUgZmllbGQgaWYgdGhlIGluaXRpbmFsIG5hbWUgaXMgY2hhbmdlZC4nfSA9CiAgICAgICAgJyc7CgoKICAgIHB1c2ggQHsgJFNlbGYtPntKYXZhU2NyaXB0U3RyaW5nc30gLy8gW10gfSwgKAogICAgJ0NhbmNlbCcsCiAgICAnQ29uZmlybSBpbnNlcnQnLAogICAgJ0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknLAogICAgJ01hc3MgRW50cnknLAogICAgJ05vJywKICAgICdQbGVhc2UgY2hvb3NlIGEgcmVhc29uIGZvciBhYnNlbmNlIScsCiAgICAnUGxlYXNlIGNob29zZSBhdCBsZWFzdCBvbmUgZGF5IScsCiAgICAnU3VibWl0JywKICAgICdZZXMnLAogICAgKTsKCn0KCjE7Cg==</File>
        <File Location="Kernel/Language/he_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmhlX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIEVuZCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGwgUHJvamVjdHMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBUaWNrZXRJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBObyBQcm9qZWN0IGZvciBUaWNrZXQgZm91bmQuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIHVwZGF0ZSB1c2VyIHNldHRpbmdzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gYWRkIHRpbWUgcGVyaW9kISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICcnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/hi_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmhpX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIEVuZCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGwgUHJvamVjdHMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBUaWNrZXRJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBObyBQcm9qZWN0IGZvciBUaWNrZXQgZm91bmQuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIHVwZGF0ZSB1c2VyIHNldHRpbmdzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gYWRkIHRpbWUgcGVyaW9kISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICcnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/hr_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmhyX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIEVuZCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGwgUHJvamVjdHMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBUaWNrZXRJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBObyBQcm9qZWN0IGZvciBUaWNrZXQgZm91bmQuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIHVwZGF0ZSB1c2VyIHNldHRpbmdzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gYWRkIHRpbWUgcGVyaW9kISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICcnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/hu_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6Omh1X1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJ0ZlbGFkYXQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYXJrJ30gPSAnw4lzenJldsOpdGVsJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N0YXJ0IHRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IG11c3QgZW50ZXIgYSBzdGFydCBhbmQgYW4gZW5kIHRpbWUsIG9yIGEgcG9zaXRpdmUgcGVyaW9kIG9mIHVwIHRvIDI0IGhvdXJzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZSB0aW1lIHBlcmlvZCBtdXN0IGJlIGdpdmVuIGluIGhvdXJzIGFuZCBjYW4gYmUgYSBkZWNpbWFsIG51bWJlci4nfSA9CiAgICAgICAgJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ0RlbGV0ZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRG8geW91IHJlYWxseSB3YW50IHRvIGRlbGV0ZSB0aGUgVGltZSBBY2NvdW50aW5nIG9mIHRoaXMgZGF5Pyd9ID0KICAgICAgICAnVmFsw7NiYW4gdMO2csO2bG5pIHN6ZXJldG7DqSBlbm5layBhIG5hcG5hayBheiBpZMWRZWxzesOhbW9sw6Fzw6F0Pyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ0VkaXQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBSZWNvcmQnfSA9ICdJZMWRZmVsamVneXrDqXMgc3plcmtlc3p0w6lzZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBzZXR0aW5ncyd9ID0gJ1VncsOhcyBhIGJlw6FsbMOtdMOhc29raG96JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJ0TDoXR1bSBuYXZpZ8OhY2nDsyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJ0JlamVneXrDqXNlayBuw6lsa8O8bGkgbmFwb2snOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2VsZWN0IGFsbCBkYXlzJ30gPSAnTWluZGVuIG5hcCBraWplbMO2bMOpc2UnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJ1TDtm1lZ2VzIGJlamVneXrDqXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSB0aGUgcmVhc29uIGZvciB5b3VyIGFic2VuY2UgZm9yIHRoZSBzZWxlY3RlZCBkYXlzJ30gPQogICAgICAgICdWw6FsYXNzemEga2kgYSB0w6F2b2xsw6l0ZSBva8OhdCBhIGtpamVsw7ZsdCBuYXBva3JhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIHZhY2F0aW9uJ30gPSAnU3phYmFkc8OhZ29uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIHNpY2sgbGVhdmUnfSA9ICdCZXRlZ3N6YWJhZHPDoWdvbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBvdmVydGltZSBsZWF2ZSd9ID0gJ0Nzw7pzenRhdMOhc29uIHTDumzDs3JhIG1pYXR0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnQSBrw7Z0ZWxlesWRIG1lesWRayDigJ4q4oCdIGplbGxlbCB2YW5uYWsgbWVnamVsw7ZsdmUuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnS2kga2VsbCB0w7ZsdGVuaWUgYSBrZXpkxZEgw6lzIGJlZmVqZXrFkSBpZMWRdCB2YWd5IGVneSBpZMWRc3pha290Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0J30gPSAnUHJvamVrdCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPcmlnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGFkZCBhIHJlbWFyayB3aXRoIG1vcmUgdGhhbiA4IGNoYXJhY3RlcnMhJ30gPSAnQWRqb24gaG96esOhIGVneSA4IGthcmFrdGVybsOpbCBob3NzemFiYiDDqXN6cmV2w6l0ZWx0ISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnTmVnYXTDrXYgaWTFkXBvbnRvayBuZW0gZW5nZWTDqWx5ZXpldHRlay4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBTdGFydCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJ0F6IGlzbcOpdGzFkWTFkSDDs3LDoWsgbmVtIGVuZ2Vkw6lseWV6ZXR0ZWsuIEEga2V6ZMOpc2kgaWTFkSBlZ3kgbcOhc2lrIGlkxZFrw7Z6cmUgaWxsZXN6a2VkaWsuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgZm9ybWF0ISBQbGVhc2UgZW50ZXIgYSB0aW1lIHdpdGggdGhlIGZvcm1hdCBISDpNTS4nfSA9ICfDiXJ2w6lueXRlbGVuIGZvcm3DoXR1bSEgw5PDkzpQUCBmb3Jtw6F0dW3DuiBpZMWRdCBhZGpvbiBtZWcuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57JzI0OjAwIGlzIG9ubHkgcGVybWl0dGVkIGFzIGVuZCB0aW1lLid9ID0gJ0EgMjQ6MDAgY3NhayBiZWZlamV6w6lzaSBpZMWRa8OpbnQgZW5nZWTDqWx5ZXpldHQuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgdGltZSEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnw4lydsOpbnl0ZWxlbiBpZMWRcG9udCEgRWd5IG5hcG5hayBjc2FrIDI0IMOzcsOhamEgdmFuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSBtdXN0IGJlIGFmdGVyIHN0YXJ0IHRpbWUuJ30gPSAnQSBiZWZlamV6w6lzaSBpZMWRbmVrIGEga2V6ZMOpc2kgaWTFkSB1dMOhbiBrZWxsIGxlbm5pZS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBFbmQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICdBeiBpc23DqXRsxZFkxZEgw7Nyw6FrIG5lbSBlbmdlZMOpbHllemV0dGVrLiBBIGJlZmVqZXrDqXNpIGlkxZEgZWd5IG3DoXNpayBpZMWRa8O2enJlIGlsbGVzemtlZGlrLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnw4lydsOpbnl0ZWxlbiBpZMWRc3phayEgRWd5IG5hcG5hayBjc2FrIDI0IMOzcsOhamEgdmFuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBIHZhbGlkIHBlcmlvZCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiB6ZXJvLid9ID0gJ0VneSDDqXJ2w6lueWVzIGlkxZFzemFrbmFrIG5hZ3lvYmJuYWsga2VsbCBsZW5uaWUgbnVsbMOhbsOhbC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIE5lZ2F0aXZlIHBlcmlvZHMgYXJlIG5vdCBhbGxvd2VkLid9ID0gJ8OJcnbDqW55dGVsZW4gaWTFkXN6YWshIE5lZ2F0w612IGlkxZFzemFrb2sgbmVtIGVuZ2Vkw6lseWV6ZXR0ZWsuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Ym1pdCBjaGFuZ2VzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBvbmUgcm93J30gPSAnRWd5IHNvciBob3p6w6FhZMOhc2EnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICdDc2FrIGVneSBqZWzDtmzFkW7DqWd5emV0IGVsZW1ldCB2w6FsYXN6dGhhdCBraSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJ0JpenRvcyBiZW5uZSwgaG9neSBkb2xnb3pvdHQsIG1pYWxhdHQgYmV0ZWdzemFiYWRzw6Fnb24gdm9sdD8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiB2YWNhdGlvbj8nfSA9ICdCaXp0b3MgYmVubmUsIGhvZ3kgZG9sZ296b3R0LCBtaWFsYXR0IHN6YWJhZHPDoWdvbiB2b2x0Pyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnQml6dG9zIGJlbm5lLCBob2d5IGRvbGdvem90dCwgbWlhbGF0dCBjc8O6c3p0YXRvdHQ/JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJ0JpenRvcyBiZW5uZSwgaG9neSB0w7ZiYiBtaW50IDE2IMOzcsOhdCBkb2xnb3pvdHQ/JzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nT3ZlcnZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nIG1vbnRobHkgb3ZlcnZpZXcnfSA9ICdJZMWRamVsZW50w6lzIGhhdmkgw6F0dGVraW50w6lzZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAoSG91cnMpJ30gPSAnVMO6bMOzcmEgKMOzcmEpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0aGlzIG1vbnRoKSd9ID0gJ1TDumzDs3JhIChleiBhIGjDs25hcCknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRvdGFsKSd9ID0gJ1TDumzDs3JhICjDtnNzemVzZW4pJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFpbmluZyBvdmVydGltZSBsZWF2ZSd9ID0gJ01lZ21hcmFkdCBjc8O6c3p0YXTDoXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gKERheXMpJ30gPSAnU3phYmFkc8OhZyAobmFwKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICdLaXZldHQgc3phYmFkc8OhZyAoZXogYSBow7NuYXApJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0b3RhbCknfSA9ICdLaXZldHQgc3phYmFkc8OhZyAow7Zzc3plc2VuKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICdNZWdtYXJhZHQgc3phYmFkc8OhZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIExlYXZlIChEYXlzKSd9ID0gJ0JldGVnc3phYmFkc8OhZyAobmFwKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlIHRha2VuICh0aGlzIG1vbnRoKSd9ID0gJ0tpdmV0dCBiZXRlZ3N6YWJhZHPDoWcgKGV6IGEgaMOzbmFwKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlIHRha2VuICh0b3RhbCknfSA9ICdLaXZldHQgYmV0ZWdzemFiYWRzw6FnICjDtnNzemVzZW4pJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnRWzFkXrFkSBow7NuYXAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV4dCBtb250aCd9ID0gJ0vDtnZldGtlesWRIGjDs25hcCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrZGF5J30gPSAnSMOpdGvDtnpuYXAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV29ya2luZyBIb3Vycyd9ID0gJ011bmthaWTFkSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUb3RhbCB3b3JrZWQgaG91cnMnfSA9ICdMZWRvbGdvem90dCDDs3LDoWsgw7Zzc3plc2VuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXJcJ3MgcHJvamVjdCBvdmVydmlldyd9ID0gJ0EgZmVsaGFzem7DoWzDsyBwcm9qZWt0asOpbmVrIMOhdHRla2ludMWRamUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnw5Nyw6FrIChoYXZvbnRhKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyAoTGlmZXRpbWUpJ30gPSAnw5Nyw6FrICjDqWxldHRhcnRhbSknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICdNaW5kw7Zzc3plc2VuJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyd9ID0gJ0lkxZFqZWxlbnTDqXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGggTmF2aWdhdGlvbid9ID0gJ0jDs25hcCBuYXZpZ8OhY2nDsyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBkYXRlJ30gPSAnVWdyw6FzIGTDoXR1bXJhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgcmVwb3J0cyd9ID0gJ0ZlbGhhc3puw6Fsw7NpIGplbGVudMOpc2VrJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRobHkgdG90YWwnfSA9ICdIYXZpIMO2c3N6ZXPDrXTFkSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJ8OJbGV0dGFydGFtIMO2c3N6ZXNlbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJ0Nzw7pzenRhdMOhcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJ1N6YWJhZHPDoWcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSd9ID0gJ0JldGVnc3phYmFkc8OhZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiByZW1haW5pbmcnfSA9ICdIw6F0cmFsw6l2xZEgc3phYmFkc8OhZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICdQcm9qZWt0IGplbGVudMOpc2VrJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nUHJvamVjdAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCByZXBvcnQnfSA9ICdQcm9qZWt0IGplbGVudMOpcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICdVZ3LDoXMgYSBqZWxlbnTDqXMgw6F0dGVraW50xZFow7Z6JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0N1cnJlbnRseSBvbmx5IGFjdGl2ZSB1c2VycyBpbiB0aGlzIHByb2plY3QgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnSmVsZW5sZWcgY3NhayBheiBha3TDrXYgZmVsaGFzem7DoWzDs2sgdmFubmFrIG1lZ2plbGVuw610dmUgZWJiZW4gYSBwcm9qZWt0YmVuLiBBIG3FsWvDtmTDqXMgbcOzZG9zw610w6Fzw6Fob3ogZnJpc3PDrXRzZSBhIGJlw6FsbMOtdMOhc3Q6JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0N1cnJlbnRseSBhbGwgdGltZSBhY2NvdW50aW5nIHVzZXJzIGFyZSBzaG93bi4gVG8gY2hhbmdlIHRoaXMgYmVoYXZpb3IsIHBsZWFzZSB1cGRhdGUgc2V0dGluZzonfSA9CiAgICAgICAgJ0plbGVubGVnIG1pbmRlbiBpZMWRZWxzesOhbW9sw7MgZmVsaGFzem7DoWzDsyBtZWcgdmFuIGplbGVuw610dmUuIEEgbcWxa8O2ZMOpcyBtw7Nkb3PDrXTDoXPDoWhveiBmcmlzc8OtdHNlIGEgYmXDoWxsw610w6FzdDonOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCByZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gdGlja2V0J30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgUHJvamVjdCBTZXR0aW5ncyd9ID0gJ0lkxZFlbHN6w6Ftb2zDoXMgcHJvamVrdGJlw6FsbMOtdMOhc29rIHN6ZXJrZXN6dMOpc2UnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICdQcm9qZWt0IGhvenrDoWFkw6FzYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBzZXR0aW5ncyBvdmVydmlldyd9ID0gJ1VncsOhcyBhIGJlw6FsbMOtdMOhc29rIMOhdHRla2ludMWRaMO2eic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgUHJvamVjdCd9ID0gJ1Byb2pla3QgaG96esOhYWTDoXNhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgUHJvamVjdCBTZXR0aW5ncyd9ID0gJ1Byb2pla3RiZcOhbGzDrXTDoXNvayBzemVya2VzenTDqXNlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICdNw6FyIGzDqXRlemlrIGVneSBpbHllbiBuZXbFsSBwcm9qZWt0LiBWw6FsYXNzem9uIGVneSBtw6FzaWsgbmV2ZXQuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFNldHRpbmdzJ30gPSAnSWTFkWVsc3rDoW1vbMOhc2kgYmXDoWxsw610w6Fzb2sgc3plcmtlc3p0w6lzZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGFzayd9ID0gJ0ZlbGFkYXQgaG96esOhYWTDoXNhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBhIHVzZXIgdG8gdGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGaWx0ZXIgZm9yIHByb2plY3RzLCB0YXNrcyBvciB1c2Vycyd9ID0gJ1N6xbFyxZEgYSBwcm9qZWt0a2VoZXosIGZlbGFkYXRva2hveiB2YWd5IGZlbGhhc3puw6Fsw7NraG96JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnQXogaWTFkXN6YWtvayBuZW0gdMO2csO2bGhldMWRay4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCBMaXN0J30gPSAnUHJvamVrdGxpc3RhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgTGlzdCd9ID0gJ0ZlbGFkYXRsaXN0YSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgVGFzayd9ID0gJ0ZlbGFkYXQgaG96esOhYWTDoXNhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGFzayBTZXR0aW5ncyd9ID0gJ0ZlbGFkYXRiZcOhbGzDrXTDoXNvayBzemVya2VzenTDqXNlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICdNw6FyIGzDqXRlemlrIGVneSBpbHllbiBuZXbFsSBmZWxhZGF0LiBWw6FsYXNzem9uIGVneSBtw6FzaWsgbmV2ZXQuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgTGlzdCd9ID0gJ0ZlbGhhc3puw6Fsw7NsaXN0YSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIFNldHRpbmdzJ30gPSAnRmVsaGFzem7DoWzDs2kgYmXDoWxsw610w6Fzb2snOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICdBIGZlbGhhc3puw6Fsw7MgbWVndGVraW50aGV0aSBhIHTDumzDs3LDoWthdCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaG93IE92ZXJ0aW1lJ30gPSAnVMO6bMOzcmEgbWVnamVsZW7DrXTDqXNlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBjcmVhdGUgcHJvamVjdHMnfSA9ICdBIGZlbGhhc3puw6Fsw7MgbMOpdHJlaG96aGF0IHByb2pla3Rla2V0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICdQcm9qZWt0bMOpdHJlaG96w6FzIGVuZ2Vkw6lseWV6w6lzZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gc2tpcCB0aW1lIGFjY291bnRpbmcnfSA9ICdBIGZlbGhhc3puw6Fsw7NuYWsgbGVoZXTFkXPDqWdlIHZhbiBraWhhZ3luaSBheiBpZMWRZWxzesOhbW9sw6FzdCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyB0aW1lIGFjY291bnRpbmcgc2tpcHBpbmcnfSA9ICdJZMWRZWxzesOhbW9sw6FzIGtpaGFnecOhc8OhbmFrIGxlaGV0xZF2w6kgdMOpdGVsZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJ0hhIGV6IGEgbGVoZXTFkXPDqWcgdmFuIGtpdsOhbGFzenR2YSwgYWtrb3IgYXogaWTFkWVsc3rDoW1vbMOhcyB0w6lueWxlZ2VzZW4gdsOhbGFzenRoYXTDsyBhIGZlbGhhc3puw6Fsw7NuYWsuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIHdpbGwgYmUgbm8gd2FybmluZ3MgYWJvdXQgbWlzc2luZyBlbnRyaWVzIGFuZCBubyBlbnRyeSBlbmZvcmNlbWVudC4nfSA9CiAgICAgICAgJ05lbSBsZXN6bmVrIGZpZ3llbG1lenRldMOpc2VrIGEgaGnDoW55esOzIGJlamVneXrDqXNla3LFkWwgw6lzIG5lbSBsZXN6IGJlw61yw6FzaSBrw6lueXN6ZXLDrXTDqXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgU3BhbnMnfSA9ICdJZMWRdGFydGFtb2snOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEJlZ2luJ30gPSAnSWTFkXN6YWsga2V6ZGV0ZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgRW5kJ30gPSAnSWTFkXN6YWsgdsOpZ2UnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF5cyBvZiBWYWNhdGlvbid9ID0gJ1N6YWJhZHPDoWcgbmFwamFpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnw5Nyw6FrIGhldGVudGUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXV0aG9yaXplZCBPdmVydGltZSd9ID0gJ0pvZ29zdWx0IHTDumzDs3JhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N0YXJ0IERhdGUnfSA9ICdLZXpkw6lzaSBkw6F0dW0nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGluc2VydCBhIHZhbGlkIGRhdGUuJ30gPSAnw4lydsOpbnllcyBkw6F0dW1vdCBpbGxlc3N6ZW4gYmUuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VuZCBEYXRlJ30gPSAnQmVmZWplesOpc2kgZMOhdHVtJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBlbmQgbXVzdCBiZSBhZnRlciBwZXJpb2QgYmVnaW4uJ30gPSAnQXogaWTFkXN6YWsgdsOpZ8OpbmVrIGF6IGlkxZFzemFrIGtlemRldGUgdXTDoW4ga2VsbCBsZW5uaWUuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xlYXZlIERheXMnfSA9ICdTemFiYWRzw6FnIG5hcGphaSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICdIZXRpIMOzcsOhayc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSd9ID0gJ1TDumzDs3JhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIHRpbWUgcGVyaW9kcyBmb3VuZC4nfSA9ICdOZW0gdGFsw6FsaGF0w7NrIGlkxZFzemFrb2suJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCB0aW1lIHBlcmlvZCd9ID0gJ0lkxZFzemFrIGhvenrDoWFkw6FzYSc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgVGltZSBSZWNvcmQnfSA9ICdJZMWRZmVsamVneXrDqXMgbWVndGVraW50w6lzZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IG9mICd9ID0gJ0Ega8O2dmV0a2V6xZEgbWVndGVraW50w6lzZTogJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJ0VsxZF6xZEgbmFwJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgZGF5J30gPSAnS8O2dmV0a2V6xZEgbmFwJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIGRhdGEgZm91bmQgZm9yIHRoaXMgZGF5Lid9ID0gJ05lbSB0YWzDoWxoYXTDsyBhZGF0IGVycmUgYSBuYXByYS4nOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnTmVtIGxlaGV0IGJlaWxsZXN6dGVuaSBhIG11bmthZWd5c8OpZ2VrZXQhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICdMZWd1dMOzYmJpIHByb2pla3Rlayc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3Qgc2F2ZSBzZXR0aW5ncywgYmVjYXVzZSBhIGRheSBoYXMgb25seSAyNCBob3VycyEnfSA9ICdOZW0gbGVoZXQgZWxtZW50ZW5pIGEgYmXDoWxsw610w6Fzb2thdCwgbWVydCBlZ3kgbmFwbmFrIGNzYWsgMjQgw7Nyw6FqYSB2YW4hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICdOZW0gbGVoZXQgdMO2csO2bG5pIGEgbXVua2FlZ3lzw6lnZWtldCEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICdFeiBhIGTDoXR1bSBhIGhhdMOhcm9uIGvDrXbDvGwgdmFuLCBkZSBtw6lnIG5lbSBpbGxlc3p0ZXR0ZSBiZSBleiBhIG5hcG90LCDDrWd5IGthcCBtw6lnIGVneSghKSBlc8OpbHl0IGEgYmVpbGxlc3p0w6lzcmUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICdCZWZlamV6ZXRsZW4gbXVua2FuYXBvayc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWNjZXNzZnVsIGluc2VydCEnfSA9ICdTaWtlcmVzIGJlaWxsZXN6dMOpcyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRXJyb3Igd2hpbGUgaW5zZXJ0aW5nIG11bHRpcGxlIGRhdGVzISd9ID0gJ0hpYmEgdMO2cnTDqW50IHTDtmJiIGTDoXR1bSBiZWlsbGVzenTDqXNlIGvDtnpiZW4hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Y2Nlc3NmdWxseSBpbnNlcnRlZCBlbnRyaWVzIGZvciBzZXZlcmFsIGRhdGVzISd9ID0gJ0EgYmVqZWd5esOpc2VrIHNpa2VyZXNlbiBiZWlsbGVzenR2ZSBhIGvDvGzDtm5iw7Z6xZEgZMOhdHVtb2tob3ohJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICdBIG1lZ2Fkb3R0IGTDoXR1bSDDqXJ2w6lueXRlbGVuIHZvbHQhIEEgZMOhdHVtIGEgbWFpIG5hcHJhIGxldHQgbcOzZG9zw610dmEuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIHRpbWUgcGVyaW9kIGNvbmZpZ3VyZWQsIG9yIHRoZSBzcGVjaWZpZWQgZGF0ZSBpcyBvdXRzaWRlIG9mIHRoZSBkZWZpbmVkIHRpbWUgcGVyaW9kcy4nfSA9CiAgICAgICAgJ05pbmNzIGlkxZFzemFrIGJlw6FsbMOtdHZhLCB2YWd5IGEgbWVnYWRvdHQgZMOhdHVtIGEgbWVnaGF0w6Fyb3pvdHQgaWTFkXN6YWtva29uIGvDrXbDvGwgdmFuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY29udGFjdCB0aGUgdGltZSBhY2NvdW50aW5nIGFkbWluaXN0cmF0b3IgdG8gdXBkYXRlIHlvdXIgdGltZSBwZXJpb2RzISd9ID0KICAgICAgICAnVmVneWUgZmVsIGEga2FwY3NvbGF0b3QgYXogaWTFkWVsc3rDoW1vbMOhcyBhZG1pbmlzenRyw6F0b3LDoXZhbCwgaG9neSBmcmlzc8OtdHNlIGF6IGlkxZFzemFrYWl0ISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMYXN0IFNlbGVjdGVkIFByb2plY3RzJ30gPSAnTGVndXTDs2JiIGtpdsOhbGFzenRvdHQgcHJvamVrdGVrJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbCBQcm9qZWN0cyd9ID0gJ01pbmRlbiBwcm9qZWt0JzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBOZWVkIFByb2plY3RJRCd9ID0gJ0plbGVudMOpcyBwcm9qZWt0OiBwcm9qZWt0YXpvbm9zw610w7Mgc3rDvGtzw6lnZXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nIFByb2plY3QnfSA9ICdKZWxlbnTDqXMgcHJvamVrdCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmcnfSA9ICdKZWxlbnTDqXMnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgVGlja2V0SUQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTm8gUHJvamVjdCBmb3IgVGlja2V0IGZvdW5kLid9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byB1cGRhdGUgdXNlciBzZXR0aW5ncyEnfSA9ICdOZW0gbGVoZXQgZnJpc3PDrXRlbmkgYSBmZWxoYXN6bsOhbMOzaSBiZcOhbGzDrXTDoXNva2F0ISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJ1Byb2pla3QgaG96esOhYWR2YSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCB1cGRhdGVkISd9ID0gJ1Byb2pla3QgZnJpc3PDrXR2ZSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayBhZGRlZCEnfSA9ICdGZWxhZGF0IGhvenrDoWFkdmEhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICdGZWxhZGF0IGZyaXNzw610dmUhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZSBVc2VySUQgaXMgbm90IHZhbGlkISd9ID0gJ0EgZmVsaGFzem7DoWzDsy1hem9ub3PDrXTDsyBuZW0gw6lydsOpbnllcyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGluc2VydCB1c2VyIGRhdGEhJ30gPSAnTmVtIGxlaGV0IGJlaWxsZXN6dGVuaSBhIGZlbGhhc3puw6Fsw7NhZGF0b2thdCEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIGFkZCB0aW1lIHBlcmlvZCEnfSA9ICdOZW0gbGVoZXQgaG96esOhYWRuaSBpZMWRc3pha290ISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnQmXDoWxsw610w6FzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICdGZWxoYXN6bsOhbMOzIGZyaXNzw610dmUhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgYWRkZWQhJ30gPSAnRmVsaGFzem7DoWzDsyBob3p6w6FhZHZhISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXcgVXNlcid9ID0gJ8OaaiBmZWxoYXN6bsOhbMOzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBTdGF0dXMnfSA9ICdJZMWRc3phayDDoWxsYXBvdCc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnTsOpemV0OiAlcyBzesO8a3PDqWdlcyEnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ob3RpZmljYXRpb24vVGltZUFjY291bnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBpbnNlcnQgeW91ciB3b3JraW5nIGhvdXJzISd9ID0gJ0lsbGVzc3plIGJlIGEgbXVua2FpZGVqw6l0ISc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL091dHB1dC9IVE1ML1Rvb2xCYXIvSW5jb21wbGV0ZVdvcmtpbmdEYXlzLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyd9ID0gJ0JlZmVqZXpldGxlbiBtdW5rYW5hcG9rJzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50LkVkaXRUaW1lUmVjb3JkcwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhdCBsZWFzdCBvbmUgZGF5ISd9ID0gJ0xlZ2Fsw6FiYiBlZ3kgbmFwb3QgdsOhbGFzc3pvbiBraSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBFbnRyeSd9ID0gJ1TDtm1lZ2VzIGJlamVneXrDqXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICdWw6FsYXNzemEga2kgYSB0w6F2b2xsw6l0IG9rw6F0ISc7CgogICAgIyBKUyBGaWxlOiBUaW1lQWNjb3VudGluZy5BZ2VudAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVsZXRlIFRpbWUgQWNjb3VudGluZyBFbnRyeSd9ID0gJ0lkxZFlbHN6w6Ftb2zDoXMgYmVqZWd5esOpcyB0w7ZybMOpc2UnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICdCZWlsbGVzenTDqXMgbWVnZXLFkXPDrXTDqXNlJzsKCiAgICAjIFN5c0NvbmZpZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWN0aXZhdGUgdGhlIHN5bmNocm9uaXNhdGlvbiBvZiBUaWNrZXQtVGltZVVuaXRzIGludG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZ2VudCBpbnRlcmZhY2Ugbm90aWZpY2F0aW9uIG1vZHVsZSB0byBzZWUgdGhlIG51bWJlciBvZiBpbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyBmb3IgdGhlIHVzZXIuJ30gPQogICAgICAgICfDnGd5aW50w6l6xZFpIGZlbMO8bGV0IMOpcnRlc8OtdMOpc2kgbW9kdWwgYSBmZWxoYXN6bsOhbMOzIGJlZmVqZXpldGxlbiBtdW5rYW5hcGphaSBzesOhbcOhbmFrIG1lZ3Rla2ludMOpc8OpaGV6Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICdBbGFww6lydGVsbWV6ZXR0IG7DqXYgYXogw7pqIG3FsXZlbGV0ZWtoZXouJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgbmFtZSBmb3IgbmV3IHByb2plY3RzLid9ID0gJ0FsYXDDqXJ0ZWxtZXpldHQgbsOpdiBheiDDumogcHJvamVrdGVraGV6Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRhdGUgZW5kLid9ID0gJ0FsYXDDqXJ0ZWxtZXpldHQgYmXDoWxsw610w6FzIGEgYmVmZWplesOpc2kgZMOhdHVtaG96Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRhdGUgc3RhcnQuJ30gPSAnQWxhcMOpcnRlbG1lemV0dCBiZcOhbGzDrXTDoXMgYSBrZXpkw6lzaSBkw6F0dW1ob3ouJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGVzY3JpcHRpb24uJ30gPSAnQWxhcMOpcnRlbG1lemV0dCBiZcOhbGzDrXTDoXMgYSBsZcOtcsOhc2hvei4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJ0FsYXDDqXJ0ZWxtZXpldHQgYmXDoWxsw610w6FzIGEgc3phYmFkc8OhZyBuYXBqYWlob3ouJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3Igb3ZlcnRpbWUuJ30gPSAnQWxhcMOpcnRlbG1lemV0dCBiZcOhbGzDrXTDoXMgYSB0w7psw7Nyw6Fob3ouJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgdGhlIHN0YW5kYXJkIHdlZWtseSBob3Vycy4nfSA9ICdBbGFww6lydGVsbWV6ZXR0IGJlw6FsbMOtdMOhcyBhIHN6YWJ2w6FueW9zIGhldGkgbXVua2HDs3LDoWtob3ouJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICdBbGFww6lydGVsbWV6ZXR0IMOhbGxhcG90IGF6IMO6aiBtxbF2ZWxldGVraGV6Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHN0YXR1cyBmb3IgbmV3IHByb2plY3RzLid9ID0gJ0FsYXDDqXJ0ZWxtZXpldHQgw6FsbGFwb3QgYXogw7pqIHByb2pla3Rla2hlei4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICdBbGFww6lydGVsbWV6ZXR0IMOhbGxhcG90IGF6IMO6aiBmZWxoYXN6bsOhbMOza2hvei4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnTWVnaGF0w6Fyb3p6YSBhem9rYXQgYSBwcm9qZWt0ZWtldCwgYW1lbHlla2hleiDDqXN6cmV2w6l0ZWwgc3rDvGtzw6lnZXMuIEhhIGEgcmVndWzDoXJpcyBraWZlamV6w6lzIGlsbGVzemtlZGlrIGEgcHJvamVrdHJlLCBha2tvciBiZSBrZWxsIGlsbGVzenRlbmllIGVneSDDqXN6cmV2w6l0ZWx0IGlzLiBBIHJlZ3Vsw6FyaXMga2lmZWplesOpcyBheiBzbXggcGFyYW3DqXRlcnQgaGFzem7DoWxqYS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGV0ZXJtaW5lcyBpZiB0aGUgc3RhdGlzdGljcyBtb2R1bGUgbWF5IGdlbmVyYXRlIHRpbWUgYWNjb3VudGluZyBpbmZvcm1hdGlvbi4nfSA9CiAgICAgICAgJ01lZ2hhdMOhcm96emEsIGhvZ3kgYSBzdGF0aXN6dGlrYSBtb2R1bCBlbMWRw6FsbMOtdGhhdC1lIGlkxZFlbHN6w6Ftb2zDoXNpIGluZm9ybcOhY2nDs2thdC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnSWTFkWVsc3rDoW1vbMOhcyBiZcOhbGzDrXTDoXNhaW5hayBzemVya2VzenTDqXNlLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IHRpbWUgcmVjb3JkLid9ID0gJ0lkxZFmZWxqZWd5esOpcyBzemVya2VzenTDqXNlLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFdmVyeSB0aW1lIGEgYWdlbnQgYWRkIFRpbWVVbml0cyB0byBhIHRpY2tldCwgd2Ugc3luYyB0aGUgaW5mb3JtYXRpb24gdG8gdGhlIHRpbWVhY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGb3IgaG93IG1hbnkgZGF5cyBhZ28geW91IGNhbiBpbnNlcnQgd29ya2luZyB1bml0cy4nfSA9ICdIw6FueSBuYXBwYWwgZXplbMWRdHRow7Z6IGlsbGVzenRoZXQgYmUgbXVua2FlZ3lzw6lnZWtldC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgb25seSB1c2VycyB0aGF0IGhhcyBhZGRlZCB3b3JraW5nIHRpbWUgdG8gdGhlIHNlbGVjdGVkIHByb2plY3QgYXJlIHNob3duLid9ID0KICAgICAgICAnSGEgZW5nZWTDqWx5ZXp2ZSB2YW4sIGFra29yIGNzYWsgYXpvayBhIGZlbGhhc3puw6Fsw7NrIGxlc3puZWsgbWVnamVsZW7DrXR2ZSwgYWtpayBtdW5rYWlkxZF0IGFkdGFrIGhvenrDoSBhIGtpamVsw7ZsdCBwcm9qZWt0aGV6Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZHJvcGRvd24gZWxlbWVudHMgaW4gdGhlIGVkaXQgc2NyZWVuIGFyZSBjaGFuZ2VkIHRvIG1vZGVybml6ZWQgYXV0b2NvbXBsZXRpb24gZmllbGRzLid9ID0KICAgICAgICAnSGEgZW5nZWTDqWx5ZXp2ZSB2YW4sIGFra29yIGEgc3plcmtlc3p0w6lzaSBrw6lwZXJuecWRbiBsw6l2xZEgbGVuecOtbMOzIGVsZW1layBrb3JzemVyxbFzw610ZXR0IGF1dG9tYXRpa3VzYW4ga2llZ8Opc3rDrXRldHQgbWV6xZFrcmUgbGVzem5layBtZWd2w6FsdG96dGF0dmEuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBmaWx0ZXIgZm9yIHRoZSBwcmV2aW91cyBwcm9qZWN0cyBjYW4gYmUgdXNlZCBpbnN0ZWFkIHR3byBsaXN0IG9mIHByb2plY3RzIChsYXN0IGFuZCBhbGwgb25lcykuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBUaW1lQWNjb3VudGluZzo6RW5hYmxlQXV0b0NvbXBsZXRpb24gaXMgZW5hYmxlZC4nfSA9CiAgICAgICAgJ0hhIGVuZ2Vkw6lseWV6dmUgdmFuLCBha2tvciBheiBlbMWResWRIHByb2pla3RlayBzesWxcsWRamUgaGFzem7DoWxoYXTDsyBhIHByb2pla3RlayBrw6l0IGxpc3TDoWphIGhlbHlldHQgKGxlZ3V0w7NiYmkgw6lzIMO2c3N6ZXMpLiBDc2FrIGFra29yIGhhc3puw6FsaGF0w7MsIGhhIGEgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGVuZ2Vkw6lseWV6dmUgdmFuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgaXMgYWN0aXZlIGJ5IGRlZmF1bHQgaWYgdGhlcmUgYXJlIHRoZSBwcmV2aW91cyBwcm9qZWN0cy4gSXQgY291bGQgYmUgdXNlZCBvbmx5IGlmIEVuYWJsZUF1dG9Db21wbGV0aW9uIGFuZCBUaW1lQWNjb3VudGluZzo6VXNlRmlsdGVyIGFyZSBlbmFibGVkLid9ID0KICAgICAgICAnSGEgZW5nZWTDqWx5ZXp2ZSB2YW4sIGFra29yIGF6IGVsxZF6xZEgcHJvamVrdGVrIHN6xbFyxZFqZSBhbGFww6lydGVsbWV6ZXR0ZW4gYmUgdmFuIGthcGNzb2x2YSwgaGEgdmFubmFrIGVsxZF6xZEgcHJvamVrdGVrLiBDc2FrIGFra29yIGhhc3puw6FsaGF0w7MsIGhhIGF6IEVuYWJsZUF1dG9Db21wbGV0aW9uIMOpcyBhIFRpbWVBY2NvdW50aW5nOjpVc2VGaWx0ZXIgZW5nZWTDqWx5ZXp2ZSB2YW4uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSB1c2VyIGlzIGFsbG93ZWQgdG8gZW50ZXIgIm9uIHZhY2F0aW9uIGxlYXZlIiwgIm9uIHNpY2sgbGVhdmUiIGFuZCAib24gb3ZlcnRpbWUgbGVhdmUiIHRvIG11bHRpcGxlIGRhdGVzIGF0IG9uY2UuJ30gPQogICAgICAgICdIYSBlbmdlZMOpbHllenZlIHZhbiwgYWtrb3IgYSBmZWxoYXN6bsOhbMOzbmFrIG1lZ2VuZ2VkZXR0IGVneXN6ZXJyZSB0w7ZiYiBkw6F0dW1ob3og4oCec3phYmFkc8OhZ29u4oCdLCDigJ5iZXRlZ3N6YWJhZHPDoWdvbuKAnSDDqXMg4oCeY3PDunN6dGF0w6Fzb27igJ0gw6lydMOpayBtZWdhZMOhc2EuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnQSBtdW5rYW5hcG9rIGxlZ25hZ3lvYmIgc3rDoW1hLCBhbWVseWVrIHV0w6FuIGEgbXVua2FlZ3lzw6lnZWtldCBiZSBrZWxsIHN6w7pybmkuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICdBIG11bmthZWd5c8OpZ2VrIGJlamVneXrDqXMgbsOpbGvDvGxpIG11bmthbmFwb2sgbGVnbmFneW9iYiBzesOhbWEsIGFtZWx5ZWsgdXTDoW4gZWd5IGZpZ3llbG1lenRldMOpcyBsZXN6IG1lZ2plbGVuw610dmUuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ2aWV3Lid9ID0gJ8OBdHRla2ludMOpcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCB0aW1lIHJlcG9ydGluZy4nfSA9ICdQcm9qZWt0aWTFkSBqZWxlbnTDqXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICdSZWd1bMOhcmlzIGtpZmVqZXrDqXNlayBhIGtpamVsw7ZsdCBwcm9qZWt0IHN6ZXJpbnRpIGtvcmzDoXRvesOzIG3FsXZlbGV0IGxpc3TDoWrDoWhvei4gQSBrdWxjcyBhIHByb2pla3Rla2hleiB0YXJ0YWxtYXogcmVndWzDoXJpcyBraWZlamV6w6lzdCwgYSB0YXJ0YWxvbSBwZWRpZyBhIG3FsXZlbGV0ZWtoZXouJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBwcm9qZWN0IGxpc3QgYWNjb3JkaW5nIHRvIHVzZXIgZ3JvdXBzLiBLZXkgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9uIGZvciBwcm9qZWN0KHMpLCBjb250ZW50IGNvbnRhaW5zIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIGdyb3Vwcy4nfSA9CiAgICAgICAgJ1JlZ3Vsw6FyaXMga2lmZWplesOpc2VrIGEgZmVsaGFzem7DoWzDs2Nzb3BvcnRvayBzemVyaW50aSBrb3Jsw6F0b3rDsyBwcm9qZWt0IGxpc3TDoWrDoWhvei4gQSBrdWxjcyBhIHByb2pla3Rla2hleiB0YXJ0YWxtYXogcmVndWzDoXJpcyBraWZlamV6w6lzdCwgYSB0YXJ0YWxvbSBwZWRpZyBjc29wb3J0b2sgdmVzc3rFkXZlbCBlbHbDoWxhc3p0b3R0IGxpc3TDoWrDoXQgdGFydGFsbWF6emEuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnTWVnYWRqYSwgaG9neSBhIG11bmthaWTFkSBiZXN6w7pyaGF0w7MtZSBrZXpkw6lzaSDDqXMgYmVmZWplesOpc2kgaWTFkWsgbsOpbGvDvGwuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICdFeiBhIG1vZHVsIGtpa8OpbnlzemVyw610aSBhIGJlc3rDunLDoXNva2F0IGF6IGlkxZFlbHN6w6Ftb2zDoXNiYW4uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgbm90aWZpY2F0aW9uIG1vZHVsZSBnaXZlcyBhIHdhcm5pbmcgaWYgdGhlcmUgYXJlIHRvbyBtYW55IGluY29tcGxldGUgd29ya2luZyBkYXlzLid9ID0KICAgICAgICAnRXogYXogw6lydGVzw610w6lzaSBtb2R1bCBlZ3kgZmlneWVsbWV6dGV0w6lzdCBhZCwgaGEgdMO6bCBzb2sgYmVmZWplemV0bGVuIG11bmthbmFwIHRhbMOhbGhhdMOzLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgdGltZSByZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBBY2NvdW50aW5nJ30gPSAnSWTFkWVsc3rDoW1vbMOhcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICdJZMWRZWxzesOhbW9sw6FzIHN6ZXJrZXN6dMOpcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJ0lkxZFlbHN6w6Ftb2zDoXMgw6F0dGVraW50xZEuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyByZXBvcnRpbmcuJ30gPSAnSWTFkWVsc3rDoW1vbMOhcyBqZWxlbnTDqXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBzZXR0aW5ncy4nfSA9ICdJZMWRZWxzesOhbW9sw6FzIGJlw6FsbMOtdMOhc29rLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdGlja2V0IHJlcG9ydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHZpZXcuJ30gPSAnSWTFkWVsc3rDoW1vbMOhcyBuw6l6ZXQuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZy4nfSA9ICdJZMWRZWxzesOhbW9sw6FzLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICdBa2tvciBrZWxsIGhhc3puw6FsbmksIGhhIG7DqWjDoW55IG3FsXZlbGV0IGNzw7Zra2VudGV0dGUgYSBtdW5rYWlkxZF0IChww6lsZMOhdWwgaGEgY3NhayBheiB1dGF6w6FzaSBpZMWRIGZlbGUgdmFuIGtpZml6ZXR2ZTogS3VsY3MgPT4gdXRhesOhczsgVGFydGFsb20gPT4gNTApLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2UgU2VydmljZSBhcyBBY3Rpb24uIFBsZWFzZSBhZGQgYXMga2V5IHRoZSB0aW1lYWNvdW50aW5nIGFjdGlvbiBhbmQgdGhlIHNlcnZpY2UgYXMgdmFsdWUuIFJlZ0V4IGFyZSBhbGxvd2VkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIG5lZWQgdG8gc2V0IGEgZGVmYXVsdCBhY3Rpb24gaWQgd2hlbiB3ZSBzeW5jIFRpbWVVbml0cyB0byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIG5lZWQgdG8gc2V0IGEgZGVmYXVsdCBwcm9qZWN0IGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBzYXZlIHRoZSBBcnRpY2xlIFRpbWVVbml0IHRvIGEgRHluYW1pY0ZpZWxkIGZyb20gdHlwZSAiQXJ0aWNsZSIuIFBsZWFzZSBhZGQgaGVyZSB0aGUgbmFtZSBvZiB0aGUgZmllbGQgaWYgdGhlIGluaXRpbmFsIG5hbWUgaXMgY2hhbmdlZC4nfSA9CiAgICAgICAgJyc7CgoKICAgIHB1c2ggQHsgJFNlbGYtPntKYXZhU2NyaXB0U3RyaW5nc30gLy8gW10gfSwgKAogICAgJ0NhbmNlbCcsCiAgICAnQ29uZmlybSBpbnNlcnQnLAogICAgJ0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknLAogICAgJ01hc3MgRW50cnknLAogICAgJ05vJywKICAgICdQbGVhc2UgY2hvb3NlIGEgcmVhc29uIGZvciBhYnNlbmNlIScsCiAgICAnUGxlYXNlIGNob29zZSBhdCBsZWFzdCBvbmUgZGF5IScsCiAgICAnU3VibWl0JywKICAgICdZZXMnLAogICAgKTsKCn0KCjE7Cg==</File>
        <File Location="Kernel/Language/id_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmlkX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICdQcm95ZWsnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIEVuZCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGwgUHJvamVjdHMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJ01lbGFwb3JrYW4nOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgVGlja2V0SUQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTm8gUHJvamVjdCBmb3IgVGlja2V0IGZvdW5kLid9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byB1cGRhdGUgdXNlciBzZXR0aW5ncyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCB1cGRhdGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZSBVc2VySUQgaXMgbm90IHZhbGlkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IHVzZXIgZGF0YSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIGFkZCB0aW1lIHBlcmlvZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2V0dGluZyd9ID0gJ1BlbmdhdHVyYW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciB1cGRhdGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXcgVXNlcid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgU3RhdHVzJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nVmlldy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldzogTmVlZCAlcyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ob3RpZmljYXRpb24vVGltZUFjY291bnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBpbnNlcnQgeW91ciB3b3JraW5nIGhvdXJzISd9ID0gJ1RvbG9uZyBtYXN1a2thbiBtYXNhIGtlcmphIGFuZGEhJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvVG9vbEJhci9JbmNvbXBsZXRlV29ya2luZ0RheXMucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0luY29tcGxldGUgd29ya2luZyBkYXlzJ30gPSAnJzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50LkVkaXRUaW1lUmVjb3JkcwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhdCBsZWFzdCBvbmUgZGF5ISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXNzIEVudHJ5J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgYSByZWFzb24gZm9yIGFic2VuY2UhJ30gPSAnJzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NvbmZpcm0gaW5zZXJ0J30gPSAnJzsKCiAgICAjIFN5c0NvbmZpZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWN0aXZhdGUgdGhlIHN5bmNocm9uaXNhdGlvbiBvZiBUaWNrZXQtVGltZVVuaXRzIGludG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZ2VudCBpbnRlcmZhY2Ugbm90aWZpY2F0aW9uIG1vZHVsZSB0byBzZWUgdGhlIG51bWJlciBvZiBpbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyBmb3IgdGhlIHVzZXIuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxzbyBzeW5jaHJvbmlzZSBjdXN0b21lcnMgYXMgYSBuZXcgcHJvamVjdCBpZiB0aGV5IGhhdmUgbm90IHlldCBiZWVuIGNyZWF0ZWQgaW4gdGhlIGN1c3RvbWVyIGRhdGFiYXNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FzIHNvb24gYXMgdGhlIHN5bmNocm9uaXNhdGlvbiBvZiB0aWNrZXQgVGltZVVuaXRzIGlzIGFjdGl2YXRlZCwgaXQgaXMgcG9zc2libGUgdG8gc2V0IHRoZSBlbnRyaWVzIFJlYWRPbmx5Lid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NyZWF0ZSBhIG5ldyB0aW1lIGFjY291bnRpbmcgZW50cnkgcmVsYXRlZCB0byB0aGUgdGlja2V0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgbmFtZSBmb3IgbmV3IGFjdGlvbnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgbmFtZSBmb3IgbmV3IHByb2plY3RzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRhdGUgZW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRhdGUgc3RhcnQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGVzY3JpcHRpb24uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgbGVhdmUgZGF5cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBvdmVydGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciB0aGUgc3RhbmRhcmQgd2Vla2x5IGhvdXJzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHN0YXR1cyBmb3IgbmV3IGFjdGlvbnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgdXNlcnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmluZXMgdGhlIHByb2plY3RzIGZvciB3aGljaCBhIHJlbWFyayBpcyByZXF1aXJlZC4gSWYgdGhlIFJlZ0V4cCBtYXRjaGVzIG9uIHRoZSBwcm9qZWN0LCB5b3UgaGF2ZSB0byBpbnNlcnQgYSByZW1hcmsgdG9vLiBUaGUgUmVnRXhwIHVzZSB0aGUgc214IHBhcmFtZXRlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZXRlcm1pbmVzIGlmIHRoZSBzdGF0aXN0aWNzIG1vZHVsZSBtYXkgZ2VuZXJhdGUgdGltZSBhY2NvdW50aW5nIGluZm9ybWF0aW9uLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSBhY2NvdW50aW5nIHNldHRpbmdzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IHRpbWUgcmVjb3JkLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFdmVyeSB0aW1lIGEgYWdlbnQgYWRkIFRpbWVVbml0cyB0byBhIHRpY2tldCwgd2Ugc3luYyB0aGUgaW5mb3JtYXRpb24gdG8gdGhlIHRpbWVhY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGb3IgaG93IG1hbnkgZGF5cyBhZ28geW91IGNhbiBpbnNlcnQgd29ya2luZyB1bml0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgb25seSB1c2VycyB0aGF0IGhhcyBhZGRlZCB3b3JraW5nIHRpbWUgdG8gdGhlIHNlbGVjdGVkIHByb2plY3QgYXJlIHNob3duLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBkcm9wZG93biBlbGVtZW50cyBpbiB0aGUgZWRpdCBzY3JlZW4gYXJlIGNoYW5nZWQgdG8gbW9kZXJuaXplZCBhdXRvY29tcGxldGlvbiBmaWVsZHMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGNhbiBiZSB1c2VkIGluc3RlYWQgdHdvIGxpc3Qgb2YgcHJvamVjdHMgKGxhc3QgYW5kIGFsbCBvbmVzKS4gSXQgY291bGQgYmUgdXNlZCBvbmx5IGlmIFRpbWVBY2NvdW50aW5nOjpFbmFibGVBdXRvQ29tcGxldGlvbiBpcyBlbmFibGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBmaWx0ZXIgZm9yIHRoZSBwcmV2aW91cyBwcm9qZWN0cyBpcyBhY3RpdmUgYnkgZGVmYXVsdCBpZiB0aGVyZSBhcmUgdGhlIHByZXZpb3VzIHByb2plY3RzLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgRW5hYmxlQXV0b0NvbXBsZXRpb24gYW5kIFRpbWVBY2NvdW50aW5nOjpVc2VGaWx0ZXIgYXJlIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIHVzZXIgaXMgYWxsb3dlZCB0byBlbnRlciAib24gdmFjYXRpb24gbGVhdmUiLCAib24gc2ljayBsZWF2ZSIgYW5kICJvbiBvdmVydGltZSBsZWF2ZSIgdG8gbXVsdGlwbGUgZGF0ZXMgYXQgb25jZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXhpbXVtIG51bWJlciBvZiB3b3JraW5nIGRheXMgYWZ0ZXIgd2hpY2ggdGhlIHdvcmtpbmcgdW5pdHMgaGF2ZSB0byBiZSBpbnNlcnRlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXhpbXVtIG51bWJlciBvZiB3b3JraW5nIGRheXMgd2l0aG91dCB3b3JraW5nIHVuaXRzIGVudHJ5IGFmdGVyIHdoaWNoIGEgd2FybmluZyB3aWxsIGJlIHNob3duLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHRpbWUgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZWd1bGFyIGV4cHJlc3Npb25zIGZvciBjb25zdHJhaW5pbmcgYWN0aW9uIGxpc3QgYWNjb3JkaW5nIHRvIHNlbGVjdGVkIHByb2plY3QuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9ucyBmb3IgYWN0aW9uKHMpLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBwcm9qZWN0IGxpc3QgYWNjb3JkaW5nIHRvIHVzZXIgZ3JvdXBzLiBLZXkgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9uIGZvciBwcm9qZWN0KHMpLCBjb250ZW50IGNvbnRhaW5zIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIGdyb3Vwcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaG93IGFjY291bnRlZCB0aW1lcyBmb3IgdGhpcyB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3BlY2lmaWVzIGlmIHdvcmtpbmcgaG91cnMgY2FuIGJlIGluc2VydGVkIHdpdGhvdXQgc3RhcnQgYW5kIGVuZCB0aW1lcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTeW5jaHJvbmlzZSBjdXN0b21lcnMgYXMgYSBuZXcgcHJvamVjdCBpZiB0aGV5IGV4aXN0cyBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBtb2R1bGUgZm9yY2VzIGluc2VydHMgaW4gVGltZUFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgbm90aWZpY2F0aW9uIG1vZHVsZSBnaXZlcyBhIHdhcm5pbmcgaWYgdGhlcmUgYXJlIHRvbyBtYW55IGluY29tcGxldGUgd29ya2luZyBkYXlzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCB0aW1lIHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIEFjY291bnRpbmcnfSA9ICdQZW5naGl0dW5nYW4gd2FrdHUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBSZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIGVkaXQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBvdmVydmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHJlcG9ydGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHNldHRpbmdzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdGlja2V0IHJlcG9ydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG8gdXNlIGlmIHNvbWUgYWN0aW9ucyByZWR1Y2VkIHRoZSB3b3JraW5nIGhvdXJzIChmb3IgZXhhbXBsZSwgaWYgb25seSBoYWxmIG9mIHRoZSB0cmF2ZWxpbmcgdGltZSBpcyBwYWlkIEtleSA9PiB0cmF2ZWxpbmc7IENvbnRlbnQgPT4gNTApLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZSBTZXJ2aWNlIGFzIEFjdGlvbi4gUGxlYXNlIGFkZCBhcyBrZXkgdGhlIHRpbWVhY291bnRpbmcgYWN0aW9uIGFuZCB0aGUgc2VydmljZSBhcyB2YWx1ZS4gUmVnRXggYXJlIGFsbG93ZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2UgbmVlZCB0byBzZXQgYSBkZWZhdWx0IGFjdGlvbiBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2UgbmVlZCB0byBzZXQgYSBkZWZhdWx0IHByb2plY3QgaWQgd2hlbiB3ZSBzeW5jIFRpbWVVbml0cyB0byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIHNhdmUgdGhlIEFydGljbGUgVGltZVVuaXQgdG8gYSBEeW5hbWljRmllbGQgZnJvbSB0eXBlICJBcnRpY2xlIi4gUGxlYXNlIGFkZCBoZXJlIHRoZSBuYW1lIG9mIHRoZSBmaWVsZCBpZiB0aGUgaW5pdGluYWwgbmFtZSBpcyBjaGFuZ2VkLid9ID0KICAgICAgICAnJzsKCgogICAgcHVzaCBAeyAkU2VsZi0+e0phdmFTY3JpcHRTdHJpbmdzfSAvLyBbXSB9LCAoCiAgICAnQ2FuY2VsJywKICAgICdDb25maXJtIGluc2VydCcsCiAgICAnRGVsZXRlIFRpbWUgQWNjb3VudGluZyBFbnRyeScsCiAgICAnTWFzcyBFbnRyeScsCiAgICAnTm8nLAogICAgJ1BsZWFzZSBjaG9vc2UgYSByZWFzb24gZm9yIGFic2VuY2UhJywKICAgICdQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJywKICAgICdTdWJtaXQnLAogICAgJ1llcycsCiAgICApOwoKfQoKMTsK</File>
        <File Location="Kernel/Language/it_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6Oml0X1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJ0NvbXBpdG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYXJrJ30gPSAnQ29tbWVudG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICdWdW9pIHZlcmFtZW50ZSBjYW5jZWxsYXJlIGxhIHJlbmRpY29udGF6aW9uZSB0ZW1wb3JhbGUgZGkgb2dnaSA/JzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRWRpdAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIFJlY29yZCd9ID0gJ01vZGlmaWNhIGxhIHJlbmRpY29udGF6aW9uZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBzZXR0aW5ncyd9ID0gJ1ZhaSBhbGxlIGltcG9zdGF6aW9uaSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXRlIE5hdmlnYXRpb24nfSA9ICdOYXZpZ2F6aW9uZSBwZXIgZGF0YSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJ0dpb3JuaSBzZW56YSBpbmZvcm1hemlvbmknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2VsZWN0IGFsbCBkYXlzJ30gPSAnU2VsZXppb25hIHR1dHRpIGkgZ2lvcm5pJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgZW50cnknfSA9ICdJbnNlcmltZW50byBtYXNzaXZvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgdGhlIHJlYXNvbiBmb3IgeW91ciBhYnNlbmNlIGZvciB0aGUgc2VsZWN0ZWQgZGF5cyd9ID0KICAgICAgICAnUGVyIGZhdm9yZSBzZWxlemlvbmEgaWwgbW90aXZvIGRlbGxhIHR1YSBhc3NlbnphIHBlciBpIGdpb3JuaSBzZWxlemlvbmF0aS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gdmFjYXRpb24nfSA9ICdGZXJpZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnQXNzZW50ZSBwZXIgbWFsYXR0aWEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gb3ZlcnRpbWUgbGVhdmUnfSA9ICdBc3NlbnRlIHBlciByZWN1cGVybyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXF1aXJlZCBmaWVsZHMgYXJlIG1hcmtlZCB3aXRoIGEgIioiLid9ID0gJ0kgY2FtcGkgb2JibGlnYXRvcmkgc29ubyBpbmRpY2F0aSBjb24gIioiLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgaGF2ZSB0byBmaWxsIGluIHN0YXJ0IGFuZCBlbmQgdGltZSBvciBhIHRpbWUgcGVyaW9kLid9ID0gJ0VcJyBvYmJsaWdhdG9yaW8gaW5zZXJpcmUgaW5pemlvIGUgZmluZSBvcHB1cmUgdW4gcGVyaW9kby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCd9ID0gJ1Byb2dldHRvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09yaWdpbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgYWRkIGEgcmVtYXJrIHdpdGggbW9yZSB0aGFuIDggY2hhcmFjdGVycyEnfSA9ICdBZ2dpdW5nZXJlIHVuIGNvbW1lbnRvIGNvbiBwacO5IGRpIDggY2FyYXR0ZXJpISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnTm9uIHBvc3Nvbm8gZXNzZXJlIGluc2VyaXRpIHZhbG9yaSBuZWdhdGl2aS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBTdGFydCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJ05vbiDDqCBwZXJtZXNzbyBpbnNlcmlyZSBvcmUgcmlwZXR1dGUuIExcJ29yYXJpbyBkaSBpbml6aW8gY29pbmNpZGUgY29uIHVuIGFsdHJvIGludGVydmFsbG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgZm9ybWF0ISBQbGVhc2UgZW50ZXIgYSB0aW1lIHdpdGggdGhlIGZvcm1hdCBISDpNTS4nfSA9ICdGb3JtYXRvIG5vbiB2YWxpZG8uIEluc2VyaXJlIHVuIG9yYXJpbyBuZWwgZm9ybWF0byBISDpNTS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnMjQ6MDAgaXMgb25seSBwZXJtaXR0ZWQgYXMgZW5kIHRpbWUuJ30gPSAnTFwnb3JhIDI0OjAwIMOoIGNvbnNlbnRpdGEgc29sbyBjb21lIG9yYSBkaSBmaW5lLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHRpbWUhIEEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzLid9ID0gJ09yYXJpbyBub24gdmFsaWRvISBJbiB1biBnaW9ybm8gY2kgc29ubyBzb2xvIDI0IG9yZS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJ0xcJ29yYXJpbyBkaSBmaW5lIMOoIHBvc3RlcmlvcmUgYWxsXCdvcmFyaW8gZGkgaW5pemlvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIEVuZCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJ05vbiDDqCBwZXJtZXNzbyBpbnNlcmlyZSBvcmUgcmlwZXR1dGUuIExcJ29yYXJpbyBkaSBmaW5lIGNvaW5jaWRlIGNvbiB1biBhbHRybyBpbnRlcnZhbGxvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnUGVyaW9kbyBub24gdmFsaWRvLiBVbmEgZ2lvcm5hdGEgaGEgc29sbyAyNCBvcmUuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnVW4gcGVyaW9kbyB2YWxpZG8gZGV2ZSBlc3NlcmUgbWFnZ2lvcmUgZGkgemVyby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIE5lZ2F0aXZlIHBlcmlvZHMgYXJlIG5vdCBhbGxvd2VkLid9ID0gJ1BlcmlvZG8gbm9uIHZhbGlkby4gVmFsb3JpIG5lZ2F0aXZpIG5vbiBhbW1lc3NpLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWJtaXQgY2hhbmdlcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgb25lIHJvdyd9ID0gJ0FnZ2l1bmdlcmUgdW5hIHJpZ2EnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICdQdW9pIHNlbGV6aW9uYXJlIHNvbG8gdW4gZWxlbWVudG8hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gc2ljayBsZWF2ZT8nfSA9ICdTZWkgc2ljdXJvIGRpIGF2ZXIgbGF2b3JhdG8gbWVudHJlIGVyaSBhc3NlbnRlIHBlciBtYWxhdHRpYT8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiB2YWNhdGlvbj8nfSA9ICdTZWkgc2ljdXJvIGRpIGF2ZXIgbGF2b3JhdG8gbWVudHJlIGVyaSBpbiBmZXJpZT8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBvdmVydGltZSBsZWF2ZT8nfSA9CiAgICAgICAgJ1NlaSBzaWN1cm8gZGkgYXZlciBsYXZvcmF0byBtZW50cmUgZXJpIGFzc2VudGUgcGVyIHJlY3VwZXJvID8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCBtb3JlIHRoYW4gMTYgaG91cnM/J30gPSAnU2VpIHNpY3VybyBkaSBhdmVyIGxhdm9yYXRvIHBpw7kgZGkgMTYgb3JlPyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnQ3J1c2NvdHRvIG1lbnNpbGUgZGkgcmVuZGljb250YXppb25lIHRlbXBvcmFsZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAoSG91cnMpJ30gPSAnU3RyYW9yZGluYXJpbyAob3JlKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAodGhpcyBtb250aCknfSA9ICdTdHJhb3JkaW5hcmlvIChxdWVzdG8gbWVzZSknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRvdGFsKSd9ID0gJ1N0cmFvcmRpbmFyaW8gKHRvdGFsZSknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnVG90YWxlIG9yZSBkaSByZWN1cGVybyBkaXNwb25pYmlsaSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiAoRGF5cyknfSA9ICdGZXJpZSAoZ2lvcm5pKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICdGZXJpZSB1dGlsaXp6YXRlIChxdWVzdG8gbWVzZSknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJ0ZlcmllIHV0aWxpenphdGUgKHRvdGFsZSknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIHZhY2F0aW9uJ30gPSAnRmVyaWUgcmVzaWR1ZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIExlYXZlIChEYXlzKSd9ID0gJ0Fzc2VuemUgcGVyIG1hbGF0dGlhIChnaW9ybmkpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUgdGFrZW4gKHRoaXMgbW9udGgpJ30gPSAnQXNzZW56ZSBwZXIgbWFsYXR0aWEgdXRpbGl6emF0ZSAocXVlc3RvIG1lc2UpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUgdGFrZW4gKHRvdGFsKSd9ID0gJ0Fzc2VuemUgcGVyIG1hbGF0dGlhICh0b3RhbGUpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnTWVzZSBwcmVjZWRlbnRlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICdNZXNlIHNlZ3VlbnRlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlZWtkYXknfSA9ICdHaW9ybm8gZGVsbGEgc2V0dGltYW5hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dvcmtpbmcgSG91cnMnfSA9ICdPcmUgbGF2b3JhdGl2ZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUb3RhbCB3b3JrZWQgaG91cnMnfSA9ICdUb3RhbGUgb3JlIGxhdm9yYXRlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXJcJ3MgcHJvamVjdCBvdmVydmlldyd9ID0gJ1Zpc3VhbGl6emF6aW9uZSBkZWwgcHJvZ2V0dG8gLSBVdGVudGUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnT3JlIChtZW5zaWxpKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyAoTGlmZXRpbWUpJ30gPSAnT3JlIChnbG9iYWxpKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHcmFuZCB0b3RhbCd9ID0gJ1RvdGFsZSBvbW5pY29tcHJlbnNpdm8nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnUmVwb3J0IGRlbCB0ZW1wbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNb250aCBOYXZpZ2F0aW9uJ30gPSAnTmF2aWdhemlvbmUgcGVyIG1lc2UnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJ1ZhaSBhbGxhIGRhdGEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciByZXBvcnRzJ30gPSAnUmVwb3J0IHV0ZW50ZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNb250aGx5IHRvdGFsJ30gPSAnVG90YWxlIG1lbnNpbGUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGlmZXRpbWUgdG90YWwnfSA9ICdUb3RhbGUgZ0xvYmFsZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJ0Fzc2VuemUgcGVyIHJlY3VwZXJvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uJ30gPSAnRmVyaWUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSd9ID0gJ01hbGF0dGlhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJ0dpb3JuaSByaW1hbmVudGknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCByZXBvcnRzJ30gPSAnUmlhc3N1bnRpIHByb2dldHRvJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nUHJvamVjdAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCByZXBvcnQnfSA9ICdSaWFzc3VudG8gcHJvZ2V0dG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gcmVwb3J0aW5nIG92ZXJ2aWV3J30gPSAnVmFpIGFsIHJpZXBpbG9nbyBkaSByZXBvcnRpc3RpY2EnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICdWZW5nb25vIG1vc3RyYXRpIHNvbG8gZ2xpIHV0ZW50aSBhdHRpdmkgZGkgcXVlc3RvIHByb2dldHRvLiBQZXIgY2FtYmlhcmUgcXVlc3RvIGNvbXBvcnRhZW50byBhZ2dpb3JuYXJlIGlsIHBhcmFtZXRybzogJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0N1cnJlbnRseSBhbGwgdGltZSBhY2NvdW50aW5nIHVzZXJzIGFyZSBzaG93bi4gVG8gY2hhbmdlIHRoaXMgYmVoYXZpb3IsIHBsZWFzZSB1cGRhdGUgc2V0dGluZzonfSA9CiAgICAgICAgJ1Zlbmdvbm8gbW9zdHJhdGkgdHV0dGkgZ2xpIHV0ZW50aSBwZXIgbGEgcmVuZGljb250YXppb25lIHRlbXBvLiBQZXIgY2FtYmlhcmUgcXVlc3RvIGNvbXBvcnRhbWVudG8gYWdnaW9ybmFyZSBpbCBwYXJhbWV0cm86JzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICdNb2RpZmljYXJlIGxlIGNvbmZpZ3VyYXppb25pIGRpIGdlc3Rpb25lIGRlbCB0ZW1wbyBkZWwgcHJvZ2V0dG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBwcm9qZWN0J30gPSAnQWdnaXVuZ2VyZSBwcm9nZXR0byc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBzZXR0aW5ncyBvdmVydmlldyd9ID0gJ1ZhaSBhbCByaWVwaWxvZ28gaW1wb3N0YXppb25pJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBQcm9qZWN0J30gPSAnQWdnaXVuZ2VyZSBwcm9nZXR0byc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFByb2plY3QgU2V0dGluZ3MnfSA9ICdNb2RpZmljYXJlIGxhIGNvbmZpZ3VyYXppb25lIGRlbCBwcm9nZXR0byc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgcHJvamVjdCB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAnRXNpc3RlIGdpw6AgdW4gcHJvZ2V0dG8gY29uIHF1ZXN0byBub21lLiBTY2VnbGVpcmUgdW4gbm9tZSBkaXZlcnNvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgQWNjb3VudGluZyBTZXR0aW5ncyd9ID0gJ01vZGlmaWNhcmUgbGUgY29uZmlndXJhemlvbmkgZGVsbGEgcmVuZGljb250YXppb25lJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCB0YXNrJ30gPSAnQWdnaXVuZ2VyZSBjb21waXRvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBhIHVzZXIgdG8gdGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGaWx0ZXIgZm9yIHByb2plY3RzLCB0YXNrcyBvciB1c2Vycyd9ID0gJ0ZpbHRybyBwZXIgcHJvZ2V0dGksIGF0dGl2aXTDoCBvIHV0ZW50aSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHBlcmlvZHMgY2FuIG5vdCBiZSBkZWxldGVkLid9ID0gJ0kgcGVyaW9kaSBkaSB0ZW1wbyBub24gcG9zc29ubyBlc3NlcmUgZWxpbWluYXRpLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IExpc3QnfSA9ICdFbGVuY28gZGVpIHByb2dldHRpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgTGlzdCd9ID0gJ0VsZW5jbyBkZWkgY29tcGl0aSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgVGFzayd9ID0gJ0FnZ2l1bmdlcmUgY29tcGl0byc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRhc2sgU2V0dGluZ3MnfSA9ICdNb2RpZmljYXJlIGxhIGNvbmZpZ3VyYXppb25lIGRlaSBjb21waXRpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICdFc2lzdGUgZ2nDoCB1biB0YXNrIGNvbiBxdWVzdG8gbm9tZS4gU2NlZ2xpZXJlIHVuIG5vbWUgZGl2ZXJzby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnRWxlbmNvIHV0ZW50aSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIFNldHRpbmdzJ30gPSAnSW1wb3N0YXppb25pIHV0ZW50ZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gc2VlIG92ZXJ0aW1lcyd9ID0gJ0xcJ1V0ZW50ZSBwdcOyIHZlZGVyZSBsbyBzdHJhb3JkaW5hcmlvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgT3ZlcnRpbWUnfSA9ICdNb3N0cmFyZSBzdHJhb3JkaW5hcmknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIGNyZWF0ZSBwcm9qZWN0cyd9ID0gJ0xcJ1V0ZW50ZSBwdcOyIGNyZWFyZSBwcm9nZXR0aSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyBwcm9qZWN0IGNyZWF0aW9uJ30gPSAnQ29uc2VudGlyZSBsYSBjcmVhemlvbmUgZGVsIHByb2dldHRvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBza2lwIHRpbWUgYWNjb3VudGluZyd9ID0gJ0xcJ3V0ZW50ZSDDqCBhdXRvcml6emF0byBhIHNhbHRhcmUgbGEgY29udGFiaWxpdMOgIGRlbCB0ZW1wbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyB0aW1lIGFjY291bnRpbmcgc2tpcHBpbmcnfSA9ICdDb25zZW50aSBpbCDigIvigItzYWx0byBkZWxsYSBjb250YWJpbGl0w6AgZGVsIHRlbXBvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIHRoaXMgb3B0aW9uIGlzIHNlbGVjdGVkLCB0aW1lIGFjY291bnRpbmcgaXMgZWZmZWN0aXZlbHkgb3B0aW9uYWwgZm9yIHRoZSB1c2VyLid9ID0KICAgICAgICAnU2UgcXVlc3RhIG9wemlvbmUgw6ggc2VsZXppb25hdGEsIGxhIGNvbnRhYmlsaXTDoCB0ZW1wb3JhbGUgw6ggZWZmZXR0aXZhbWVudGUgZmFjb2x0YXRpdmEgcGVyIGxcJ3V0ZW50ZS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlcmUgd2lsbCBiZSBubyB3YXJuaW5ncyBhYm91dCBtaXNzaW5nIGVudHJpZXMgYW5kIG5vIGVudHJ5IGVuZm9yY2VtZW50Lid9ID0KICAgICAgICAnTm9uIGNpIHNhcmFubm8gYXZ2aXNpIGluIG1lcml0byBhIHZvY2kgbWFuY2FudGkgZSBuZXNzdW5hIGFwcGxpY2F6aW9uZSBkaSBhY2Nlc3NvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFNwYW5zJ30gPSAnSW50ZXJ2YWxsaSBkaSB0ZW1wbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICdQZXJpb2RvIGRpIGluaXppbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgRW5kJ30gPSAnUGVyaW9kbyBkaSB0ZXJtaW5lJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RheXMgb2YgVmFjYXRpb24nfSA9ICdHaW9ybmkgZGkgQXNzZW56YSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyBwZXIgV2Vlayd9ID0gJ09yZSBhbGxhIHNldHRpbWFuYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBdXRob3JpemVkIE92ZXJ0aW1lJ30gPSAnU3RyYW9yZGluYXJpIGF1dG9yaXp6YXRpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N0YXJ0IERhdGUnfSA9ICdEYXRhIGRpIGluaXppbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICdJbnNlcmlyZSB1bmEgZGF0YSB2YWxpZGEuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VuZCBEYXRlJ30gPSAnRGF0YSBGaW5lJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBlbmQgbXVzdCBiZSBhZnRlciBwZXJpb2QgYmVnaW4uJ30gPSAnSWwgcGVyaW9kbyBmaW5hbGUgZGV2ZSBlc3NlcmUgcG9zdGVyaW9yZSBhbCBwZXJpb2RvIGluaXppYWxlLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMZWF2ZSBEYXlzJ30gPSAnR2lvcm5pIGRpIGFzc2VuemEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2x5IEhvdXJzJ30gPSAnT3JhcmkgZGVsbGEgU2V0dGltYW5hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lJ30gPSAnU3RyYW9yZGluYXJpbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyB0aW1lIHBlcmlvZHMgZm91bmQuJ30gPSAnTm9uIGNpIHNvbm8gcGVyaW9kaS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRpbWUgcGVyaW9kJ30gPSAnQWdnaXVuZ2kgcGVyaW9kbyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgVGltZSBSZWNvcmQnfSA9ICdWaXN1YWxpenphcmUgcmVnaXN0cm8gb3JhcmlvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnVmlzdWFsaXp6YXppb25lIGRpICAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJldmlvdXMgZGF5J30gPSAnR2lvcm5vIHByZWNlZGVudGUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV4dCBkYXknfSA9ICdHaW9ybm8gc3VjY2Vzc2l2byc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICdOZXNzdW4gZGF0byB0cm92YXRvIHBlciBxdWVzdG8gZ2lvcm5vLic7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ0VkaXQucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgV29ya2luZyBVbml0cyEnfSA9ICdOb24gcHVvaSBpbnNlcmlyZSBsZSB1bml0w6AgbGF2b3JhdGl2ZSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBQcm9qZWN0cyd9ID0gJ1VsdGltaSBwcm9nZXR0aSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3Qgc2F2ZSBzZXR0aW5ncywgYmVjYXVzZSBhIGRheSBoYXMgb25seSAyNCBob3VycyEnfSA9ICdOb24gcHVvaSBzYWx2YXJlIGxlIGltcG9zdGF6aW9uaSwgcGVyY2jDqCB1biBnaW9ybm8gaGEgc29sbyAyNCBvcmUhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICdOb24gcHVvaSBjYW5jZWxsYXJlIGxlIHVuaXTDoCBsYXZvcmF0aXZlISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIERhdGUgaXMgb3V0IG9mIGxpbWl0LCBidXQgeW91IGhhdmVuXCd0IGluc2VydCB0aGlzIGRheSB5ZXQsIHNvIHlvdSBnZXQgb25lKCEpIGNoYW5jZSB0byBpbnNlcnQnfSA9CiAgICAgICAgJ1F1ZXN0YSBEYXRhIMOoIGZ1b3JpIGxpbWl0ZSBtYXNzaW1vLCBtYSBub24gaGFpIGFuY29yYSBhbmNvcmEgaW5zZXJpdG8gcXVlc3RvIGdpb3JubywgcXVpbmRpIGhhaSBhbmNvcmEgdW5hICghKSBwb3NzaWJpbGl0w6AgZGkgaW5zZXJpcm5lIHVuby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICdHaW9ybmkgbGF2b3JhdGl2aSBpbmNvbXBsZXRpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Y2Nlc3NmdWwgaW5zZXJ0ISd9ID0gJ0luc2VyaW1lbnRvIGF2dmVudXRvIGNvbiBzdWNjZXNzbyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRXJyb3Igd2hpbGUgaW5zZXJ0aW5nIG11bHRpcGxlIGRhdGVzISd9ID0gJ1NpIMOoIHZlcmlmaWNhdG8gdW4gZXJyb3JlIG5lbGxcJ2luc2VyaW1lbnRvIGRpIGRhdGUgbXVsdGlwbGUhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Y2Nlc3NmdWxseSBpbnNlcnRlZCBlbnRyaWVzIGZvciBzZXZlcmFsIGRhdGVzISd9ID0gJ0luc2VyaW1lbnRvIGRpIGRhdGUgbXVsdGlwbGUgYXZ2ZW51dG8gY29uIHN1Y2Nlc3NvISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbnRlcmVkIGRhdGUgd2FzIGludmFsaWQhIERhdGUgd2FzIGNoYW5nZWQgdG8gdG9kYXkuJ30gPSAnTGEgZGF0YSBpbnNlcml0YSBub24gw6ggdmFsaWRhISBFXCcgc3RhdGEgaW1wb3N0YXRhIGxhIGRhdGEgZGkgb2dnaS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnTmVzc3VuIHBlcmlvZG8gZGkgdGVtcG8gY29uZmlndXJhdG8sIG8gbGEgZGF0YSBzcGVjaWZpY2F0YSDDqCBmdW9yaSBkYWkgcGVyaW9kaSBkaSB0ZW1wbyBkZWZpbml0aS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNvbnRhY3QgdGhlIHRpbWUgYWNjb3VudGluZyBhZG1pbmlzdHJhdG9yIHRvIHVwZGF0ZSB5b3VyIHRpbWUgcGVyaW9kcyEnfSA9CiAgICAgICAgJ1BlciBmYXZvcmUsIGNvbnRhdHRhcmUgbFwnYW1taW5pc3RyYXppb25lIGRlbGxhIGNvbnRhYmlsaXp6YXppb25lIHRlbXBvcmFsZSBwZXIgYWdnaW9ybmFyZSBpIHR1b2kgaW50ZXJ2YWxsaSBkaSB0ZW1wbyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJ1VsdGltaSBwcm9nZXR0aSBzZWxlemlvbmF0aSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGwgUHJvamVjdHMnfSA9ICdUdXR0aSBpIHByb2dldHRpJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBOZWVkIFByb2plY3RJRCd9ID0gJ1JhcHBvcnRvUHJvZ2V0dG86IFByb2plY3RJRCBuZWNlc3NhcmlvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnQ29tcGlsYW5kbyBpbCByYXBwb3J0byBkZWwgcHJvZ2V0dG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nJ30gPSAnUmVwb3J0aXN0aWNhJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBOZWVkIFRpY2tldElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5vIFByb2plY3QgZm9yIFRpY2tldCBmb3VuZC4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdTZXR0aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gdXBkYXRlIHVzZXIgc2V0dGluZ3MhJ30gPSAnSW1wb3NzaWJpbGUgYWdnaW9ybmFyZSBsZSBpbXBvc3RhemlvbmkgdXRlbnRlISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJ1Byb2dldHRvIGFnZ2l1bnRvISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAnUHJvZ2V0dG8gYWdnaW9ybmF0byEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayBhZGRlZCEnfSA9ICdBdHRpdml0w6AgYWdnaXVudGEhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICdBdHRpdml0w6AgYWdnaW9ybmF0YSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnTG8gVXNlcklEIG5vbiDDqCB2YWxpZG8hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJ05vbiBwdW9pIGluc2VyaXJlIGkgZGF0aSBkZWxsXCd1dGVudGUhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byBhZGQgdGltZSBwZXJpb2QhJ30gPSAnTm9uIHNlaSBhYmlsaXRhdG8gYWQgaW5zZXJpcmUgaSBwZXJpb2RpIGRpIHRlbXBvISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnSW1wb3N0YXppb25lJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICdVdGVudGUgYWdnaW9ybmF0byEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICdVdGVudGUgaW5zZXJpdG8hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05ldyBVc2VyJ30gPSAnTnVvdm8gdXRlbnRlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBTdGF0dXMnfSA9ICdTdGF0byBkaSBwZXJpb2RvJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nVmlldy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldzogTmVlZCAlcyEnfSA9ICdWaXN0YTogJXMgcmljaGllc3RvISc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL091dHB1dC9IVE1ML05vdGlmaWNhdGlvbi9UaW1lQWNjb3VudGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGluc2VydCB5b3VyIHdvcmtpbmcgaG91cnMhJ30gPSAnSW5zZXJpcmUgbFwnb3JhcmlvIGxhdm9yYXRpdm8hJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvVG9vbEJhci9JbmNvbXBsZXRlV29ya2luZ0RheXMucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0luY29tcGxldGUgd29ya2luZyBkYXlzJ30gPSAnR2lvcm5pIGxhdm9yYXRpdmkgaW5jb21wbGV0aSc7CgogICAgIyBKUyBGaWxlOiBUaW1lQWNjb3VudGluZy5BZ2VudC5FZGl0VGltZVJlY29yZHMKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnfSA9ICdTcGVjaWZpY2FyZSBhbG1lbm8gdW4gZ2lvcm5vISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXNzIEVudHJ5J30gPSAnSW5zZXJpbWVudG8gbWFzc2l2byc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGEgcmVhc29uIGZvciBhYnNlbmNlISd9ID0gJ1NlbGV6aW9uYXJlIHVuIG1vdGl2byBwZXIgbFwnYXNzZW56YSEnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICdDYW5jZWxsYXJlIHZvY2UgZGkgcmVuZGljb250YXppb25lJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NvbmZpcm0gaW5zZXJ0J30gPSAnQ29uZmVybWFyZSBpbnNlcmltZW50byc7CgogICAgIyBTeXNDb25maWcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FjdGl2YXRlIHRoZSBzeW5jaHJvbmlzYXRpb24gb2YgVGlja2V0LVRpbWVVbml0cyBpbnRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWdlbnQgaW50ZXJmYWNlIG5vdGlmaWNhdGlvbiBtb2R1bGUgdG8gc2VlIHRoZSBudW1iZXIgb2YgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMgZm9yIHRoZSB1c2VyLid9ID0KICAgICAgICAnTW9kdWxvIGRpIG5vdGlmaWNhIGRlbGxcJ2ludGVyZmFjY2lhIGFnZW50ZSBwZXIgdmVkZXJlIGlsIG51bWVybyBkaSBnaW9ybmkgbGF2b3JhdGl2aSBpbmNvbXBsZXRpIHBlciBsXCd1dGVudGUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxzbyBzeW5jaHJvbmlzZSBjdXN0b21lcnMgYXMgYSBuZXcgcHJvamVjdCBpZiB0aGV5IGhhdmUgbm90IHlldCBiZWVuIGNyZWF0ZWQgaW4gdGhlIGN1c3RvbWVyIGRhdGFiYXNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FzIHNvb24gYXMgdGhlIHN5bmNocm9uaXNhdGlvbiBvZiB0aWNrZXQgVGltZVVuaXRzIGlzIGFjdGl2YXRlZCwgaXQgaXMgcG9zc2libGUgdG8gc2V0IHRoZSBlbnRyaWVzIFJlYWRPbmx5Lid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NyZWF0ZSBhIG5ldyB0aW1lIGFjY291bnRpbmcgZW50cnkgcmVsYXRlZCB0byB0aGUgdGlja2V0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgbmFtZSBmb3IgbmV3IGFjdGlvbnMuJ30gPSAnTm9tZSBwcmVkZWZpbml0byBwZXIgbGUgbnVvdmUgYXppb25pLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IG5hbWUgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICdOb21lIHByZWRlZmluaXRvIHBlciBpIG51b3ZpIHByb2dldHRpLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRhdGUgZW5kLid9ID0gJ1ZhbG9yZSBwcmVkZWZpbml0byBwZXIgbGEgZGF0YSBkaSBmaW5lLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRhdGUgc3RhcnQuJ30gPSAnVmFsb3JlIHByZWRlZmluaXRvIHBlciBsYSBkYXRhIGRpIGluaXppby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICdWYWxvcmUgcHJlZGVmaW5pdG8gcGVyIGxhIGRlc2NyaXppb25lLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGxlYXZlIGRheXMuJ30gPSAnVmFsb3JlIHByZWRlZmluaXRvIHBlciBpIGdpb3JuaSBkaSBhc3NlbnphL3ZhY2FuemEuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3Igb3ZlcnRpbWUuJ30gPSAnVmFsb3JlIHByZWRlZmluaXRvIHBlciBsbyBzdHJhb3JkaW5hcmlvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnVmFsb3JlIHByZWRlZmluaXRvIHBlciBsXCdvcmFyaW8gc2V0dGltYW5hbGUgc3RhbmRhcmQuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICdWYWxvcmUgcHJlZGVmaW5pdG8gcGVyIGxlIG51b3ZlIGF6aW9uaS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICdWYWxvcmUgcHJlZGVmaW5pdG8gcGVyIGkgbnVvdmkgcHJvZ2V0dGkuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgdXNlcnMuJ30gPSAnVmFsb3JlIHByZWRlZmluaXRvIHBlciBpIG51b3ZpIHV0ZW50aS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnRGVmaW5pc2NlIGkgcHJvZ2V0dGkgcGVyIGkgcXVhbGkgdW5hIGFubm90YXppb25lIMOoIG9iYmxpZ2F0b3JpYS4gU2UgbGEgUmVnRXhwIGNvaW5jaWRlIGlsIHByb2dldHRvIHNpIMOoIG9iYmxpZ2F0aSBhZCBpbnNlcmlyZSB1bmEgYW5ub3RhemlvbmUuIExhIFJlZ0V4cCB1dGlsaXp6YSBpbCBwYXJhbWV0cm8gc214Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZXRlcm1pbmVzIGlmIHRoZSBzdGF0aXN0aWNzIG1vZHVsZSBtYXkgZ2VuZXJhdGUgdGltZSBhY2NvdW50aW5nIGluZm9ybWF0aW9uLid9ID0KICAgICAgICAnRGV0ZXJtaW5hIHNlIGlsIG1vZHVsbyBzdGF0aXN0aWNoZSBwdcOyIGdlbmVyYXJlIGluZm9ybWF6aW9uaSBkaSByZW5kaWNvbnRhemlvbmUgdGVtcG9yYWxlLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IHRpbWUgYWNjb3VudGluZyBzZXR0aW5ncy4nfSA9ICdNb2RpZmljYSBsZSBpbXBvc3RhemlvbmkgZGVsbGEgcmVuZGljb250YXppb25lIHRlbXBvcmFsZS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIHJlY29yZC4nfSA9ICdNb2RpZmljYSByZWdpc3RybyBvcmFyaW8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRXZlcnkgdGltZSBhIGFnZW50IGFkZCBUaW1lVW5pdHMgdG8gYSB0aWNrZXQsIHdlIHN5bmMgdGhlIGluZm9ybWF0aW9uIHRvIHRoZSB0aW1lYWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRm9yIGhvdyBtYW55IGRheXMgYWdvIHlvdSBjYW4gaW5zZXJ0IHdvcmtpbmcgdW5pdHMuJ30gPSAnTnVtZXJvIG1hc3NpbW8gZGkgZ2lvcm5pIG5lbCBwYXNzYXRvIGluIGN1aSDDqCBwb3NzaWJpbGUgaW5zZXJpcmUgbGUgdW5pdMOgIGRpIGxhdm9yby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgb25seSB1c2VycyB0aGF0IGhhcyBhZGRlZCB3b3JraW5nIHRpbWUgdG8gdGhlIHNlbGVjdGVkIHByb2plY3QgYXJlIHNob3duLid9ID0KICAgICAgICAnU2UgYWJpbGl0YXRvLCBtb3N0cmEgc29sbyBnbGkgdXRlbnRpIGNoZSBoYW5ubyBhZ2dpdW50byB2b2NpIGRpIHRlbXBvIGxhdm9ybyBhbCBwcm9nZXR0byBzZWxlemlvbmF0by4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJ1NlIGFiaWxpdGF0YSwgZ2xpIGVsZW1lbnRpIGEgdGVuZGluYSBuZWxsYSBzY2hlcm1hdGEgZGkgbW9kaWZpY2Egc29ubyBzb3N0aXR1aXRpIGRhIHBpw7kgbW9kZXJuaSBjYW1waSBjb24gY29tcGxldGFtZW50byBhdXRvbWF0aWNvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICdTZSBhYmlsaXRhdGEsIGlsIGZpbHRybyBwZXIgaSBwcm9nZXR0aSBwcmVjZWRlbnRpIHB1w7IgZXNzZXJlIHV0aWxpenphdG8gYWwgcG9zdG8gZGkgZHVlIGVsZW5jaGkgZGkgcHJvZ2V0dGkgKHVsdGltbyBlIHR1dHRpKS4gUHXDsiBlc3NlcmUgdXRpbGl6emF0byBzb2xvIHNlIFRpbWVBY2NvdW50aW5nOjpFbmFibGVBdXRvQ29tcGxldGlvbiDDqCBhYmlsaXRhdGEuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBmaWx0ZXIgZm9yIHRoZSBwcmV2aW91cyBwcm9qZWN0cyBpcyBhY3RpdmUgYnkgZGVmYXVsdCBpZiB0aGVyZSBhcmUgdGhlIHByZXZpb3VzIHByb2plY3RzLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgRW5hYmxlQXV0b0NvbXBsZXRpb24gYW5kIFRpbWVBY2NvdW50aW5nOjpVc2VGaWx0ZXIgYXJlIGVuYWJsZWQuJ30gPQogICAgICAgICdTZSBhYmlsaXRhdGEsIGlsIGZpbHRybyBwZXIgaSBwcm9nZXR0aSBwcmVjZWRlbnRpIMOoIGF0dGl2byBpbiBtb2RvIHByZWRlZmluaXRvIHNlIGNpIHNvbm8gcHJvZ2V0dGkgcHJlY2VkZW50aS4gUHXDsiBlc3NlcmUgdXRpbGl6emF0byBzb2xvIHNlIEVuYWJsZUF1dG9Db21wbGV0aW9uIGUgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBzb25vIGFiaWxpdGF0aS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIHVzZXIgaXMgYWxsb3dlZCB0byBlbnRlciAib24gdmFjYXRpb24gbGVhdmUiLCAib24gc2ljayBsZWF2ZSIgYW5kICJvbiBvdmVydGltZSBsZWF2ZSIgdG8gbXVsdGlwbGUgZGF0ZXMgYXQgb25jZS4nfSA9CiAgICAgICAgJ1NlIGFiaWxpdGF0bywgw6ggcG9zc2liaWxlIHBlciBnbGkgdXRlbnRpIGluc2VyaXJlIGkgY2FtcGkgInBlcmlvZG8gZGkgdmFjYW56YSIsICJwZXJpb2RvIGRpIG1hbGF0dGlhIiBlICJzdHJhb3JkaW5hcmlvIiBjb24gZGF0ZSBtdWx0aXBsZS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWF4aW11bSBudW1iZXIgb2Ygd29ya2luZyBkYXlzIGFmdGVyIHdoaWNoIHRoZSB3b3JraW5nIHVuaXRzIGhhdmUgdG8gYmUgaW5zZXJ0ZWQuJ30gPQogICAgICAgICdOdW1lcm8gbWFzc2ltbyBkaSBnaW9ybmkgbGF2b3JhdGl2aSBpbiBjdWkgw6ggcG9zc2liaWxlIGluc2VyaXJlIGxlIHZvY2kgZGkgdW5pdMOgIGRpIGxhdm9yby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWF4aW11bSBudW1iZXIgb2Ygd29ya2luZyBkYXlzIHdpdGhvdXQgd29ya2luZyB1bml0cyBlbnRyeSBhZnRlciB3aGljaCBhIHdhcm5pbmcgd2lsbCBiZSBzaG93bi4nfSA9CiAgICAgICAgJ051bWVybyBtYXNzaW1vIGRpIGdpb3JuaSBsYXZvcmF0aXZpIGNoZSBub24gaGFubm8gdm9jaSBkaSB1bml0w6AgZGkgbGF2b3JvIG9sdHJlIGlsIHF1YWxlIHZlcnLDoCBtb3N0cmF0byB1biBhdnZpc28uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ2aWV3Lid9ID0gJ1Zpc3RhIEdsb2JhbGUuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnUmFwcG9ydG8gZGVsIHRlbXBvIGRpIHByb2dldHRvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZWd1bGFyIGV4cHJlc3Npb25zIGZvciBjb25zdHJhaW5pbmcgYWN0aW9uIGxpc3QgYWNjb3JkaW5nIHRvIHNlbGVjdGVkIHByb2plY3QuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9ucyBmb3IgYWN0aW9uKHMpLid9ID0KICAgICAgICAnRXNwcmVzc2lvbmkgcmVnb2xhcmkgcGVyIHZpbmNvbGFyZSBsaXN0YSBkaSBhemlvbmkgaW4gYmFzZSBhbCBwcm9nZXR0byBzZWxlemlvbmF0by4gTGEgY2hpYXZlIGNvbnRpZW5lIHVuXCdlc3ByZXNzaW9uZSByZWdvbGFyZSBwZXIgaWwvaSBwcm9nZXR0by9pLCBpbCBjb250ZW51dG8gY29udGllbmUgZXNwcmVzc2lvbmkgcmVnb2xhcmkgcGVyIGxlIGF6aW9uaS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnRXNwcmVzc2lvbmkgcmVnb2xhcmkgcGVyIHZpbmNvbGFyZSBsaXN0YSBkaSBwcm9nZXR0aSBpbiBiYXNlIGFpIGdydXBwaSB1dGVudGUuIExhIGNoaWF2ZSBjb250aWVuZSB1blwnZXNwcmVzc2lvbmUgcmVnb2xhcmUgcGVyIGlsL2kgcHJvZ2V0dG8vaSwgaWwgY29udGVudXRvIGNvbnRpZW5lIGVzcHJlc3Npb25pIHJlZ29sYXJpIHBlciBsZSBhemlvbmkuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnU3BlY2lmaWNhIHNlIGxlIG9yZSBsYXZvcmF0aXZlIHBvc3Nvbm8gZXNzZXJlIGluc2VyaXRlIHNlbnphIG9yYXJpIGRpIGluaXppbyBlIGRpIGZpbmUuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICdRdWVzdG8gbW9kdWxvIGZvcnphIGdsaSBpbnNlcmltZW50aSBpbiBUaW1lQWNjb3VudGluZy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICdRdWVzdG8gbW9kdWxvIGRpIG5vdGlmaWNhIGdlbmVyYSB1biBhdnZpc28gc2UgY2kgc29ubyB0cm9wcGkgZ2lvcm5pIGxhdm9yYXRpdmkgbm9uIGNvbXBsZXRpLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgdGltZSByZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBBY2NvdW50aW5nJ30gPSAnUmVuZGljb250YXppb25lIFRlbXBvcmFsZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICdNb2RpZmljYSByZW5kaWNvbnRhemlvbmUgdGVtcG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBvdmVydmlldy4nfSA9ICdQYW5vcmFtaWNhIHN1bGxhIGNvbnRhYmlsaXp6YXppb25lIHRlbXBvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJ1JlcG9ydGlzdGljYSBzdWxsYSBjb250YWJpbGl6emF6aW9uZSB0ZW1wby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHNldHRpbmdzLid9ID0gJ0ltcG9zdGF6aW9uaSBwZXIgbGEgY29udGFiaWxpenphemlvbmUgdGVtcG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICdWaXN0YSBjb250YWJpbGl6emF6aW9uZSB0ZW1wby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJ0NvbnRhYmlsaXp6YXppb25lIHRlbXBvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICdEYSB1dGlsaXp6YXJlIHNlIGFsY3VuZSBhemlvbmkgaGFubm8gcmlkb3R0byBsZSBvcmUgbGF2b3JhdGl2ZSAocGVyIGVzZW1waW86IHNlIHNvbG8gbGEgbWV0w6AgZGVsIHRlbXBvIGRpIHZpYWdnaW8gw6ggcGFnYXRvOiBDaGlhdmUgPT4gVmlhZ2dpbzsgQ29udGVudXRvID0+IDUwKS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/ja_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmphX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJ+OCv+OCueOCryc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICfms6jph4gnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICfmnKzlvZPjgavoqbLlvZPml6Xjga7mg4XloLHjgpLliYrpmaTjgZfjgb7jgZnjgYvvvJ8nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAn44K/44Kk44Og44Os44Kz44O844OJ44Gu57eo6ZuGJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAn6Kit5a6a44G4JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJ+aXpeWIpeODiuODk+OCsuODvOOCt+ODp+ODsyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJ+OCqOODs+ODiOODquODvOOBruOBquOBhOaXpSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICflhajjgabjga7ml6XjgpLpgbjmip4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJ+WFqOS9k+WFpeWKmyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJ+ipsuW9k+OBruaXpeOBruasoOWLpOeQhueUseOCkuWFpeWKm+OBl+OBpuOBj+OBoOOBleOBhCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJ+S8keaah+WPluW+l+S4rSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAn55eF5qyg5LitJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAn5Luj5LyR5LitJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnKiDjga7poIXnm67jga/lhaXlipvlv4XpoIjjgafjgZnjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGhhdmUgdG8gZmlsbCBpbiBzdGFydCBhbmQgZW5kIHRpbWUgb3IgYSB0aW1lIHBlcmlvZC4nfSA9ICfplovlp4vmmYLplpPjgajntYLkuobmmYLplpPjgIHjgb7jgZ/jga/mnJ/plpPjgpLmjIflrprjgZfjgabjgY/jgaDjgZXjgYTjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCd9ID0gJ+ODl+ODreOCuOOCp+OCr+ODiCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPcmlnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGFkZCBhIHJlbWFyayB3aXRoIG1vcmUgdGhhbiA4IGNoYXJhY3RlcnMhJ30gPSAnOOaWh+Wtl+S7peS4iuOBruazqOmHiOOCkui/veWKoOOBl+OBpuOBj+OBoOOBleOBhOOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAn77yN77yI44Oe44Kk44OK44K577yJ44Gu5pmC6ZaT44Gv5YWl5Yqb44Gn44GN44G+44Gb44KTJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICfnubDjgorov5TjgZXjgozjgZ/mmYLplpPjga/oqLHlj6/jgZXjgozjgb7jgZvjgpPjgILplovlp4vmmYLliLvjga/liKXjga7plpPpmpTjgajkuIDoh7TjgZfjgb7jgZnjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJ+S4jeato+OBquODleOCqeODvOODnuODg+ODiOOBp+OBmSEg5pmC6ZaT44Gu5YWl5Yqb44GvSEg6TU3jga7jg5Xjgqnjg7zjg57jg4Pjg4jjgavlvpPjgaPjgabjgY/jgaDjgZXjgYQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnMjQ6MDAgaXMgb25seSBwZXJtaXR0ZWQgYXMgZW5kIHRpbWUuJ30gPSAnMjQ6MDDjga/ntYLkuobmmYLplpPjgajjgZfjgabjga7jgb/lhaXlipvlj6/og73jgafjgZknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICfkuI3mraPjgarmmYLplpPjgafjgZkhIDHml6Xjga8yNOaZgumWk+OBp+OBmSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSBtdXN0IGJlIGFmdGVyIHN0YXJ0IHRpbWUuJ30gPSAn57WC5LqG5pmC6ZaT44Gu5YmN44Gr6ZaL5aeL5pmC6ZaT44KS6Kit5a6a44GZ44KL44GT44Go44Gv44Gn44GN44G+44Gb44KT44CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gRW5kIHRpbWUgbWF0Y2hlcyBhbm90aGVyIGludGVydmFsLid9ID0KICAgICAgICAnRGllc2UgRW5kemVpdCB3dXJkZSBiZXJlaXRzIGluIGVpbmVtIGFuZGVyZW4gRWludHJhZyBhbmdlZ2ViZW4uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICfjgIzmnJ/plpPjgI3jga7oqK3lrprjgYzkuI3mraPjgafjgZnjgILvvIgyNOaZgumWk+S7peS4iuOBr+ioseWPr+OBleOCjOOBvuOBm+OCk++8iSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBIHZhbGlkIHBlcmlvZCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiB6ZXJvLid9ID0gJ+OAjOacn+mWk+OAjeOBruioreWumuOBjOS4jeato+OBp+OBmeOAgu+8iDDjga/oqLHlj6/jgZXjgozjgb7jgZvjgpPvvIknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIE5lZ2F0aXZlIHBlcmlvZHMgYXJlIG5vdCBhbGxvd2VkLid9ID0gJ+OAjOacn+mWk+OAjeOBruioreWumuOBjOS4jeato+OBp+OBmeOAgu+8iO+8je+8iOODnuOCpOODiuOCue+8ieOBr+ioseWPr+OBleOCjOOBvuOBm+OCk++8iSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWJtaXQgY2hhbmdlcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgb25lIHJvdyd9ID0gJ+ihjOOBrui/veWKoCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgY2FuIG9ubHkgc2VsZWN0IG9uZSBjaGVja2JveCBlbGVtZW50ISd9ID0gJzHpoIXnm67jga7jgb/pgbjmip7jgafjgY3jgb7jgZnjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJ+eXheasoOOBq+ioreWumuOBleOCjOOBn+acn+mWk+S4reOBq+eovOWDjeOBl+OBvuOBl+OBn+OBi++8nyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJ+S8keaah+OBq+ioreWumuOBleOCjOOBn+acn+mWk+S4reOBq+eovOWDjeOBl+OBvuOBl+OBn+OBi++8nyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAn5Luj5LyR44Gr6Kit5a6a44GV44KM44Gf5pyf6ZaT5Lit44Gr56i85YON44GX44G+44GX44Gf44GL77yfJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJzE25pmC6ZaT5Lul5LiK56i85YON44GX44G+44GX44Gf44GL77yfJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nT3ZlcnZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nIG1vbnRobHkgb3ZlcnZpZXcnfSA9ICfmnIjliKXkuIDopqcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKEhvdXJzKSd9ID0gJ+i2hemBjuWLpOWLme+8iO+8muaZgumWk++8iSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAodGhpcyBtb250aCknfSA9ICfotoXpgY7li6Tli5nvvIjku4rmnIjvvIknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRvdGFsKSd9ID0gJ+i2hemBjuWLpOWLme+8iOe0r+ioiO+8iSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgb3ZlcnRpbWUgbGVhdmUnfSA9ICfotoXpgY7li6Tli5nlj6/og73mrovvvIjmmYLplpPvvIknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gKERheXMpJ30gPSAn5LyR5pqH77yI5pel5pWw77yJJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0aGlzIG1vbnRoKSd9ID0gJ+S8keaah+WPluW+l+aXpeaVsO+8iOS7iuaciO+8iSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodG90YWwpJ30gPSAn5LyR5pqH5Y+W5b6X5pel5pWw77yI57Sv6KiI77yJJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFpbmluZyB2YWNhdGlvbid9ID0gJ+S8keaah+WPluW+l+aui+aXpeaVsCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIExlYXZlIChEYXlzKSd9ID0gJ+eXheasoO+8iOaXpeaVsO+8iSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlIHRha2VuICh0aGlzIG1vbnRoKSd9ID0gJ+eXheasoOaXpeaVsO+8iOS7iuaciO+8iSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlIHRha2VuICh0b3RhbCknfSA9ICfnl4XmrKDml6XmlbDvvIjntK/oqIjvvIknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJldmlvdXMgbW9udGgnfSA9ICfliY3mnIgnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV4dCBtb250aCd9ID0gJ+asoeaciCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrZGF5J30gPSAn5puc5pelJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dvcmtpbmcgSG91cnMnfSA9ICfnqLzlg43mmYLplpMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG90YWwgd29ya2VkIGhvdXJzJ30gPSAn57eP56i85YON5pmC6ZaTJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXJcJ3MgcHJvamVjdCBvdmVydmlldyd9ID0gJ+ODpuODvOOCtuODvOOBruODl+ODreOCuOOCp+OCr+ODiOS4gOimpyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyAobW9udGhseSknfSA9ICfmmYLplpPvvIjku4rmnIjvvIknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKExpZmV0aW1lKSd9ID0gJ+aZgumWk++8iOmAmueul++8iSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHcmFuZCB0b3RhbCd9ID0gJ+WQiOioiCc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSByZXBvcnRpbmcnfSA9ICfmmYLplpPkvJroqIjjg6zjg53jg7zjg4gnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGggTmF2aWdhdGlvbid9ID0gJ+aciOWIpeODiuODk+OCsuODvOOCt+ODp+ODsyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBkYXRlJ30gPSAn5pel5LuY44Gr56e75YuV44GZ44KLJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgcmVwb3J0cyd9ID0gJ+ODpuODvOOCtuODu+ODrOODneODvOODiCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNb250aGx5IHRvdGFsJ30gPSAn5pyI5ZCI6KiIJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xpZmV0aW1lIHRvdGFsJ30gPSAn6YCa566X5ZCI6KiIJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIGxlYXZlJ30gPSAn5Luj5LyRJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uJ30gPSAn5LyR5pqHJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUnfSA9ICfnl4XmrKAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gcmVtYWluaW5nJ30gPSAn5LyR5pel5q6L5pel5pWwJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgcmVwb3J0cyd9ID0gJ+ODl+ODreOCuOOCp+OCr+ODiOODu+ODrOODneODvOODiCc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1Byb2plY3QKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgcmVwb3J0J30gPSAn44OX44Ot44K444Kn44Kv44OI44O744Os44Od44O844OIJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHJlcG9ydGluZyBvdmVydmlldyd9ID0gJ+WgseWRiuOBruamguimgeOBq+enu+WLleOBmeOCiyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDdXJyZW50bHkgb25seSBhY3RpdmUgdXNlcnMgaW4gdGhpcyBwcm9qZWN0IGFyZSBzaG93bi4gVG8gY2hhbmdlIHRoaXMgYmVoYXZpb3IsIHBsZWFzZSB1cGRhdGUgc2V0dGluZzonfSA9CiAgICAgICAgJ+acrOODl+ODreOCuOOCp+OCr+ODiOOBruOCouOCr+ODhuOCo+ODluODpuODvOOCtuODvOOBruOBv+ihqOekuuOBl+OBpuOBhOOBvuOBmeOAgeWkieabtOOBmeOCi+OBq+OBr+ioreWumuOCkuabtOaWsOOBl+OBpuOBj+OBoOOBleOBhOOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDdXJyZW50bHkgYWxsIHRpbWUgYWNjb3VudGluZyB1c2VycyBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICfjgZnjgbnjgabjga7jgr/jgqTjg6DjgqLjgqvjgqbjg7Pjg4jjg6bjg7zjgrbjg7zjgpLooajnpLrjgZfjgabjgYTjgb7jgZnjgIHlpInmm7TjgZnjgovjgavjga/oqK3lrprjgpLmm7TmlrDjgZfjgabjgY/jgaDjgZXjgYTjgIInOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCByZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gdGlja2V0J30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgUHJvamVjdCBTZXR0aW5ncyd9ID0gJ+aZgumWk+S8muioiCDjg5fjg63jgrjjgqfjgq/jg4joqK3lrprjga7nt6jpm4YnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICfmlrDopo/jg5fjg63jgrjjgqfjgq/jg4jjga7ov73liqAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICfoqK3lrprjgavnp7vli5XjgZnjgosnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICfmlrDopo/jg5fjg63jgrjjgqfjgq/jg4jjga7ov73liqAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAn44OX44Ot44K444Kn44Kv44OI44Gu57eo6ZuGJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICflkIzlkI3jga7jg5fjg63jgrjjgqfjgq/jg4jjgYzlrZjlnKjjgZfjgb7jgZnjgILlkI3np7DjgpLlpInmm7TjgZfjgabjgY/jgaDjgZXjgYTjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICfoqK3lrprjga7nt6jpm4YnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICfmlrDopo/jgr/jgrnjgq/jga7ov73liqAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAn44OX44Ot44K444Kn44Kv44OI44CB44K/44K544Kv44CB44G+44Gf44Gv44Om44O844K244O844Gu44OV44Kj44Or44K/44Oq44Oz44KwJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAn5pmC6ZaT44Gv5YmK6Zmk44Gn44GN44G+44Gb44KTJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJ+ODl+ODreOCuOOCp+OCr+ODiOS4gOimpyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICfjgr/jgrnjgq/kuIDopqcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICfmlrDopo/jgr/jgrnjgq/jga7ov73liqAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAn44K/44K544Kv6Kit5a6aJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICflkIzlkI3jga7jgr/jgrnjgq/jgYzlrZjlnKjjgZfjgb7jgZnjgILlkI3np7DjgpLlpInmm7TjgZfjgabjgY/jgaDjgZXjgYTjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAn44Om44O844K25LiA6KanJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICfjg6bjg7zjgrbjg7zoqK3lrponOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICfjg6bjg7zjgrbjg7zjga/jgqrjg7zjg5Djg7zjgr/jgqTjg6DjgpLopovjgovjgZPjgajjgYzjgafjgY3jgb7jgZnjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJ+i2hemBjuWLpOWLmeOCkuihqOekuic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAn44Om44O844K244O844Gv44OX44Ot44K444Kn44Kv44OI44KS5L2c5oiQ44Gn44GN44G+44GZ44CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICfjg5fjg63jgrjjgqfjgq/jg4jjga7mlrDopo/ov73liqDjgpLoqLHlj6/jgZnjgosnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAn44Om44O844K244O844Gv44K/44Kk44Og44Ki44Kr44Km44Oz44OG44Kj44Oz44Kw44Gu44K544Kt44OD44OX44KS6Kix5Y+v44GV44KM44G+44GZ44CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJ+OCv+OCpOODoOOCouOCq+OCpuODs+ODhuOCo+ODs+OCsOOBruOCueOCreODg+ODl+OCkuioseWPr+OBmeOCiyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJ+OBk+OBruOCquODl+OCt+ODp+ODs+OBjOmBuOaKnuOBleOCjOOCi+OBqOOAgeODpuODvOOCtuODvOOBq+WvvuOBmeOCi+OCv+OCpOODoOOCouOCq+OCpuODs+ODhuOCo+ODs+OCsOOBjOOCquODl+OCt+ODp+ODs+mgheebruaJseOBhOOBqOOBquOCiuOBvuOBmeOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICfmnKrlhaXlipvjga7jgqjjg7Pjg4jjg6rjgavlr77jgZnjgovorablkYrjgoTjgIHjgqjjg7Pjg4jjg6rjgbjjga7lhaXlipvjgpLlvLfliLbjgZnjgovooajnpLrjga/jgarjgY/jgarjgorjgb7jgZnjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJ+acn+mWkyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICfplovlp4vngrknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJ+e1guS6hueCuSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAn5LyR5pqHJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAn5pmC6ZaTIC8g6YCxJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICfmib/oqo3muIjjga7otoXpgY7li6Tli5knOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJ+OCueOCv+ODvOODiOaXpeS7mCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICfmraPjgZfjgYTml6Xku5jjgpLlhaXlipvjgZfjgabjgY/jgaDjgZXjgYQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICfntYLkuobmmYLplpMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICfntYLkuobngrnjga7liY3jgavplovlp4vngrnjgpLoqK3lrprjgZnjgovjgZPjgajjga/jgafjgY3jgb7jgZvjgpPjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJ+S8keaah+aXpeaVsCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICfpgLHjgYLjgZ/jgorjga7mmYLplpMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICfmrovmpa3mmYLplpMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJ+acn+mWk+OBjOacquioreWumuOBp+OBmeOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICfmnJ/plpPjgpLov73liqDjgZfjgabjgY/jgaDjgZXjgYTjgIInOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAn44K/44Kk44Og44O744Os44Kz44O844OJ44KS6KGo56S6JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAn5LiA6KanJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJ+WJjeOBruaXpSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJ+asoeOBruaXpSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICfoqbLlvZPjgZnjgovjg4fjg7zjgr/jgYzjgYLjgorjgb7jgZvjgpPjgIInOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAn5bel5pWw44KS5oy/5YWl44Gn44GN44G+44Gb44KT77yBJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICfliY3jg5fjg63jgrjjgqfjgq/jg4gnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAn5LiN5q2j44Gq5pmC6ZaT44Gn44GZISAx5pel44GvMjTmmYLplpPjgafjgZknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGRlbGV0ZSBXb3JraW5nIFVuaXRzISd9ID0gJ+W3peaVsOOCkuWJiumZpOOBp+OBjeOBvuOBm+OCk++8gSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIERhdGUgaXMgb3V0IG9mIGxpbWl0LCBidXQgeW91IGhhdmVuXCd0IGluc2VydCB0aGlzIGRheSB5ZXQsIHNvIHlvdSBnZXQgb25lKCEpIGNoYW5jZSB0byBpbnNlcnQnfSA9CiAgICAgICAgJ+WFpeWKm+OBleOCjOOBn+aXpeS7mOOBr+acn+mWk+WkluOBp+OBmeOBruOBp+OAgeaMv+WFpeOBmeOCi+S6i+OBr+OBp+OBjeOBvuOBm+OCk+OBp+OBl+OBn+OAguOCguOBhuS4gOW6pighKeaXpeS7mOOCkuWFpeWKm+OBl+OBpuOBj+OBoOOBleOBhOOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIFdvcmtpbmcgRGF5cyd9ID0gJ+acquWujOS6huOBruWPr+WLleaXpSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWNjZXNzZnVsIGluc2VydCEnfSA9ICflhaXlipvjgavmiJDlip/jgZfjgb7jgZfjgZ8hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICfopIfmlbDml6XjgpLlhaXlipvkuK3jgavjgqjjg6njg7zjgYznmbrnlJ/jgZfjgb7jgZfjgZ8gISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWNjZXNzZnVsbHkgaW5zZXJ0ZWQgZW50cmllcyBmb3Igc2V2ZXJhbCBkYXRlcyEnfSA9ICfopIfmlbDml6Xjgavjgo/jgZ/jgovnqLzlg43lrp/nuL7jga7lhaXlipvjgavmiJDlip/jgZfjgb7jgZfjgZ8gISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbnRlcmVkIGRhdGUgd2FzIGludmFsaWQhIERhdGUgd2FzIGNoYW5nZWQgdG8gdG9kYXkuJ30gPSAn5YWl5Yqb44GV44KM44Gf5pel5LuY44Gv5LiN5q2j44Gn44GZICEg5pel5LuY44Gv5pys5pel44Gr5aSJ5pu044GV44KM44G+44GX44GfJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIHRpbWUgcGVyaW9kIGNvbmZpZ3VyZWQsIG9yIHRoZSBzcGVjaWZpZWQgZGF0ZSBpcyBvdXRzaWRlIG9mIHRoZSBkZWZpbmVkIHRpbWUgcGVyaW9kcy4nfSA9CiAgICAgICAgJ+aMh+WumuOBleOCjOOBn+acn+mWk+OBjOioreWumuOBleOCjOOBpuOBhOOBquOBhOOBi+OAgeOBvuOBn+OBr+aMh+WumuOBleOCjOOBn+aXpeS7mOOBjOWumue+qeOBleOCjOOBn+acn+mWk+WkluOBp+OBmeOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY29udGFjdCB0aGUgdGltZSBhY2NvdW50aW5nIGFkbWluaXN0cmF0b3IgdG8gdXBkYXRlIHlvdXIgdGltZSBwZXJpb2RzISd9ID0KICAgICAgICAn5Yuk5oCg566h55CG5ouF5b2T6ICF44Gr6YCj57Wh44GX44Gm5pyf6ZaT44KS5pu05paw44GX44Gm44GP44Gg44GV44GE77yBJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgU2VsZWN0ZWQgUHJvamVjdHMnfSA9ICfliY3lm57pgbjmip7jgZXjgozjgZ/jg5fjg63jgrjjgqfjgq/jg4gnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsIFByb2plY3RzJ30gPSAn5YWo44OX44Ot44K444Kn44Kv44OIJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBOZWVkIFByb2plY3RJRCd9ID0gJ1JlcG9ydGluZ1Byb2plY3Q6IOODl+ODreOCuOOCp+OCr+ODiElE44Gu5YWl5Yqb44GM5b+F6KaB44Gn44GZ44CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAn44OX44Ot44K444Kn44Kv44OI44KS5aCx5ZGK44GZ44KLJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJ+WgseWRiuOBmeOCiyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBUaWNrZXRJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBObyBQcm9qZWN0IGZvciBUaWNrZXQgZm91bmQuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIHVwZGF0ZSB1c2VyIHNldHRpbmdzISd9ID0gJ+ODpuODvOOCtuODvOioreWumuOCkuabtOaWsOOBp+OBjeOBvuOBm+OCk++8gSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJ+ODl+ODreOCuOOCp+OCr+ODiOOCkui/veWKoOOBl+OBvuOBl+OBn++8gSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAn44OX44Ot44K444Kn44Kv44OI44KS5pu05paw44GX44G+44GX44Gf77yBJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgYWRkZWQhJ30gPSAn44K/44K544Kv44KS6L+95Yqg44GX44G+44GX44Gf77yBJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICfjgr/jgrnjgq/jgpLmm7TmlrDjgZfjgb7jgZfjgZ/vvIEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnVXNlcklEIOOBjOeEoeWKueOBp+OBme+8gSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IHVzZXIgZGF0YSEnfSA9ICfjg6bjg7zjgrbjg7zjg4fjg7zjgr/jgYzmjL/lhaXjgafjgY3jgb7jgZvjgpPvvIEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIGFkZCB0aW1lIHBlcmlvZCEnfSA9ICfmnJ/plpPjgpLov73liqDjgafjgY3jgb7jgZvjgpPvvIEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2V0dGluZyd9ID0gJ+ioreWumic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHVwZGF0ZWQhJ30gPSAn44Om44O844K244O844KS5pu05paw44GX44G+44GX44Gf77yBJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgYWRkZWQhJ30gPSAn44Om44O844K244O844KS6L+95Yqg44GX44G+44GX44Gf77yBJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05ldyBVc2VyJ30gPSAn5paw6KaP44Om44O844K244O8JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBTdGF0dXMnfSA9ICfmnJ/plpPjga7nirbmhYsnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdWaWV3LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3OiBOZWVkICVzISd9ID0gJ+azqOebru+8ge+8miAlcyDjga7lhaXlipvjgYzlv4XopoHjgafjgZnjgIInOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ob3RpZmljYXRpb24vVGltZUFjY291bnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBpbnNlcnQgeW91ciB3b3JraW5nIGhvdXJzISd9ID0gJ+WLpOWLmeWun+e4vuOCkuWFpeWKm+OBl+OBpuOBj+OBoOOBleOBhCc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL091dHB1dC9IVE1ML1Rvb2xCYXIvSW5jb21wbGV0ZVdvcmtpbmdEYXlzLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyd9ID0gJ+acquWujOS6huOBruWPr+WLleaXpSc7CgogICAgIyBKUyBGaWxlOiBUaW1lQWNjb3VudGluZy5BZ2VudC5FZGl0VGltZVJlY29yZHMKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnfSA9ICflsJHjgarjgY/jgajjgoLkuIDml6Xjga/pgbjmip7jgZfjgabjgY/jgaDjgZXjgYQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBFbnRyeSd9ID0gJ+WFqOS9k+WFpeWKmyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGEgcmVhc29uIGZvciBhYnNlbmNlISd9ID0gJ+asoOWLpOeQhueUseOCkumBuOaKnuOBl+OBpuOBj+OBoOOBleOBhCc7CgogICAgIyBKUyBGaWxlOiBUaW1lQWNjb3VudGluZy5BZ2VudAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVsZXRlIFRpbWUgQWNjb3VudGluZyBFbnRyeSd9ID0gJ+OCqOODs+ODiOODquODvOOCkuWJiumZpCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDb25maXJtIGluc2VydCd9ID0gJ+aMv+WFpeOBrueiuuiqjSc7CgogICAgIyBTeXNDb25maWcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FjdGl2YXRlIHRoZSBzeW5jaHJvbmlzYXRpb24gb2YgVGlja2V0LVRpbWVVbml0cyBpbnRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWdlbnQgaW50ZXJmYWNlIG5vdGlmaWNhdGlvbiBtb2R1bGUgdG8gc2VlIHRoZSBudW1iZXIgb2YgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMgZm9yIHRoZSB1c2VyLid9ID0KICAgICAgICAn44Om44O844K244Gu5LiN5a6M5YWo44Gq56i85YON5pel5pWw44KS44Kr44Km44Oz44OI44GX6YCa55+l44GZ44KL44Ko44O844K444Kn44Oz44OI44O744Kk44Oz44K/44O844OV44Kn44Kk44K544Gn44GZ44CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Fsc28gc3luY2hyb25pc2UgY3VzdG9tZXJzIGFzIGEgbmV3IHByb2plY3QgaWYgdGhleSBoYXZlIG5vdCB5ZXQgYmVlbiBjcmVhdGVkIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcyBzb29uIGFzIHRoZSBzeW5jaHJvbmlzYXRpb24gb2YgdGlja2V0IFRpbWVVbml0cyBpcyBhY3RpdmF0ZWQsIGl0IGlzIHBvc3NpYmxlIHRvIHNldCB0aGUgZW50cmllcyBSZWFkT25seS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDcmVhdGUgYSBuZXcgdGltZSBhY2NvdW50aW5nIGVudHJ5IHJlbGF0ZWQgdG8gdGhlIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IG5hbWUgZm9yIG5ldyBhY3Rpb25zLid9ID0gJ+aWsOimj+aTjeS9nOOBq+WvvuOBmeOCi+ODh+ODleOCqeODq+ODiOOBruWQjeensCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IG5hbWUgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICfmlrDopo/jg5fjg63jgrjjgqfjgq/jg4jjgavlr77jgZnjgovjg4fjg5Xjgqnjg6vjg4jjga7lkI3np7AnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkYXRlIGVuZC4nfSA9ICfjgIzntYLkuobml6XjgI3jga7jg4fjg5Xjgqnjg6vjg4jlgKQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkYXRlIHN0YXJ0Lid9ID0gJ+OAjOmWi+Wni+aXpeOAjeOBruODh+ODleOCqeODq+ODiOWApCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRlc2NyaXB0aW9uLid9ID0gJ+OAjOiqrOaYjuaWh+OAjeOBruODh+ODleOCqeODq+ODiOWApCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGxlYXZlIGRheXMuJ30gPSAn44CM5LyR5pqH44CN44Gu44OH44OV44Kp44Or44OI5YCkJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3Igb3ZlcnRpbWUuJ30gPSAn44CM6LaF6YGO5Yuk5YuZ44CN44Gu44OH44OV44Kp44Or44OI5YCkJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgdGhlIHN0YW5kYXJkIHdlZWtseSBob3Vycy4nfSA9ICfpgLHjgYLjgZ/jgorln7rmnKznqLzlg43mmYLplpPjga7jg4fjg5Xjgqnjg6vjg4jlgKQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBhY3Rpb25zLid9ID0gJ+aWsOimj+aTjeS9nOOBq+WvvuOBmeOCi+ODh+ODleOCqeODq+ODiOOBruOCueODhuODvOOCv+OCuSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHN0YXR1cyBmb3IgbmV3IHByb2plY3RzLid9ID0gJ+aWsOimj+ODl+ODreOCuOOCp+OCr+ODiOOBq+WvvuOBmeOCi+ODh+ODleOCqeODq+ODiOOBruOCueODhuODvOOCv+OCuSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHN0YXR1cyBmb3IgbmV3IHVzZXJzLid9ID0gJ+aWsOimj+ODpuODvOOCtuOBq+WvvuOBmeOCi+ODh+ODleOCqeODq+ODiOOBruOCueODhuODvOOCv+OCuSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZpbmVzIHRoZSBwcm9qZWN0cyBmb3Igd2hpY2ggYSByZW1hcmsgaXMgcmVxdWlyZWQuIElmIHRoZSBSZWdFeHAgbWF0Y2hlcyBvbiB0aGUgcHJvamVjdCwgeW91IGhhdmUgdG8gaW5zZXJ0IGEgcmVtYXJrIHRvby4gVGhlIFJlZ0V4cCB1c2UgdGhlIHNteCBwYXJhbWV0ZXIuJ30gPQogICAgICAgICfjgIzms6jph4jjgI3jgqjjg7Pjg4jjg6rjg7zjgpLlv4XopoHjgajjgZnjgovpoIXnm67jgpLlrprnvqnjgZfjgb7jgZnjgIIg44KC44GX44OX44Ot44K444Kn44Kv44OI5ZCN44GM44GT44GT44Gn6Kit5a6a44GX44Gf5q2j6KaP6KGo54++44Gr44Oe44OD44OB44GZ44KL5aC05ZCI44CB44CM5rOo6YeI772d44Gv5b+F6aCI6aCF55uu44Go44Gq44KK44G+44GZ44CC4oC75q2j6KaP6KGo54++44Gr44GvU01Y44OR44Op44Oh44O844K/44KS5L2/44GE44G+44GZ44CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICfntbHoqIjjg6Ljgrjjg6Xjg7zjg6vjgYzjgr/jgqTjg6DjgqLjgqvjgqbjg7Pjg4bjgqPjg7PjgrDmg4XloLHjgpLnlJ/miJDjgZnjgovjgYvpgbjmip7jgZfjgabjgY/jgaDjgZXjgYQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAn5pmC6ZaT5Lya6KiI44Gu6Kit5a6a44KS57eo6ZuGJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAn44K/44Kk44Og44Os44Kz44O844OJ44KS57eo6ZuGJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJ+S9leaXpeWJjeOBi+OCieODr+ODvOOCreODs+OCsOODu+ODpuODi+ODg+ODiOOBruaWsOimj+eZu+mMsuOBjOWPr+iDveOBp+OBguOCi+OBi+OBruioreWumuOBp+OBmeOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICfmnInlirnmmYLjgavjga/jgIHoqbLlvZPjga7jg5fjg63jgrjjgqfjgq/jg4jjgavnqLzlg43mmYLplpPjgpLmipXlhaXjgZfjgabjgYTjgovjg6bjg7zjgrbjg7zjga7jgb/ooajnpLrjgZXjgozjgb7jgZknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJ+acieWKueaZguOBq+OBr+OAgee3qOmbhueUu+mdouOBruODieODreODg+ODl+ODgOOCpuODs+OCqOODrOODoeODs+ODiOOBr+iHquWLleODleOCo+ODvOODq+ODieOBq+e9ruOBjeaPm+OBiOOCieOCjOOBvuOBmeOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICfmnInlirnmmYLjgavjga/ku6XliY3jga7jg5fjg63jgrjjgqfjgq/jg4jjg5XjgqPjg6vjgr/jg7zjgpLpgbjmip7jgZnjgovjgZPjgajjgYzlj6/og73jgafjgZko6YCa5bi444Gv5YmN5Zue44GK44KI44Gz44GZ44G544GmKeOAguOBk+OBrumgheebruOBryBUaW1lQWNjb3VudGluZzo6RW5hYmxlQXV0b0NvbXBsZXRpb24g44GM5pyJ5Yq544Gr44Gq44Gj44Gm44GE44KL5pmC44Gu44G/5Yip55So5Y+v6IO9JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBmaWx0ZXIgZm9yIHRoZSBwcmV2aW91cyBwcm9qZWN0cyBpcyBhY3RpdmUgYnkgZGVmYXVsdCBpZiB0aGVyZSBhcmUgdGhlIHByZXZpb3VzIHByb2plY3RzLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgRW5hYmxlQXV0b0NvbXBsZXRpb24gYW5kIFRpbWVBY2NvdW50aW5nOjpVc2VGaWx0ZXIgYXJlIGVuYWJsZWQuJ30gPQogICAgICAgICfmnInlirnmmYLjgavjga/jgIzku6XliY3jga7jg5fjg63jgrjjgqfjgq/jg4jjgI3jgYzlrZjlnKjjgZnjgovmmYLjga/jgIHku6XliY3jga7jg5fjg63jgrjjgqfjgq/jg4jjg5XjgqPjg6vjgr/jg7zjgYzjg4fjg5Xjgqnjg6vjg4jlgKTjgavjgarjgorjgb7jgZnjgILjgZPjga7poIXnm67jga8gVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciDjgYzmnInlirnjgavjgarjgaPjgabjgYTjgovmmYLjga7jgb/liKnnlKjlj6/og70nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIHVzZXIgaXMgYWxsb3dlZCB0byBlbnRlciAib24gdmFjYXRpb24gbGVhdmUiLCAib24gc2ljayBsZWF2ZSIgYW5kICJvbiBvdmVydGltZSBsZWF2ZSIgdG8gbXVsdGlwbGUgZGF0ZXMgYXQgb25jZS4nfSA9CiAgICAgICAgJ+acieWKueOBq+OBmeOCjOOBsOS4gOWbnuOBrue3qOmbhuOBp+OAgeikh+aVsOOBruaXpeOBq+a4oeOCiuOAjOS8keaah+OAjeOAjOeXheasoOOAjeOAjOS7o+S8keOAjeOBjOmBuOaKnuOBp+OBjeOBvuOBmSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXhpbXVtIG51bWJlciBvZiB3b3JraW5nIGRheXMgYWZ0ZXIgd2hpY2ggdGhlIHdvcmtpbmcgdW5pdHMgaGF2ZSB0byBiZSBpbnNlcnRlZC4nfSA9CiAgICAgICAgJzHjgaTku6XkuIrjga7jg6/jg7zjgq3jg7PjgrDjg7vjg6bjg4vjg4Pjg4jjgpLoqK3lrprjgZnjgbnjgY3mnIDlpKfjga7nqLzlg43ml6XmlbDjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWF4aW11bSBudW1iZXIgb2Ygd29ya2luZyBkYXlzIHdpdGhvdXQgd29ya2luZyB1bml0cyBlbnRyeSBhZnRlciB3aGljaCBhIHdhcm5pbmcgd2lsbCBiZSBzaG93bi4nfSA9CiAgICAgICAgJ+itpuWRiuOBjOihqOekuuOBleOCjOOCi+OBk+OBqOOBquOBj+OCqOODs+ODiOODquWHuuadpeOCi+OAgeWWtualreaXpeOBruacgOWkp+aXpeaVsOOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydmlldy4nfSA9ICfmpoLopoEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCB0aW1lIHJlcG9ydGluZy4nfSA9ICfjg5fjg63jgrjjgqfjgq/jg4jliKXmmYLplpPkvJroqIjjg6zjg53jg7zjg4gnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIGFjdGlvbiBsaXN0IGFjY29yZGluZyB0byBzZWxlY3RlZCBwcm9qZWN0LiBLZXkgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9uIGZvciBwcm9qZWN0KHMpLCBjb250ZW50IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGFjdGlvbihzKS4nfSA9CiAgICAgICAgJ+ODl+ODreOCuOOCp+OCr+ODiOOBq+OCiOOBo+OBpuihjOWLleODquOCueODiOOCkue1nuOCiui+vOOCgOOBn+OCgeOBruato+imj+ihqOePvuOAguOAjOmNteOAjeOBp+OBr+ODl+ODreOCuOOCp+OCr+ODiOOBq+WvvuOBmeOCi+ato+imj+ihqOePvuOCkuOAgeOAjOWGheWuueOAjeOBp+OBr2DooYzli5Vg44Gr5a++44GZ44KL5q2j6KaP6KGo54++44KS5oyH5a6a44GZ44KL44CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBwcm9qZWN0IGxpc3QgYWNjb3JkaW5nIHRvIHVzZXIgZ3JvdXBzLiBLZXkgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9uIGZvciBwcm9qZWN0KHMpLCBjb250ZW50IGNvbnRhaW5zIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIGdyb3Vwcy4nfSA9CiAgICAgICAgJ+ODpuODvOOCtuOCsOODq+ODvOODl+OBq+OCiOOBo+OBpuODl+ODreOCuOOCp+OCr+ODiOODquOCueODiOOCkue1nuOCiui+vOOCgOOBn+OCgeOBruato+imj+ihqOePvuOAguOAjOmNteOAjeOBp+OBr+ODl+ODreOCuOOCp+OCr+ODiOOBq+WvvuOBmeOCi+ato+imj+ihqOePvuOCkuOAgeOAjOWGheWuueOAjeOBp+OBr+OCq+ODs+ODnuWMuuWIh+OCiuOBruODpuODvOOCtuODquOCueODiOOCkuaMh+WumuOBmeOCi+OAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaG93IGFjY291bnRlZCB0aW1lcyBmb3IgdGhpcyB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3BlY2lmaWVzIGlmIHdvcmtpbmcgaG91cnMgY2FuIGJlIGluc2VydGVkIHdpdGhvdXQgc3RhcnQgYW5kIGVuZCB0aW1lcy4nfSA9CiAgICAgICAgJ+alreWLmeaZgumWk+OCkuOAjOmWi+Wni+aZgumWk+OAjeOBqOOAjOe1guS6huaZgumWk+OAjeOBruaMh+WumuODiuOCt+OBp+aWsOimj+eZu+mMsuOBp+OBjeOCi+OBi+OBqeOBhuOBi+aMh+WumuOBmeOCi+OAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTeW5jaHJvbmlzZSBjdXN0b21lcnMgYXMgYSBuZXcgcHJvamVjdCBpZiB0aGV5IGV4aXN0cyBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBtb2R1bGUgZm9yY2VzIGluc2VydHMgaW4gVGltZUFjY291bnRpbmcuJ30gPSAnVGltZUFjY291bnRpbmfjg6Ljgrjjg6Xjg7zjg6vjgajlkIznrYnjga7poIXnm67jgYzoqK3lrprlv4XpoIjjgajjgarjgorjgb7jgZnjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICfjgYLjgb7jgorjgavjgoLlpJrjgY/jga7kuI3lrozlhajjgarnqLzlg43ml6XjgYzjgYLjgovloLTlkIjjgIHjgZPjga7pgJrnn6Xjg6Ljgrjjg6Xjg7zjg6vjga/orablkYrjgpLkuI7jgYjjgb7jgZnjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJ+OCv+OCpOODoOOCouOCq+OCpuODs+ODhuOCo+ODs+OCsCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICfjgr/jgqTjg6DjgqLjgqvjgqbjg7Pjg4bjgqPjg7PjgrDjgpLnt6jpm4bjgZnjgosnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJ+OCv+OCpOODoOOCouOCq+OCpuODs+ODhuOCo+ODs+OCsOOBruamguimgSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJ+OCv+OCpOODoOOCouOCq+OCpuODs+ODhuOCo+ODs+OCsOOBruWgseWRiic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAn44K/44Kk44Og44Ki44Kr44Km44Oz44OG44Kj44Oz44Kw44Gu6Kit5a6aJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICfjgr/jgqTjg6DjgqLjgqvjgqbjg7Pjg4bjgqPjg7PjgrAg44OT44Ol44O8JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZy4nfSA9ICfmmYLplpPkvJroqIgnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG8gdXNlIGlmIHNvbWUgYWN0aW9ucyByZWR1Y2VkIHRoZSB3b3JraW5nIGhvdXJzIChmb3IgZXhhbXBsZSwgaWYgb25seSBoYWxmIG9mIHRoZSB0cmF2ZWxpbmcgdGltZSBpcyBwYWlkIEtleSA9PiB0cmF2ZWxpbmc7IENvbnRlbnQgPT4gNTApLid9ID0KICAgICAgICAn5qWt5YuZ5LiK44Gu6KGM5YuV44Gr44GK44GE44Gm44CB56i85YON5pmC6ZaT44Go44GX44Gm6KiI5LiK44GZ44KL5pmC6ZaT44KS6Kq/5pW044GZ44KL5b+F6KaB44GM44GC44KL5aC05ZCI44Gr44CB44GT44Gu6Kit5a6a44KS5L2/55So44GX44G+44GZ44CC77yI5L6L77ya44CM56e75YuV5pmC6ZaT44CN44GuNTAl44Gu44G/5Yuk5YuZ5pmC6ZaT55u45b2T44Go44GZ44KL5aC05ZCI44CM6Y2144CN44GrYGpvdXJuZXlg44CB44CM5YaF5a6544CN44GrYDUwYOOBqOioreWumiknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/ko_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OmtvX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIEVuZCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGwgUHJvamVjdHMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBUaWNrZXRJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBObyBQcm9qZWN0IGZvciBUaWNrZXQgZm91bmQuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIHVwZGF0ZSB1c2VyIHNldHRpbmdzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gYWRkIHRpbWUgcGVyaW9kISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICcnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/lt_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6Omx0X1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIEVuZCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGwgUHJvamVjdHMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBUaWNrZXRJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBObyBQcm9qZWN0IGZvciBUaWNrZXQgZm91bmQuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIHVwZGF0ZSB1c2VyIHNldHRpbmdzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gYWRkIHRpbWUgcGVyaW9kISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICcnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/lv_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6Omx2X1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIEVuZCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGwgUHJvamVjdHMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBUaWNrZXRJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBObyBQcm9qZWN0IGZvciBUaWNrZXQgZm91bmQuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIHVwZGF0ZSB1c2VyIHNldHRpbmdzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gYWRkIHRpbWUgcGVyaW9kISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICcnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/mk_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6Om1rX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJ9CX0LDQtNCw0YfQsCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICfQndCw0L/QvtC80LXQvdCwJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N0YXJ0IHRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IG11c3QgZW50ZXIgYSBzdGFydCBhbmQgYW4gZW5kIHRpbWUsIG9yIGEgcG9zaXRpdmUgcGVyaW9kIG9mIHVwIHRvIDI0IGhvdXJzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZSB0aW1lIHBlcmlvZCBtdXN0IGJlIGdpdmVuIGluIGhvdXJzIGFuZCBjYW4gYmUgYSBkZWNpbWFsIG51bWJlci4nfSA9CiAgICAgICAgJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ0RlbGV0ZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRG8geW91IHJlYWxseSB3YW50IHRvIGRlbGV0ZSB0aGUgVGltZSBBY2NvdW50aW5nIG9mIHRoaXMgZGF5Pyd9ID0KICAgICAgICAn0JTQsNC70Lgg0YHRgtC1INGB0LjQs9GD0YDQvdC4INC00LXQutCwINGB0LDQutCw0YLQtSDQtNCwINCz0Lgg0LjQt9Cx0YDQuNGI0LXRgtC1INCy0YDQtdC80LjRmtCw0YLQsCDQt9CwINC+0LLQvtGYINC00LXQvT8nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAn0JjQt9C80LXQvdC4INCX0LDQv9C40YHQuCDQt9CwINCS0YDQtdC80LUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3MnfSA9ICfQntC00Lgg0LLQviDQv9C+0LTQtdGB0YPQstCw0ZrQsCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXRlIE5hdmlnYXRpb24nfSA9ICfQndCw0LLQuNCz0LDRhtC40ZjQsCDRgdC/0L7RgNC10LQg0JTQsNGC0YPQvCAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF5cyB3aXRob3V0IGVudHJpZXMnfSA9ICfQlNC10L3QvtCy0Lgg0LHQtdC3INC30LDQv9C40YHQuCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICfQntC30L3QsNGH0Lgg0LPQuCDRgdC40YLQtSDQtNC10L3QvtCy0LgnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJ9Cc0LDRgdC+0LLQtdC9INCy0L3QtdGBJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgdGhlIHJlYXNvbiBmb3IgeW91ciBhYnNlbmNlIGZvciB0aGUgc2VsZWN0ZWQgZGF5cyd9ID0KICAgICAgICAn0JLQtSDQvNC+0LvQuNC80LUg0LjQt9Cx0LXRgNC10YLQtSDQv9GA0LjRh9C40L3QsCDQt9CwINCy0LDRiNC10YLQviDQvtGC0YHRg9GB0YLQstC+INCy0L4g0L7Qt9C90LDRh9C10L3QuNGC0LUg0LTQtdC90L7QstC4JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIHZhY2F0aW9uJ30gPSAn0J3QsCDQvtC00LzQvtGAJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIHNpY2sgbGVhdmUnfSA9ICfQntGC0YHRg9GC0LXQvSDQv9C+0YDQsNC00Lgg0LHQvtC70LXRgdGCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAn0J/RgNC10LrRg9Cy0YDQtdC80LXQvdC+INC+0YLRgdGD0YHRgtCy0L4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVxdWlyZWQgZmllbGRzIGFyZSBtYXJrZWQgd2l0aCBhICIqIi4nfSA9ICfQl9Cw0LTQvtC70LbQuNGC0LXQu9C90LjRgtC1INC/0L7Qu9C40ZrQsCDRgdC1INC+0LfQvdCw0YfQtdC90Lgg0YHQviAiKiIuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAn0KLRgNC10LHQsCDQtNCwINGB0LUg0LLQvdC10YHQtSDQv9C+0YfQtdGC0L3QviDQuCDQutGA0LDRmNC90L4g0LLRgNC10LzQtSDQuNC70Lgg0LLRgNC10LzQtdC90YHQutC4INC/0LXRgNC40L7QtC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCd9ID0gJ9Cf0YDQvtC10LrRgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPcmlnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGFkZCBhIHJlbWFyayB3aXRoIG1vcmUgdGhhbiA4IGNoYXJhY3RlcnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Vyc3BydW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05lZ2F0aXZlIHRpbWVzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICfQndC10LPQsNGC0LjQstC90L4g0LLRgNC10LzQtSDQvdC1INC1INC00L7Qt9Cy0L7Qu9C10L3Qvi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBTdGFydCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJ9CU0YPQv9C70LjRgNCw0ZrQtSDQvdCwINGH0LDRgdC+0LLQuCDQvdC1INC1INC00L7Qt9Cy0L7Qu9C10L3Qvi4g0JLRgNC10LzQtSDQvdCwINC/0L7Rh9C90YPQstCw0ZrQtSDRgdC1INGB0L7QstC/0LDRk9CwINGB0L4g0LTRgNGD0LMg0LjQvdGC0LXRgNCy0LDQuy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJ9Cd0LXQstCw0LvQuNC00LXQvSDRhNC+0YDQvNCw0YIhINCS0L3QtdGB0LXRgtC1INCy0YDQtdC80LUg0YHQviDRhNC+0YDQvNCw0YIg0KfQpzrQnNCcLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcyNDowMCDQtSDQtNC+0LfQstC+0LvQtdC90L4g0YHQsNC80L4g0LrQsNC60L4g0LrRgNCw0Zgg0L3QsCDQstGA0LXQvNC10YLQvi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICfQndC10LLQsNC70LjQtNC10L0g0YfQsNGBISDQlNC10L3QvtGCINC40LzQsCDRgdCw0LzQviAyNCDRh9Cw0YHQsC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJ9CS0YDQtdC80LUg0L3QsCDQt9Cw0LLRgNGI0YPQstCw0ZrQtSDRgtGA0LXQsdCwINC00LAg0LHQuNC00LUg0L/QviDQv9C+0YfQtdGC0L3QvtGC0L4g0LLRgNC10LzQtS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBFbmQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICfQlNGD0L/Qu9C40YDQsNGa0LUg0L3QsCDRh9Cw0YHQvtCy0Lgg0L3QtSDQtSDQtNC+0LfQstC+0LvQtdC90L4uINCS0YDQtdC80LUg0L3QsCDQt9Cw0LLRgNGI0YPQstCw0ZrQtSDRgdC1INGB0L7QstC/0LDRk9CwINGB0L4g0LTRgNGD0LMg0LjQvdGC0LXRgNCy0LDQuy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIEEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzLid9ID0gJ9Cd0LXQstCw0LvQuNC00LXQvSDQv9C10YDQuNC+0LQhINCU0LXQvdC+0YIg0LjQvNCwINGB0LDQvNC+IDI0INGH0LDRgdCwLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBIHZhbGlkIHBlcmlvZCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiB6ZXJvLid9ID0gJ9CS0LDQu9C40LTQvdC40L7RgiDRgNC+0Log0LzQvtGA0LAg0LTQsCDQtSDQv9C+0LPQvtC70LXQvCDQvtC0INC90YPQu9CwLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgTmVnYXRpdmUgcGVyaW9kcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAn0J3QtdCy0LDQu9C40LTQtdC9INC/0LXRgNC40L7QtCEg0J3QtdCz0LDRgtC40LLQvdC4INC/0LXRgNC40L7QtNC4INC90LUg0YHQtSDQtNC+0LfQstC+0LvQtdC90LguJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Ym1pdCBjaGFuZ2VzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBvbmUgcm93J30gPSAn0JTQvtC00LDQtNC4INC10LTQtdC9INGA0LXQtCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgY2FuIG9ubHkgc2VsZWN0IG9uZSBjaGVja2JveCBlbGVtZW50ISd9ID0gJ9Cc0L7QttC10YLQtSDQtNCwINC40LfQsdC10YDQtdGC0LUg0YHQsNC80L4g0LXQtNC10L0g0L/QvtC70LUg0L7QtCDQtdC70LXQvNC10L3RgiEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJ9CU0LDQu9C4INGB0YLQtSDRgdC40LPRg9GA0L3QuCDQtNC10LrQsCDRgdGC0LUg0YDQsNCx0L7RgtC10LvQtSDQtNC+0LTQtdC60LAg0YHRgtC1INCx0LjQu9C1INC90LAg0LHQvtC70LXQtNGD0LLQsNGa0LU/JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gdmFjYXRpb24/J30gPSAn0JTQsNC70Lgg0YHRgtC1INGB0LjQs9GD0YDQvdC4INC00LXQutCwINGB0YLQtSDRgNCw0LHQvtGC0LXQu9C1INC00L7QtNC10LrQsCDRgdGC0LUg0LHQuNC70LUg0L3QsCDQvtC00LzQvtGAPyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAn0JTQsNC70Lgg0YHRgtC1INGB0LjQs9GD0YDQvdC4INC00LXQutCwINGB0YLQtSDRgNCw0LHQvtGC0LXQu9C1INC00L7QtNC10LrQsCDRgdGC0LUg0LHQuNC70LUg0L3QsCDQv9GA0LXQutGD0LLRgNC10LzQtdC90L4g0L7RgtGB0YPRgdGC0LLQviA/JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJ9CU0LDQu9C4INGB0YLQtSDRgdC40LPRg9GA0L3QuCDQtNC10LrQsCDRgdGC0LUg0YDQsNCx0L7RgtC10LvQtSDQv9C+0LLQtdGc0LUg0L7QtCAxNiDRh9Cw0YHQsD8nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdPdmVydmlldwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSByZXBvcnRpbmcgbW9udGhseSBvdmVydmlldyd9ID0gJ9CS0YDQtdC80LXQvdGB0LrQviDQuNC30LLQtdGB0YLRg9Cy0LDRmtC1INC30LAg0LzQtdGB0LXRh9C10L0g0L/RgNC10LPQu9C10LQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKEhvdXJzKSd9ID0gJ9Cf0YDQtdC60YPQstGA0LXQvNC10L3QsCDRgNCw0LHQvtGC0LAgKNCn0LDRgdC+0LLQuCknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAn0J/RgNC10LrRg9Cy0YDQtdC80LXQvdCwINGA0LDQsdC+0YLQsCAo0L7QstC+0Zgg0LzQtdGB0LXRhiknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRvdGFsKSd9ID0gJ9Cf0YDQtdC60YPQstGA0LXQvNC10L3QsCDRgNCw0LHQvtGC0LAgKNCy0LrRg9C/0L3QviknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAn0J/RgNC10L7RgdGC0LDQvdCw0YLQviDQv9GA0LXQutGD0LLRgNC10LzQtdC90L4g0L7RgtGB0YPRgdGC0LLQviAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gKERheXMpJ30gPSAn0J7QtNC80L7RgCAo0LLQviDQtNC10L3QvtCy0LgpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0aGlzIG1vbnRoKSd9ID0gJ9CY0YHQutC+0YDQuNGB0YLQtdC9INC+0LTQvNC+0YAgKNC+0LLQvtGYINC80LXRgdC10YYpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0b3RhbCknfSA9ICfQmNGB0LrQvtGA0LjRgdGC0LXQvSDQvtC00LzQvtGAICjQstC60YPQv9C90L4pJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFpbmluZyB2YWNhdGlvbid9ID0gJ9Cf0YDQtdC+0YHRgtCw0L3QsNGCINC+0LTQvNC+0YAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICfQkdC+0LvQtdC00YPQstCw0ZrQsCAo0LLQviDQtNC10L3QvtCy0LgpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUgdGFrZW4gKHRoaXMgbW9udGgpJ30gPSAn0JHQvtC70LXQtNGD0LLQsNGa0LUgKNC+0LLQvtGYINC80LXRgdC10YYpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUgdGFrZW4gKHRvdGFsKSd9ID0gJ9CR0L7Qu9C10LTRg9Cy0LDRmtCwICjQstC60YPQv9C90L4pJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAn0J/RgNC10YLRhdC+0LTQtdC9INC80LXRgdC10YYnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV4dCBtb250aCd9ID0gJ9Ch0LvQtdC00LXQvSDQvNC10YHQtdGGJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlZWtkYXknfSA9ICfQlNC10L0g0LLQviDRgdC10LTQvNC40YbQsNGC0LAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV29ya2luZyBIb3Vycyd9ID0gJ9Cg0LDQsdC+0YLQvdC4INCn0LDRgdC+0LLQuCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUb3RhbCB3b3JrZWQgaG91cnMnfSA9ICfQktC60YPQv9C90L4g0L7QtNGA0LDQsdC+0YLQtdC90Lgg0YfQsNGB0L7QstC4JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXJcJ3MgcHJvamVjdCBvdmVydmlldyd9ID0gJ9Cf0YDQtdCz0LvQtdC0INC90LAg0JrQvtGA0LjRgdC90LjRh9C60Lgg0J/RgNC+0LXQutGCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChtb250aGx5KSd9ID0gJ9Cn0LDRgdC+0LLQuCAo0LzQtdGB0LXRh9C90L4pJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICfQp9Cw0YHQvtCy0LggKNCy0LrRg9C/0L3QviknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICfQodC10LLQutGD0L/QvdC+JzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyd9ID0gJ9CY0LfQstC10YHRgtGD0LLQsNGa0LUg0LfQsCDQktGA0LXQvNC1JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICfQndCw0LLQuNCz0LDRhtC40ZjQsCDRgdC/0L7RgNC10LQg0JzQtdGB0LXRhic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBkYXRlJ30gPSAn0J7QtNC4INC00L4g0LTQsNGC0YPQvCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICfQmtC+0YDQuNGB0L3QuNGH0LrQuCDQuNC30LLQtdGI0YLQsNGY0LgnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJ9CS0LrRg9C/0L3QviDQt9CwINCc0LXRgdC10YYnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGlmZXRpbWUgdG90YWwnfSA9ICfQodC10LLQutGD0L/QvdC+ICc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJ9Cf0YDQtdC60YPQstGA0LXQvNC10L3QviDQvtGC0YHRg9GB0YLQstC+JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uJ30gPSAnT9C00LzQvtGAJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUnfSA9ICfQkdC+0LvQtdC00YPQstCw0ZrQtSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiByZW1haW5pbmcnfSA9ICfQv9GA0LXQvtGB0YLQsNC90LDRgiDQntC00LzQvtGAJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgcmVwb3J0cyd9ID0gJ9CY0LfQstC10YjRgtCw0ZjQuCDQt9CwINCf0YDQvtC10LrRgtC4JzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nUHJvamVjdAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCByZXBvcnQnfSA9ICfQuNC30LLQtdGI0YLQsNGYINC30LAg0J/RgNC+0LXQutGC0L7Rgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICfQntC00Lgg0LLQviDQv9GA0LXQs9C70LXQtCDQvdCwINC40LfQstC10YjRgtCw0ZjQuCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDdXJyZW50bHkgb25seSBhY3RpdmUgdXNlcnMgaW4gdGhpcyBwcm9qZWN0IGFyZSBzaG93bi4gVG8gY2hhbmdlIHRoaXMgYmVoYXZpb3IsIHBsZWFzZSB1cGRhdGUgc2V0dGluZzonfSA9CiAgICAgICAgJ9Cc0L7QvNC10L3RgtCw0LvQvdC+INGB0LUg0L/RgNC40LrQsNC20LDQvdC4INGB0LDQvNC+INCw0LrRgtC40LLQvdC40YLQtSDQutC+0YDQuNGB0L3QuNGG0Lgg0L3QsCDQvtCy0L7RmCDQv9GA0L7QtdC60YIuINCX0LAg0LTQsCDQs9C+INGB0LzQtdC90LjRgtC1INC+0LLQsCwg0LLQtSDQvNC+0LvQuNC80LUg0L3QsNC/0YDQsNCy0LXRgtC1INC40LfQvNC10L3QsCDQstC+INC/0L7QtNC10YHRg9Cy0LDRmtCw0YLQsDonOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAn0JzQvtC80LXQvdGC0LDQu9C90L4g0YHQtSDQv9GA0LjQutCw0LbQsNC90Lgg0YHQsNC80L4g0LrQvtGA0LjRgdC90LjRhtC4INC60L7QuCDQv9GA0LXRgdC80LXRgtGD0LLQsNCw0YIg0LLRgNC10LzQtS4g0JfQsCDQtNCwINCz0L4g0YHQvNC10L3QuNGC0LUg0L7QstCwLCDQstC1INC80L7Qu9C40LzQtSDQvdCw0L/RgNCw0LLQtdGC0LUg0LjQt9C80LXQvdCwINCy0L4g0L/QvtC00LXRgdGD0LLQsNGa0LDRgtCwOic7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byB0aWNrZXQnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdTZXR0aW5nCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgQWNjb3VudGluZyBQcm9qZWN0IFNldHRpbmdzJ30gPSAn0JjQt9C80LXQvdC4INCf0L7QtNC10YHRg9Cy0LDRmtCwINC30LAg0J/RgNC10YHQvNC10YLRg9Cy0LDRmtC1INC90LAg0JLRgNC10LzQtSDQvdCwINCf0YDQvtC10LrRgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgcHJvamVjdCd9ID0gJ9CU0L7QtNCw0LTQuCDQv9GA0L7QtdC60YInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICfQntC00Lgg0LLQviDQv9GA0LXQs9C70LXQtCDQvdCwINC/0L7QtNC10YHRg9Cy0LDRmtCwJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBQcm9qZWN0J30gPSAn0JTQvtC00LDQtNC4INCf0YDQvtC10LrRgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFByb2plY3QgU2V0dGluZ3MnfSA9ICfQo9GA0LXQtNC4INCz0L4g0J/QvtC00LXRgdGD0LLQsNGa0LDRgtC+INC90LAg0J/RgNC+0LXQutGC0L7Rgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgcHJvamVjdCB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAn0JLQtdGc0LUg0L/QvtGB0YLQvtC4INC/0YDQvtC10LrRgiDRgdC+INCy0LDQutCy0L4g0LjQvNC1LCDQstC1INC80L7Qu9C40LzQtSwg0LjQt9Cx0LXRgNC10YLQtSDQtNGA0YPQs9C+Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgQWNjb3VudGluZyBTZXR0aW5ncyd9ID0gJ9CY0LfQvNC10L3QuCDQn9C+0LTQtdGB0YPQstCw0ZrQsCDQt9CwINCf0YDQtdGB0LzQtdGC0YPQstCw0ZrQtSDQvdCwINCS0YDQtdC80LUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICfQlNC+0LTQsNC00Lgg0LfQsNC00LDRh9CwJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBhIHVzZXIgdG8gdGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGaWx0ZXIgZm9yIHByb2plY3RzLCB0YXNrcyBvciB1c2Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHBlcmlvZHMgY2FuIG5vdCBiZSBkZWxldGVkLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IExpc3QnfSA9ICfQm9C40YHRgtCwINC90LAg0L/RgNC+0LXQutGC0LgnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayBMaXN0J30gPSAn0JvQuNGB0YLQsCDQvdCwINCX0LDQtNCw0YfQuCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgVGFzayd9ID0gJ9CU0L7QtNCw0LTQuCDQl9Cw0LTQsNGH0LAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAn0JjQt9C80LXQvdC4INCf0L7QtNC10YHRg9Cy0LDRmtCwINC30LAg0JfQsNC00LDRh9C4JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICfQktC10ZzQtSDQv9C+0YHRgtC+0Lgg0LfQsNC00LDRh9CwINGB0L4g0LLQsNC60LLQviDQuNC80LUuINCS0LUg0LzQvtC70LjQvNC1INC40LfQsdC10YDQtdGC0LUg0LTRgNGD0LPQvi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAn0JvQuNGB0YLQsCDQvdCwINCa0L7RgNC40YHQvdC40YbQuCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBzZWUgb3ZlcnRpbWVzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgT3ZlcnRpbWUnfSA9ICfQn9GA0LjQutCw0LbQuCDQn9GA0LXQutGD0LLRgNC10LzQtdC90L4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIGNyZWF0ZSBwcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyBwcm9qZWN0IGNyZWF0aW9uJ30gPSAn0JTQvtC30LLQvtC70Lgg0LrRgNC10LjRgNCw0ZrQtSDQvdCwINC/0YDQvtC10LrRgtC4JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBza2lwIHRpbWUgYWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyB0aW1lIGFjY291bnRpbmcgc2tpcHBpbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgdGhpcyBvcHRpb24gaXMgc2VsZWN0ZWQsIHRpbWUgYWNjb3VudGluZyBpcyBlZmZlY3RpdmVseSBvcHRpb25hbCBmb3IgdGhlIHVzZXIuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlcmUgd2lsbCBiZSBubyB3YXJuaW5ncyBhYm91dCBtaXNzaW5nIGVudHJpZXMgYW5kIG5vIGVudHJ5IGVuZm9yY2VtZW50Lid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgU3BhbnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEJlZ2luJ30gPSAn0J/QvtGH0LXRgtC+0Log0L3QsCDQn9C10YDQuNC+0LQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJ9Ca0YDQsNGYINC90LAg0J/QtdGA0LjQvtC0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RheXMgb2YgVmFjYXRpb24nfSA9ICfQlNC10L3QvtCy0Lgg0L3QsCDQntC00LzQvtGAJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAn0KfQsNGB0L7QstC4INCy0L4g0J3QtdC00LXQu9CwJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICfQkNCy0YLQvtGA0LjQt9C40YDQsNC90L4g0J/RgNC10LrRg9Cy0YDQtdC80LXQvdC+JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N0YXJ0IERhdGUnfSA9ICfQn9C+0YfQtdGC0L7Quic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICfQktC1INC80L7Qu9C40LzQtSDQstC90LXRgdC10YLQtSDQstCw0LvQuNC00LXQvSDQtNCw0YLRg9C8Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgRGF0ZSd9ID0gJ9Ca0YDQsNGYJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBlbmQgbXVzdCBiZSBhZnRlciBwZXJpb2QgYmVnaW4uJ30gPSAn0JrRgNCw0ZjQvtGCINC80L7RgNCwINC00LAg0LHQuNC00LUg0L/RgNC10LQg0L/QvtGH0LXRgtC+0LrQvtGCLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMZWF2ZSBEYXlzJ30gPSAn0JTQtdC90L7QstC4INCy0L4g0J7RgtGB0YPRgdGC0LLQvic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICfQp9Cw0YHQvtCy0Lgg0J3QtdC00LXQu9C90L4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICfQn9GA0LXQutGD0LLRgNC10LzQtdC90L4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJ9Cd0LUg0YHQtSDQv9GA0L7QvdCw0ZjQtNC10L3QuCDQt9Cw0L/QuNGB0LguJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCB0aW1lIHBlcmlvZCd9ID0gJ9CS0L3QtdGB0Lgg0LLRgNC10LzQtdC90YHQutC4INC/0LXRgNC40L7QtCc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgVGltZSBSZWNvcmQnfSA9ICfQn9GA0LXQs9C70LXQtNCw0Zgg0JLRgNC10LzQtdC90YHQutC4INCX0LDQv9C40YHQuCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IG9mICd9ID0gJ9Cf0YDQtdCz0LvQtdC0INC90LAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJldmlvdXMgZGF5J30gPSAn0J/RgNC10YLRhdC+0LTQtdC9INC00LXQvSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJ9Ch0LvQtdC00LXQvSDQtNC10L0nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gZGF0YSBmb3VuZCBmb3IgdGhpcyBkYXkuJ30gPSAn0J3QtSDRgdC1INC/0YDQvtC90LDRmNC00LXQvdC4INC30LDQv9C40YHQuCDQt9CwINC+0LLQvtGYINC00LXQvS4nOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAn0KPRgdC/0LXRiNC10L0g0LLQvdC10YEhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICfQk9GA0LXRiNC60LAg0L/RgNC4INCy0LzQtdGC0L3Rg9Cy0LDRmtC1INC90LAg0L/QvtCy0LXRnNC1INC00LDRgtGD0LzQuCEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAn0KPRgdC/0LXRiNC90L4g0YHQtSDQstC90LXRgdC10L3QuCDQv9C+0LTQsNGC0L7RhtC40YLQtSDQt9CwINC00LDRgtGD0LzQuNGC0LUhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICfQktC90LXRgdC10L3QuNC+0YIg0LTQsNGC0YPQvCDQsdC10YjQtSDQstCw0LvQuNC00LXQvSEg0JTQsNGC0YPQvCDQsdC10YjQtSDQv9GA0L7QvNC10L3QtdGC0L4g0LTQviDQtNC10L3QtdGBLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyB0aW1lIHBlcmlvZCBjb25maWd1cmVkLCBvciB0aGUgc3BlY2lmaWVkIGRhdGUgaXMgb3V0c2lkZSBvZiB0aGUgZGVmaW5lZCB0aW1lIHBlcmlvZHMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNvbnRhY3QgdGhlIHRpbWUgYWNjb3VudGluZyBhZG1pbmlzdHJhdG9yIHRvIHVwZGF0ZSB5b3VyIHRpbWUgcGVyaW9kcyEnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMYXN0IFNlbGVjdGVkIFByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbCBQcm9qZWN0cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBQcm9qZWN0SUQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nJ30gPSAn0JjQt9Cy0LXRgdGC0YPQstCw0ZrQsCc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBUaWNrZXRJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBObyBQcm9qZWN0IGZvciBUaWNrZXQgZm91bmQuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIHVwZGF0ZSB1c2VyIHNldHRpbmdzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gYWRkIHRpbWUgcGVyaW9kISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAn0J/QvtC00LXRgdGD0LLQsNGa0LUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciB1cGRhdGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXcgVXNlcid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgU3RhdHVzJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nVmlldy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldzogTmVlZCAlcyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ob3RpZmljYXRpb24vVGltZUFjY291bnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBpbnNlcnQgeW91ciB3b3JraW5nIGhvdXJzISd9ID0gJ9CS0LUg0LzQvtC70LjQvNC1INCy0L3QtdGB0LXRgtC1INCz0L4g0LLQsNGI0LXRgtC+INGA0LDQsdC+0YLQvdC+0YLQviDQstGA0LXQvNC1ISc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL091dHB1dC9IVE1ML1Rvb2xCYXIvSW5jb21wbGV0ZVdvcmtpbmdEYXlzLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyd9ID0gJyc7CgogICAgIyBKUyBGaWxlOiBUaW1lQWNjb3VudGluZy5BZ2VudC5FZGl0VGltZVJlY29yZHMKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnfSA9ICfQktC1INC80L7Qu9C40LzQtSDQuNC30LHQtdGA0LXRgtC1INCx0LDRgNC10Lwg0LXQtNC10L0g0LTQtdC9ISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXNzIEVudHJ5J30gPSAn0JzQsNGB0L7QstC10L0g0JLQvdC10YEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICfQktC1INC80L7Qu9C40LzQtSDQuNC30LHQtdGA0LXRgtC1INGY0LAg0L/RgNC40YfQuNC90LAg0LfQsCDQvtGC0YHRg9GB0YLQstC+ISc7CgogICAgIyBKUyBGaWxlOiBUaW1lQWNjb3VudGluZy5BZ2VudAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVsZXRlIFRpbWUgQWNjb3VudGluZyBFbnRyeSd9ID0gJ9CY0LfQsdGA0LjRiNC4INCz0L4g0JLQvdC10YHQvtGCINGB0L4g0J/RgNC10YHQvNC10YLQsNC90L4g0JLRgNC10LzQtSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDb25maXJtIGluc2VydCd9ID0gJ9Cf0YDQuNGE0LDRgtC4INC00L7QtNCw0LLQsNGa0LUnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJ9Cc0L7QtNGD0LvQsCDQt9CwINC40L3RgtC10YDRhNC10ZjRgSDQvdCwINCQ0LPQtdC90YIg0LfQsCDQtNCwINCz0L4g0LPQu9C10LTQsCDQsdGA0L7RmNC+0YIg0L3QsCDQvdC10LfQsNCy0YDRiNC10L3QuCDRgNCw0LHQvtGC0L3QuCDQtNC10L3QvtCy0Lgg0LfQsCDQutC+0YDQuNGB0L3QuNC6Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICfQktC+0L7QsdC40YfQsNC10L3QviDQuNC80LUg0LfQsCDQvdC+0LLQuCDQsNC60YbQuNC4Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IG5hbWUgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICfQktC+0L7QsdC40YfQsNC10L3QviDQuNC80LUg0LfQsCDQvdC+0LLQuCDQv9GA0L7QtdC60YLQuC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkYXRlIGVuZC4nfSA9ICfQktC+0L7QsdC40YfQsNC10L3QviDQv9C+0LTQtdGB0YPQstCw0ZrQtSDQt9CwINC60YDQsNC10L0g0LTQsNGC0YPQvC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkYXRlIHN0YXJ0Lid9ID0gJ9CS0L7QvtCx0LjRh9Cw0LXQvdC+INC/0L7QtNC10YHRg9Cy0LDRmtC1INC30LAg0L/QvtGH0LXRgtC10L0g0LTQsNGC0YPQvC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICfQktC+0L7QsdC40YfQsNC10L3QviDQv9C+0LTQtdGB0YPQstCw0ZrQtSDQt9CwINC+0L/QuNGBLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGxlYXZlIGRheXMuJ30gPSAn0JLQvtC+0LHQuNGH0LDQtdC90L4g0L/QvtC00LDRgdGD0LLQsNGa0LUg0LfQsCDQvtGC0YHRg9GB0YLQstC+Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJ9CS0L7QvtCx0LjRh9Cw0LXQvdC+INC/0L7QtNCw0YHRg9Cy0LDRmtC1INC30LAg0L/RgNC10LrRg9Cy0YDQtdC80LXQvdC+Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAn0JLQvtC+0LHQuNGH0LDQtdC90L4g0L/QvtC00LDRgdGD0LLQsNGa0LUg0LfQsCDRgdGC0LDQvdC00LDRgNC00LXQvSDQsdGA0L7RmCDQvdCwINGA0LDQsdC+0YLQvdC4INGH0LDRgdC+0LLQuCDQstC+INC90LXQtNC10LvQsC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBhY3Rpb25zLid9ID0gJ9CS0L7QvtCx0LjRh9Cw0LXQvSDRgdGC0LDRgtGD0YEg0LfQsCDQvdC+0LLQuCDQsNC60YbQuNC4Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHN0YXR1cyBmb3IgbmV3IHByb2plY3RzLid9ID0gJ9CS0L7QvtCx0LjRh9Cw0LXQvSDRgdGC0LDRgtGD0YEg0LfQsCDQvdC+0LLQuCDQv9GA0L7QtdC60YLQuC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICfQktC+0L7QsdC40YfQsNC10L0g0YHRgtCw0YLRg9GBINC30LAg0L3QvtCy0Lgg0LrQvtGA0LjRgdC90LjRhtC4Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZpbmVzIHRoZSBwcm9qZWN0cyBmb3Igd2hpY2ggYSByZW1hcmsgaXMgcmVxdWlyZWQuIElmIHRoZSBSZWdFeHAgbWF0Y2hlcyBvbiB0aGUgcHJvamVjdCwgeW91IGhhdmUgdG8gaW5zZXJ0IGEgcmVtYXJrIHRvby4gVGhlIFJlZ0V4cCB1c2UgdGhlIHNteCBwYXJhbWV0ZXIuJ30gPQogICAgICAgICfQlNC10YTQuNC90LjRgNCwINC/0YDQvtC10LrRgiDQt9CwINC60L7RmCDQtSDQv9C+0YLRgNC10LHQvdC+INC30LDQsdC10LvQtdGI0LrQsC4g0JTQvtC60L7Qu9C60YMgUmVnRXhwINGB0LUg0YHQvtGE0L/QsNGT0LAg0YHQviDQvtCy0L7RmCDQv9GA0L7QtdC60YIsINGC0L7Qs9Cw0Ygg0LUg0L/QvtGC0YDQtdCx0L3QviDQtNCwINCy0L3QtdGB0LXRgtC1INC30LDQsdC10YfQtdGI0LrQsC4gUmVnRXhwINC60L7RgNC40YHRgtC4IHNteCDQv9Cw0YDQsNC80LXRgtCw0YAuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICfQntC00YDQtdC00YPQstCwINC00LDQu9C4INC80L7QtNGD0LvQvtGCINC30LAg0YHRgtCw0YLQuNGB0YLQuNC60LAg0LzQvtC20LUg0LTQsCDQs9C10L3QtdGA0LjRgNCwINC40L3RhNC+0YDQvNCw0YbQuNC4INC30LAg0L/RgNC10YHQvNC10YLQutCwINC90LAg0LLRgNC10LzQtS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJ9CX0LAg0LrQvtC70LrRgyDQvNC90L7Qs9GDINC00LXQvdC+0LLQuCDQv9GA0LXQtCDQvNC+0LbQtdGC0LUg0LTQsCDQstC80LXRgtC90LXRgtC1INGA0LDQsdC+0YLQvdC4INC10LTQuNC90LjRhtC4Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICfQkNC60L4g0LUg0L7QstC+0LfQvNC+0LbQtdC90L4sINGB0LDQvNC+INC60L7RgNC40YHQvdC40YbQuNGC0LUg0LrQvtC4INGc0LUg0LTQvtC00LDQtNCw0YIg0YDQsNCx0L7RgtC90L7RgtC+INCy0YDQtdC80LUg0L3QsCDQuNC30LHRgNCw0L3QuNGC0LUg0L/RgNC+0LXQutGC0LggINGc0LUg0LHQuNC00LDRgiDQv9GA0LjQutCw0LbQsNC90LguJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBkcm9wZG93biBlbGVtZW50cyBpbiB0aGUgZWRpdCBzY3JlZW4gYXJlIGNoYW5nZWQgdG8gbW9kZXJuaXplZCBhdXRvY29tcGxldGlvbiBmaWVsZHMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGNhbiBiZSB1c2VkIGluc3RlYWQgdHdvIGxpc3Qgb2YgcHJvamVjdHMgKGxhc3QgYW5kIGFsbCBvbmVzKS4gSXQgY291bGQgYmUgdXNlZCBvbmx5IGlmIFRpbWVBY2NvdW50aW5nOjpFbmFibGVBdXRvQ29tcGxldGlvbiBpcyBlbmFibGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBmaWx0ZXIgZm9yIHRoZSBwcmV2aW91cyBwcm9qZWN0cyBpcyBhY3RpdmUgYnkgZGVmYXVsdCBpZiB0aGVyZSBhcmUgdGhlIHByZXZpb3VzIHByb2plY3RzLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgRW5hYmxlQXV0b0NvbXBsZXRpb24gYW5kIFRpbWVBY2NvdW50aW5nOjpVc2VGaWx0ZXIgYXJlIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIHVzZXIgaXMgYWxsb3dlZCB0byBlbnRlciAib24gdmFjYXRpb24gbGVhdmUiLCAib24gc2ljayBsZWF2ZSIgYW5kICJvbiBvdmVydGltZSBsZWF2ZSIgdG8gbXVsdGlwbGUgZGF0ZXMgYXQgb25jZS4nfSA9CiAgICAgICAgJ9CQ0LrQviDQtSDQvtCy0L7Qt9C80L7QttC10L3Qviwg0L3QsCDQutC+0YDQuNGB0L3QuNC60L7RgiDRnNC1INC80YMg0LHQuNC00LUg0LTQvtC30LLQvtC70LXQvdC+INC00LAg4oCe0JHQvtC70LXQtNGD0LLQsOKAnCwg0LTQsCDRgNCw0LHQvtGC0Lgg4oCe0J/RgNC10LrRg9Cy0YDQtdC80LXQvdC+4oCcINC4INC00LAg0LfQtdC80LAg4oCe0J7QtNC80L7RgOKAnCDQv9C+0LLQtdGc0LUg0L/QsNGC0Lgg0L7QtNC10LTQvdCw0YguJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAn0JzQsNC60YHQuNC80LDQu9C10L0g0LHRgNC+0Zgg0L3QsCDRgNCw0LHQvtGC0L3QuCDQtNC10L3QvtCy0Lgg0L/QviDRiNGC0L4g0YDQsNCx0L7RgtC90LjRgtC1INC10LTQuNC90LjRhtC4INGC0YDQtdCx0LAg0LTQsCDRgdC1INCy0LzQtdGC0L3QsNGCLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXhpbXVtIG51bWJlciBvZiB3b3JraW5nIGRheXMgd2l0aG91dCB3b3JraW5nIHVuaXRzIGVudHJ5IGFmdGVyIHdoaWNoIGEgd2FybmluZyB3aWxsIGJlIHNob3duLid9ID0KICAgICAgICAn0JzQsNC60YHQuNC80LDQu9C10L0g0LHRgNC+0Zgg0L3QsCDRgNCw0LHQvtGC0L3QuCDQtNC10L3QvtCy0Lgg0LHQtdC3INGA0LDQsdC+0YLQvdC4INC10LTQuNC90LjRhtC4INGc0LUg0LLQu9C10LfQsNGCLCDQsCDQv9C+0YLQvtCwINC/0YDQtdC00YPQv9GA0LXQtNGD0LLQsNGa0LUg0ZzQtSDQsdC40LTQsNGCINC/0YDQuNC60LDQttCw0L3QuC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICfQodGC0LDQvdC00LDRgNC00L3QuCDQuNC30YDQsNC30Lgg0LfQsCDQvtCz0YDQsNC90LjRh9GD0LLQsNGa0LUg0L3QsCDQu9C40YHRgtCwINC+0LQg0LDQutGG0LjQuCDQstC+INC90LDQt9C90LDRh9C10L0g0L/RgNC+0LXQutGCLiDQmtC70YPRh9C+0YIg0YHQvtC00YDQttC4INGB0YLQsNC90LTQsNGA0LTQvdC4INC40LfRgNCw0LfQuCDQt9CwINC/0YDQvtC10LrRgijQuCksINGB0L7QtNGA0LbQuNC90LDRgtCwINGB0L7QtNGA0LbQuCDRgdGC0LDQvdC00LDRgNC00L3QuCDQuNC30YDQsNC30Lgg0LfQsCDQsNC60YbQuNGY0LAo0LgpLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZWd1bGFyIGV4cHJlc3Npb25zIGZvciBjb25zdHJhaW5pbmcgcHJvamVjdCBsaXN0IGFjY29yZGluZyB0byB1c2VyIGdyb3Vwcy4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiBncm91cHMuJ30gPQogICAgICAgICfQodGC0LDQvdC00LDRgNC00LXQvSDQuNC30YDQsNC3INC30LAg0L7Qs9GA0LDQvdC40YfRg9Cy0LDRmtC1INC90LAg0LvQuNGB0YLQsCDQstC+INC/0YDQvtC10LrRgiDRgdC/0L7RgNC10LQg0LrQvtGA0LjRgdC90LjRh9C60LjRgtC1INCz0YDRg9C/0LguINCa0LvRg9GH0L7RgiDRgdC1INGB0L7QtNGA0LbQuCDQvtC0INGB0YLQsNC90LTQsNGA0LTQvdC4INC40LfRgNCw0LfQuCDQt9CwINC/0YDQvtC10LrRgijQuCksINGB0L7QtNGA0LbQuNC90LDRgtCwINGB0L7QtNGA0LbQuCDQu9C40YHRgtCwINC+0LQg0LPRgNGD0L/QuCDQvtC00LTQtdC70LXQvdC4INGB0L4g0LfQsNC/0LjRgNC60LAuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAn0KHQv9C10YbQuNGE0LjRhtC40YDQsCDQtNCw0LvQuCDRgNCw0LHQvtGC0L3QuNGC0LUg0YfQsNGB0L7QstC4INC80L7QttCw0YIg0LTQsCDQsdC40LTQsNGCINC00L7QtNCw0LTQtdC90Lgg0LHQtdC3INCy0YDQtdC80LUg0L3QsCDQv9C+0YfQtdGC0L7QuiDQuCDQutGA0LDRmC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3luY2hyb25pc2UgY3VzdG9tZXJzIGFzIGEgbmV3IHByb2plY3QgaWYgdGhleSBleGlzdHMgaW4gdGhlIGN1c3RvbWVyIGRhdGFiYXNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgbW9kdWxlIGZvcmNlcyBpbnNlcnRzIGluIFRpbWVBY2NvdW50aW5nLid9ID0gJ9Ce0LLQvtGYINC80L7QtNGD0Lsg0L/RgNC40YHQuNC70YPQstCwINCy0L3QtdGBINCy0L4g0J/RgNC10YHQvNC10YLQutCwINC90LAg0LLRgNC10LzQtS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICfQntCy0L7RmCDQuNC30LLQtdGB0YLRg9Cy0LDRh9C60Lgg0LzQvtC00YPQuyDQtNCw0LLQsCDQv9GA0LXQtNGD0L/RgNC10LTRg9Cy0LDRmtC1INCw0LrQviDQuNC80LAg0L/RgNC10LzQvdC+0LPRgyDQvdC10YbQtdC70L7RgdC90Lgg0YDQsNCx0L7RgtC90Lgg0LTQtdC90LAuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCB0aW1lIHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIEFjY291bnRpbmcnfSA9ICfQnNC10L3QsNGf0LzQtdC90YIg0L3QsCDQktGA0LXQvNC1JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgUmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBlZGl0Lid9ID0gJ9Cj0YDQtdC00YPQstCw0ZrQtSDQvdCwICDQvNC10L3QsNGf0LzQtdC90YIg0L3QsCDQktGA0LXQvNC1JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBvdmVydmlldy4nfSA9ICfQn9GA0LXQs9C70LXQtCDQvdCwINC80LXQvdCw0Z/QvNC10L3RgiDQvdCwINCS0YDQtdC80LUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHJlcG9ydGluZy4nfSA9ICfQmNC30LLQtdGB0YLRg9Cy0LDRmtC1INC30LAg0LzQtdC90LDRn9C80LXQvdGCINC90LAg0JLRgNC10LzQtSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAn0J/QvtC00LXRgdGD0LLQsNGa0LUg0L3QsCAg0LzQtdC90LDRn9C80LXQvdGCINC90LAg0JLRgNC10LzQtSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdGlja2V0IHJlcG9ydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHZpZXcuJ30gPSAn0J/QvtCz0LvQtdC0INC90LAgINC80LXQvdCw0Z/QvNC10L3RgiDQvdCwINCS0YDQtdC80LUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJyDQvNC10L3QsNGf0LzQtdC90YIg0L3QsCDQktGA0LXQvNC1JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvIHVzZSBpZiBzb21lIGFjdGlvbnMgcmVkdWNlZCB0aGUgd29ya2luZyBob3VycyAoZm9yIGV4YW1wbGUsIGlmIG9ubHkgaGFsZiBvZiB0aGUgdHJhdmVsaW5nIHRpbWUgaXMgcGFpZCBLZXkgPT4gdHJhdmVsaW5nOyBDb250ZW50ID0+IDUwKS4nfSA9CiAgICAgICAgJ9Ch0LUg0LrQvtGA0LjRgdGC0Lgg0LrQvtCz0LAg0L3QtdC60L7QuCDQsNC60YbQuNC4INCz0L4g0YHQvNCw0LvRg9Cy0LDQsNGCINCx0YDQvtGY0L7RgiDQvdCwINGA0LDQsdC+0YLQvdC4INGH0LDRgdC+0LLQuCAo0L3QsCDQv9GA0LjQvNC10YAsINC00L7QutC+0LvQutGDINC/0L7Qu9C+0LLQuNC90LAg0L7QtCDQstGA0LXQvNC10YLQviDQvdCwINC/0LDRgtGD0LLQsNGa0LUg0LUg0L/Qu9Cw0YLQtdC90L4gS2V5ID0+INC/0LDRgtGD0LLQsNGa0LU7ICBDb250ZW50ID0+IDUwKS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/ms_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6Om1zX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJ1R1Z2FzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFyayd9ID0gJ0tvbWVuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N0YXJ0IHRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IG11c3QgZW50ZXIgYSBzdGFydCBhbmQgYW4gZW5kIHRpbWUsIG9yIGEgcG9zaXRpdmUgcGVyaW9kIG9mIHVwIHRvIDI0IGhvdXJzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZSB0aW1lIHBlcmlvZCBtdXN0IGJlIGdpdmVuIGluIGhvdXJzIGFuZCBjYW4gYmUgYSBkZWNpbWFsIG51bWJlci4nfSA9CiAgICAgICAgJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ0RlbGV0ZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRG8geW91IHJlYWxseSB3YW50IHRvIGRlbGV0ZSB0aGUgVGltZSBBY2NvdW50aW5nIG9mIHRoaXMgZGF5Pyd9ID0KICAgICAgICAnQWRha2FoIGFuZGEgcGFzdGkgaW5naW4gbWVuZ2hhcHVza2FuIFBlcmFrYXVuYW4gTWFzYSBoYXJpIGluaT8nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnU3VudGluZyBSZWtvZCBNYXNhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnUGVyZ2kga2UgdGV0YXBhbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXRlIE5hdmlnYXRpb24nfSA9ICdOYXZpZ2FzaSBUYXJpa2gnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF5cyB3aXRob3V0IGVudHJpZXMnfSA9ICdIYXJpIHRhbnBhIHBlbnllcnRhYW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2VsZWN0IGFsbCBkYXlzJ30gPSAnUGlsaWgga2VzZW11YSBoYXJpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgZW50cnknfSA9ICdLZW1hc3VrYW4gYmVzYXItYmVzYXJhbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJ1BpbGloIHNlYmFiIGtldGlkYWtoYWRpcmFuIGFuZGEgdW50dWsgaGFyaS1oYXJpIHlhbmcgZGlwaWxpaCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJ0JlcmN1dGknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gc2ljayBsZWF2ZSd9ID0gJ0N1dGkgc2FraXQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gb3ZlcnRpbWUgbGVhdmUnfSA9ICdCZXJjdXRpIGxlYmloIG1hc2EnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVxdWlyZWQgZmllbGRzIGFyZSBtYXJrZWQgd2l0aCBhICIqIi4nfSA9ICdNZWRhbiB5YW5nIGRpcGVybHVrYW4gZGl0YW5kYWkgZGVuZ2FuICIqIi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGhhdmUgdG8gZmlsbCBpbiBzdGFydCBhbmQgZW5kIHRpbWUgb3IgYSB0aW1lIHBlcmlvZC4nfSA9ICdBbmRhIHBlcmx1IG1lbmdpc2kgcGVybXVsYWFuIGRhbiBha2hpciBtYXNhIGF0YXUgdGVtcG9oIG1hc2EuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICdQcm9qZWsnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJ1NpbGEgdGFtYmFoIGtvbWVuIGRlbmdhbiBsZWJpaCBkYXJpcGFkYSA4IGthcmFrdGVyISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnV2FrdHUgbmVnYXRpZiB0aWRhayBkaWJlbmFya2FuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIFN0YXJ0IHRpbWUgbWF0Y2hlcyBhbm90aGVyIGludGVydmFsLid9ID0KICAgICAgICAnUGVuZ3VsYW5nYW4gamFtIGFkYWxhaCB0aWRhayBkaWJlbmFya2FuLiBNYXNhIG11bGEgcGFkYW4gZGVuZ2FuIHNlbGFuZyBsYWluLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIGZvcm1hdCEgUGxlYXNlIGVudGVyIGEgdGltZSB3aXRoIHRoZSBmb3JtYXQgSEg6TU0uJ30gPSAnRm9ybWF0IHRpZGFrIHNhaCEgU2lsYSBtYXN1a2thbiBtYXNhIGRlbmdhbiBmb3JtYXQgSEg6TU0uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57JzI0OjAwIGlzIG9ubHkgcGVybWl0dGVkIGFzIGVuZCB0aW1lLid9ID0gJzI0OjAwIGhhbnlhIGRpYmVuYXJrYW4gc2ViYWdhaSBtYXNhIGFraGlyLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHRpbWUhIEEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzLid9ID0gJ01hc2EgdGlkYWsgc2FoISBTZWhhcmkgaGFueWEgbWVtcHVueWFpIDI0IGphbS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJ01hc2EgdGFtYXQgbWVzdGkgc2VsZXBhcyBtYXNhIG11bGEuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gRW5kIHRpbWUgbWF0Y2hlcyBhbm90aGVyIGludGVydmFsLid9ID0KICAgICAgICAnUGVuZ3VsYW5nYW4gamFtIGFkYWxhaCB0aWRhayBkaWJlbmFya2FuLiBNYXNhIGFraGlyIHBhZGFuIGRlbmdhbiBzZWxhbmcgbGFpbi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIEEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzLid9ID0gJ1RlbXBvaCB0aWRhayBzYWghIFNlaGFyaSBoYW55YSBtZW1wdW55YWkgMjQgamFtLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBIHZhbGlkIHBlcmlvZCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiB6ZXJvLid9ID0gJ1RlbXBvaCBzYWggbWVzdGkgbGViaWggYmVzYXIgZGFyaXBhZGEgc2lmYXIuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICdUZW1wb2ggdGlkYWsgc2FoISBUZW1wb2ggbmVnYXRpZiBhZGFsYWggdGlkYWsgZGliZW5hcmthbi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICdUYW1iYWggc2F0dSBiYXJpcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgY2FuIG9ubHkgc2VsZWN0IG9uZSBjaGVja2JveCBlbGVtZW50ISd9ID0gJ0FuZGEgaGFueWEgYm9sZWggcGlsaWggc2F0dSBlbGVtZW4ga290YWsgc2VtYWshJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gc2ljayBsZWF2ZT8nfSA9ICdBZGFrYWggYW5kYSBwYXN0aSBiYWhhd2EgYW5kYSBiZWtlcmphIHNlbWFzYSBhbmRhIGJlcmN1dGkgc2FraXQ/JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gdmFjYXRpb24/J30gPSAnQWRha2FoIGFuZGEgcGFzdGkgYmFoYXdhIGFuZGEgYmVrZXJqYSBzZW1hc2EgYW5kYSBiZXJjdXRpPyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnQWRha2FoIGFuZGEgcGFzdGkgYmFoYXdhIGFuZGEgYmVrZXJqYSBzZW1hc2EgYW5kYSBiZXJjdXRpIGxlYmloIG1hc2E/JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJ0FkYWthaCBhbmRhIHBhc3RpIGJhaGF3YSBhbmRhIGJla2VyamEgbGViaWggZGFyaXBhZGEgMTYgamFtPyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnR2FtYmFyYW4gYnVsYW5hbiBtYXNhIG1lbGFwb3JrYW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKEhvdXJzKSd9ID0gJ0xlYmloIG1hc2EgKEphbSknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnS2VyamEgbGViaWggbWFzYSAoYnVsYW4gaW5pKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAodG90YWwpJ30gPSAnS2VyamEgbGViaWggbWFzYSAoanVtbGFoKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgb3ZlcnRpbWUgbGVhdmUnfSA9ICdCYWtpIGN1dGkgbGViaWggbWFzYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiAoRGF5cyknfSA9ICdCZXJjdXRpIChIYXJpKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICdDdXRpIGRpYW1iaWwgKGJ1bGFuIGluaSknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJ0N1dGkgZGlhbWJpbCAoanVtbGFoKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICdCYWtpIGN1dGknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICdDdXRpIFNha2l0IChIYXJpKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlIHRha2VuICh0aGlzIG1vbnRoKSd9ID0gJ0N1dGkgc2FraXQgZGlhbWJpbCAoYnVsYW4gaW5pKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlIHRha2VuICh0b3RhbCknfSA9ICdDdXRpIHNha2l0IGRpYW1iaWwgKGp1bWxhaCknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJldmlvdXMgbW9udGgnfSA9ICdCdWxhbiBzZWJlbHVtJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICdCdWxhbiBiZXJpa3V0bnlhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlZWtkYXknfSA9ICdIYXJpIG1pbmdndSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnSmFtIGJla2VyamEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG90YWwgd29ya2VkIGhvdXJzJ30gPSAnSnVtbGFoIGphbSBiZWtlcmphJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXJcJ3MgcHJvamVjdCBvdmVydmlldyd9ID0gJ0dhbWJhcmFuIHByb2playBwZW5nZ3VuYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyAobW9udGhseSknfSA9ICdKYW0gKGJ1bGFuYW4pJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICdKYW0gKEhheWF0KSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHcmFuZCB0b3RhbCd9ID0gJ0p1bWxhaCBrZXNlbHVydWhhbic7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSByZXBvcnRpbmcnfSA9ICdNYXNhIG1lbGFwb3JrYW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGggTmF2aWdhdGlvbid9ID0gJ05hdmlnYXNpIGJ1bGFuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIGRhdGUnfSA9ICdQZXJnaSBrZSB0YXJpa2gnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciByZXBvcnRzJ30gPSAnTGFwb3JhbiBwZW5nZ3VuYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNb250aGx5IHRvdGFsJ30gPSAnSnVtbGFoIGJ1bGFuYW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGlmZXRpbWUgdG90YWwnfSA9ICdKdW1sYWggaGF5YXQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgbGVhdmUnfSA9ICdDdXRpIGxlYmloIG1hc2EnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24nfSA9ICdCZXJjdXRpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUnfSA9ICdDdXRpIHNha2l0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJ0Jha2kgY3V0aSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICdMYXBvcmFuIHByb2playc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1Byb2plY3QKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgcmVwb3J0J30gPSAnTGFwb3JhbiBwcm9qZWsnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gcmVwb3J0aW5nIG92ZXJ2aWV3J30gPSAnUGVyZ2kga2UgdGluamF1YW4gbWVsYXBvcmthbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDdXJyZW50bHkgb25seSBhY3RpdmUgdXNlcnMgaW4gdGhpcyBwcm9qZWN0IGFyZSBzaG93bi4gVG8gY2hhbmdlIHRoaXMgYmVoYXZpb3IsIHBsZWFzZSB1cGRhdGUgc2V0dGluZzonfSA9CiAgICAgICAgJ1BhZGEgbWFzYSBpbmkgaGFueWEgcGVuZ2d1bmEgYWt0aWYgZGFsYW0gcHJvamVrIGluaSBha2FuIGRpdHVuanVra2FuLiBVbnR1ayBtZW5ndWJhaCBzaWZhdCBpbmksIHNpbGEga2VtYXMga2luaSB0ZXRhcGFuOic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDdXJyZW50bHkgYWxsIHRpbWUgYWNjb3VudGluZyB1c2VycyBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICdQYWRhIG1hc2EgaW5pIGtlc2VtdWEgcGVuZ2d1bmEgcGVyYWthdW5hbiBtYXNhIGRpdHVuanVra2FuLiBVbnR1ayBtZW5ndWJhaCB0aW5na2FoIGxha3UgaW5pLCBzaWxhIGtlbWFzIGtpbmkgdGV0YXBhbjonOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCByZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gdGlja2V0J30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgUHJvamVjdCBTZXR0aW5ncyd9ID0gJ1N1bnRpbmcgVGV0YXBhbiBQcm9qZWsgUGVyYWthdW5hbiBNYXNhICc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgcHJvamVjdCd9ID0gJ1RhbWJhaCBwcm9qZWsnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICdQZXJnaSBrZSBnYW1iYXJhbiBrZXNlbHVydWhhbiB0ZXRhcGFuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBQcm9qZWN0J30gPSAnVGFtYmFoIHByb2playc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFByb2plY3QgU2V0dGluZ3MnfSA9ICdTdW50aW5nIHRldGFwYW4gcHJvamVrJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICdTdWRhaCBhZGEgcHJvamVrIGRlbmdhbiBuYW1hIGluaS4gU2lsYSBwaWxpaCB5YW5nIGxhaW4uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFNldHRpbmdzJ30gPSAnU3VudGluZyBUZXRhcGFuIFBlcmFrYXVuYW4gTWFzYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGFzayd9ID0gJ1RhbWJhaCB0dWdhcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgYSB1c2VyIHRvIHRpbWUgYWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRmlsdGVyIGZvciBwcm9qZWN0cywgdGFza3Mgb3IgdXNlcnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBwZXJpb2RzIGNhbiBub3QgYmUgZGVsZXRlZC4nfSA9ICdUZW1wb2ggbWFzYSB0aWRhayBib2xlaCBkaWhhcHVza2FuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IExpc3QnfSA9ICdTZW5hcmFpIHByb2playc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICdTZW5hcmFpIHR1Z2FzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBUYXNrJ30gPSAnVGFtYmFoIHR1Z2FzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGFzayBTZXR0aW5ncyd9ID0gJ1N1bnRpbmcgdGV0YXBhbiB0dWdhcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgdGFzayB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAnU3VkYWggYWRhIHR1Z2FzIGRlbmdhbiBuYW1hIGluaS4gU2lsYSBwaWxpaCB5YW5nIGxhaW4uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgTGlzdCd9ID0gJ1NlbmFyYWkgUGVuZ2d1bmEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBTZXR0aW5ncyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gc2VlIG92ZXJ0aW1lcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaG93IE92ZXJ0aW1lJ30gPSAnVHVuanVrIGxlYmloYW4gbWFzYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICdCZW5hcmthbiBjaXB0YWFuIHByb2playc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gc2tpcCB0aW1lIGFjY291bnRpbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsb3cgdGltZSBhY2NvdW50aW5nIHNraXBwaW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIHRoaXMgb3B0aW9uIGlzIHNlbGVjdGVkLCB0aW1lIGFjY291bnRpbmcgaXMgZWZmZWN0aXZlbHkgb3B0aW9uYWwgZm9yIHRoZSB1c2VyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIHdpbGwgYmUgbm8gd2FybmluZ3MgYWJvdXQgbWlzc2luZyBlbnRyaWVzIGFuZCBubyBlbnRyeSBlbmZvcmNlbWVudC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFNwYW5zJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBCZWdpbid9ID0gJ1RlbXBvaCBNdWxhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBFbmQnfSA9ICdUZW1wb2ggdGFtYXQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF5cyBvZiBWYWNhdGlvbid9ID0gJ0hhcmkgQmVyY3V0aSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyBwZXIgV2Vlayd9ID0gJ0phbSBTZW1pbmdndSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBdXRob3JpemVkIE92ZXJ0aW1lJ30gPSAnTGViaWhhbiBtYXNhIGRpYmVuYXJrYW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJ1RhcmlraCBNdWxhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBpbnNlcnQgYSB2YWxpZCBkYXRlLid9ID0gJ1NpbGEgbWFzdWtrYW4gdGFyaWtoIHlhbmcgc2FoLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgRGF0ZSd9ID0gJ1RhcmlraCBUYW1hdCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgZW5kIG11c3QgYmUgYWZ0ZXIgcGVyaW9kIGJlZ2luLid9ID0gJ1RlbXBvaCB0YW1hdCBtZXN0aWxhaCBzZWxlcGFzIHRlbXBvaCBtdWxhLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMZWF2ZSBEYXlzJ30gPSAnSGFyaSBjdXRpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlZWtseSBIb3Vycyd9ID0gJ0phbSBtaW5nZ3Vhbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSd9ID0gJ0xlYmloIG1hc2EnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJ1RpYWRhIHRlbXBvaCBtYXNhIGRpanVtcGFpLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICdUYW1iYWggdGVtcG9oIG1hc2EnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnTGloYXQgUmVrb2QgTWFzYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IG9mICd9ID0gJ1BhbmRhbmdhbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcmV2aW91cyBkYXknfSA9ICdIYXJpIHNlYmVsdW0nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV4dCBkYXknfSA9ICdIYXJpIHNldGVydXNueWEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gZGF0YSBmb3VuZCBmb3IgdGhpcyBkYXkuJ30gPSAnVGlhZGEgZGF0YSBkaWp1bXBhaSBwYWRhIGhhcmkgaW5pLic7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ0VkaXQucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgV29ya2luZyBVbml0cyEnfSA9ICdUaWRhayBib2xlaCBtZW1hc3Vra2FuIFVuaXQgS2VyamEhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICdQcm9qZWsgTGVwYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnVGlkYWsgYm9sZWggbWVueWltcGFuIHRldGFwYW4tdGV0YXBhbiwga2VyYW5hIHNlaGFyaSBoYW55YSBhZGEgMjQgamFtISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgZGVsZXRlIFdvcmtpbmcgVW5pdHMhJ30gPSAnVGlkYWsgYm9sZWggbWVtYnVhbmcgVW5pdCBLZXJqYSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICdUYXJpa2ggaW5pIHRlbGFoIHRlcmxlYmloIGhhZCwgdGV0YXBpIGFuZGEgbWFzaWggYmVsdW0gbWVtYXN1a2thbiBoYXJpIGluaSBsYWdpLCBqYWRpIGFuZGEgbWVuZGFwYXQgc2F0dSghKSBwZWx1YW5nIHVudHVrIG1hc3Vra2FuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0luY29tcGxldGUgV29ya2luZyBEYXlzJ30gPSAnSGFyaSBCZWtlcmphIFRpZGFrIExlbmdrYXAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnQmVyamF5YSBkaW1hc3Vra2FuISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFcnJvciB3aGlsZSBpbnNlcnRpbmcgbXVsdGlwbGUgZGF0ZXMhJ30gPSAnUmFsYXQgc2VtYXNhIG1lbWFzdWtrYW4gYmViZXJhcGEgdGFyaWtoISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWNjZXNzZnVsbHkgaW5zZXJ0ZWQgZW50cmllcyBmb3Igc2V2ZXJhbCBkYXRlcyEnfSA9ICdCZXJqYXlhIGRpbWFzdWtrYW4gcGVueWVydGFhbiB1bnR1ayBiZWJlcmFwYSB0YXJpa2ghJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICdUYXJpa2ggeWFuZyBkaW1hc3Vra2FuIHRpZGFrIHNhaCEgVGFyaWtoIHRlbGFoIGRpdHVrYXIga2VwYWRhIGhhcmkgaW5pLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyB0aW1lIHBlcmlvZCBjb25maWd1cmVkLCBvciB0aGUgc3BlY2lmaWVkIGRhdGUgaXMgb3V0c2lkZSBvZiB0aGUgZGVmaW5lZCB0aW1lIHBlcmlvZHMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNvbnRhY3QgdGhlIHRpbWUgYWNjb3VudGluZyBhZG1pbmlzdHJhdG9yIHRvIHVwZGF0ZSB5b3VyIHRpbWUgcGVyaW9kcyEnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMYXN0IFNlbGVjdGVkIFByb2plY3RzJ30gPSAnUHJvamVrIERpcGlsaWggTGVwYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsIFByb2plY3RzJ30gPSAnU2VtdWEgUHJvamVrJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBOZWVkIFByb2plY3RJRCd9ID0gJ01lbGFwb3JrYW5Qcm9qZWs6IFBlcmx1a2FuIFByb2plY3RJRCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmcgUHJvamVjdCd9ID0gJ01lbGFwb3JrYW4gUHJvamVrJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJ01lbGFwb3JrYW4nOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgVGlja2V0SUQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTm8gUHJvamVjdCBmb3IgVGlja2V0IGZvdW5kLid9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byB1cGRhdGUgdXNlciBzZXR0aW5ncyEnfSA9ICdUaWRhayBib2xlaCB1bnR1ayBrZW1hc2tpbmkgdGV0YXBhbi10ZXRhcGFuIHBlbmdndW5hISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJ1Byb2playB0ZWxhaCBkaXRhbWJhaCEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCB1cGRhdGVkISd9ID0gJ1Byb2playB0ZWxhaCBkaWtlbWFza2luaSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayBhZGRlZCEnfSA9ICdUdWdhc2FuIHRlbGFoIGRpdGFtYmFoISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIHVwZGF0ZWQhJ30gPSAnVHVnYXNhbiB0ZWxhaCBkaWtlbWFza2luaSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnSUQgUGVuZ2d1bmEgdGlkYWsgc2FoISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IHVzZXIgZGF0YSEnfSA9ICdUaWRhayBib2xlaCBtZW1hc3Vra2FuIGRhdGEgcGVuZ2d1bmEhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byBhZGQgdGltZSBwZXJpb2QhJ30gPSAnVGlkYWsgYm9sZWggbWVuYW1iYWggdGVtcG9oIG1hc2EhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NldHRpbmcnfSA9ICdUZXRhcGFuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICdQZW5nZ3VuYSB0ZWxhaCBkaWtlbWFza2luaSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICdQZW5nZ3VuYSB0ZWxhaCBkaXRhbWJhaCEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICdQZW5nZ3VuYSBCYWhhcnUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJ1N0YXR1cyBUZW1wb2gnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdWaWV3LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3OiBOZWVkICVzISd9ID0gJ1BhbmRhbmdhbjogUGVybHUgJXMhJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICdTaWxhIG1hc3Vra2FuIHdha3R1IGtlcmphIGFuZGEhICc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL091dHB1dC9IVE1ML1Rvb2xCYXIvSW5jb21wbGV0ZVdvcmtpbmdEYXlzLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyd9ID0gJ0hhcmkgYmVrZXJqYSB0aWRhayBsZW5na2FwJzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50LkVkaXRUaW1lUmVjb3JkcwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhdCBsZWFzdCBvbmUgZGF5ISd9ID0gJ1NpbGEgcGlsaWggc2VrdXJhbmcta3VyYW5nbnlhIHNlaGFyaSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBFbnRyeSd9ID0gJ0tlbWFzdWthbiBiZXNhci1iZXNhcmFuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgYSByZWFzb24gZm9yIGFic2VuY2UhJ30gPSAnU2lsYSBwaWxpaCBzZWJhYiBrZXRpZGFraGFkaXJhbiEnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICdQYWRhbSBLZW1hc3VrYW4gTWFzYSBQZXJha2F1bmFuICc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDb25maXJtIGluc2VydCd9ID0gJ1NhaGthbiBrZW1hc3VrYW4nOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJ01vZHVsIHBlbWJlcml0YWh1YW4gYW50YXJhIG11a2EgZWplbiB1bnR1ayBtZWxpaGF0IGJpbGFuZ2FuIGhhcmkgYmVrZXJqYSB5YW5nIHRpZGFrIGxlbmdrYXAgdW50dWsgcGVuZ2d1bmEuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Fsc28gc3luY2hyb25pc2UgY3VzdG9tZXJzIGFzIGEgbmV3IHByb2plY3QgaWYgdGhleSBoYXZlIG5vdCB5ZXQgYmVlbiBjcmVhdGVkIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcyBzb29uIGFzIHRoZSBzeW5jaHJvbmlzYXRpb24gb2YgdGlja2V0IFRpbWVVbml0cyBpcyBhY3RpdmF0ZWQsIGl0IGlzIHBvc3NpYmxlIHRvIHNldCB0aGUgZW50cmllcyBSZWFkT25seS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDcmVhdGUgYSBuZXcgdGltZSBhY2NvdW50aW5nIGVudHJ5IHJlbGF0ZWQgdG8gdGhlIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IG5hbWUgZm9yIG5ldyBhY3Rpb25zLid9ID0gJ05hbWEgbGFsYWkgdW50dWsgdGluZGFrYW4gYmFydS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnTmFtYSBsYWxhaSB1bnR1ayBwcm9qZWsgYmFydS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkYXRlIGVuZC4nfSA9ICdUZXRhcGFuIGxhbGFpIHVudHVrIHRhcmlraCBha2hpci4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkYXRlIHN0YXJ0Lid9ID0gJ1RldGFwYW4gbGFsYWkgdW50dWsgdGFyaWtoIG11bGEuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGVzY3JpcHRpb24uJ30gPSAnVGV0YXBhbiBsYWxhaSB1bnR1ayBnYW1iYXJhbi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJ1RldGFwYW4gbGFsYWkgdW50dWsgaGFyaSBjdXRpLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJ1RldGFwYW4gbGFsYWkgdW50dWsgbGViaWggbWFzYS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciB0aGUgc3RhbmRhcmQgd2Vla2x5IGhvdXJzLid9ID0gJ1RldGFwYW4gbGFsYWkgdW50dWsgamFtIG1pbmdndWFuIHBpYXdhaS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBhY3Rpb25zLid9ID0gJ1RldGFwYW4gbGFsYWkgdW50dWsgdGluZGFrYW4gYmFoYXJ1Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHN0YXR1cyBmb3IgbmV3IHByb2plY3RzLid9ID0gJ1RldGFwYW4gbGFsYWkgdW50dWsgcHJvamVrIGJhaGFydS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICdUZXRhcGFuIGxhbGFpIHVudHVrIHBlbmdndW5hIGJhaGFydS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnTWVudGFrcmlma2FuIHByb2play1wcm9qZWsgeWFuZyBtYW5hIGtvbWVuIGRpcGVybHVrYW4uIEppa2EgVW5na2FwYW5CaWFzYSBwYWRhbiBkYWxhbSBwcm9qZWsgaW5pLCBhbmRhIHBlcmx1IG1lbWFzdWtrYW4ga29tZW4ganVnYS4gVW5na2FwYW5CaWFzYSBtZW5nZ3VuYWthbiBwYXJhbWV0ZXIgc214Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZXRlcm1pbmVzIGlmIHRoZSBzdGF0aXN0aWNzIG1vZHVsZSBtYXkgZ2VuZXJhdGUgdGltZSBhY2NvdW50aW5nIGluZm9ybWF0aW9uLid9ID0KICAgICAgICAnTWVuZW50dWthbiBqaWthIG1vZHVsIHN0YXRpc3RpayBib2xlaCBtZW5qYW5hIG1hc2EgbWFrbHVtYXQgcGVyYWthdW5hbi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnU3VudGluZyB0ZXRhcGFuLXRldGFwYW4gcGVyYWthdW5hbiBtYXNhLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IHRpbWUgcmVjb3JkLid9ID0gJ1N1bnRpbmcgcmVrb2QgbWFzYS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRXZlcnkgdGltZSBhIGFnZW50IGFkZCBUaW1lVW5pdHMgdG8gYSB0aWNrZXQsIHdlIHN5bmMgdGhlIGluZm9ybWF0aW9uIHRvIHRoZSB0aW1lYWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRm9yIGhvdyBtYW55IGRheXMgYWdvIHlvdSBjYW4gaW5zZXJ0IHdvcmtpbmcgdW5pdHMuJ30gPSAnVW50dWsgYmVyYXBhIGhhcmkgeWFuZyBsYWx1LCBhbmRhIGJvbGVoIG1lbWFzdWtrYW4gdW5pdCBrZXJqYS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgb25seSB1c2VycyB0aGF0IGhhcyBhZGRlZCB3b3JraW5nIHRpbWUgdG8gdGhlIHNlbGVjdGVkIHByb2plY3QgYXJlIHNob3duLid9ID0KICAgICAgICAnSmlrYSBkaWJvbGVoa2FuLCBoYW55YSBwZW5nZ3VuYSB5YW5nIHRlbGFoIGRpdGFtYmFoIG1hc2Ega2VyamEgdW50dWsgcHJvamVrIHlhbmcgZGlwaWxpaCBha2FuIGRpdHVuanVra2FuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZHJvcGRvd24gZWxlbWVudHMgaW4gdGhlIGVkaXQgc2NyZWVuIGFyZSBjaGFuZ2VkIHRvIG1vZGVybml6ZWQgYXV0b2NvbXBsZXRpb24gZmllbGRzLid9ID0KICAgICAgICAnSmlrYSBkaWJvbGVoa2FuLCB1bnN1ci11bnN1ciBrb3RhayBwaWxpaGFuIGRhbGFtIHNrcmluIHN1bnRpbmcgZGl0dWthciBrZXBhZGEgYmlkYW5nIHBlbnlpYXBhbiBzZWNhcmEgYXV0b21hdGlrIG1vZGVuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICdKaWthIGRpYWt0aWZrYW4sIHBlbmFwaXMgYmFnaSBwcm9qZWstcHJvamVrIHNlYmVsdW0gYm9sZWggZGlndW5ha2FuIHNlbGFpbiBkdWEgc2VuYXJhaSBwcm9qZWstcHJvamVrICh0ZXJha2hpciBkYW4gc2VtdWFueWEpLiBJYSBib2xlaCBkaWd1bmFrYW4gaGFueWEgamlrYSBUaW1lQWNjb3VudGluZzo6RW5hYmxlQXV0b0NvbXBsZXRpb24gZGlkYXlha2FuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgaXMgYWN0aXZlIGJ5IGRlZmF1bHQgaWYgdGhlcmUgYXJlIHRoZSBwcmV2aW91cyBwcm9qZWN0cy4gSXQgY291bGQgYmUgdXNlZCBvbmx5IGlmIEVuYWJsZUF1dG9Db21wbGV0aW9uIGFuZCBUaW1lQWNjb3VudGluZzo6VXNlRmlsdGVyIGFyZSBlbmFibGVkLid9ID0KICAgICAgICAnSmlrYSBkaWFrdGlma2FuLCBwZW5hcGlzIGJhZ2kgcHJvamVrLXByb2playBzZWJlbHVtIGFkYWxhaCBha3RpZiBzZWNhcmEgbGFsYWkgc2VraXJhbnlhIHRlcmRhcGF0IHByb2playBsZXBhcy4gSWEgYm9sZWggZGlndW5ha2FuIGhhbnlhIGppa2EgRW5hYmxlQXV0b0NvbXBsZXRpb24gZGFuIFRpbWVBY2NvdW50aW5nOjpVc2VGaWx0ZXIgZGlkYXlha2FuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnSmlrYSBkaWJvbGVoa2FuLCBwZW5nZ3VuYSBkaWJlbmFya2FuIHVudHVrIG1lbWFzdWtpICJzZWRhbmcgY3V0aSByZWhhdCAiLCAic2VkYW5nIGN1dGkgc2FraXQgIiBkYW4gInNlZGFuZyBjdXRpIGxlYmloIG1hc2EiIHBhZGEgYmViZXJhcGEgdGFyaWtoIHNla2FsaWd1cy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWF4aW11bSBudW1iZXIgb2Ygd29ya2luZyBkYXlzIGFmdGVyIHdoaWNoIHRoZSB3b3JraW5nIHVuaXRzIGhhdmUgdG8gYmUgaW5zZXJ0ZWQuJ30gPQogICAgICAgICdCaWxhbmdhbiBtYWtzaW11bSBoYXJpIGJla2VyamEgc2VsZXBhcyB1bml0IGtlcmphIHBlcmx1IGRpbWFzdWtrYW4uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICdCaWxhbmdhbiBtYWtzaW11bSBoYXJpIGJla2VyamEgdGFucGEga2VtYXN1a2FuIHVuaXQgYmVrZXJqYSBzZWxlcGFzIGRpIG1hbmEgYW1hcmFuIGFrYW4gZGl0dW5qdWtrYW4uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ2aWV3Lid9ID0gJ1BhbmRhbmdhbiBrZXNlbHVydWhhbi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCB0aW1lIHJlcG9ydGluZy4nfSA9ICdtZWxhcG9ya2FuIG1hc2EgcHJvamVrJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICdVbmdrYXBhbiBiaWFzYSB1bnR1ayBtZW5nZWthbmcgc2VuYXJhaSB0aW5kYWthbiBtZW5naWt1dCBwcm9qZWsgeWFuZyBkaXBpbGloLiBLdW5jaSBtZW5nYW5kdW5naSB1bmdrYXBhbiBiaWFzYSB1bnR1ayBwcm9qZWsgKHByb2play1wcm9qZWspLCBrYW5kdW5nYW4gbWVuZ2FuZHVuZ2kgdW5na2FwYW4gYmlhc2EgdW50dWsgdGluZGFrYW4gKHRpbmRha2FuLXRpbmRha2FuKS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnVW5na2FwYW4gYmlhc2EgdW50dWsgbWVuZ2VrYW5nIHNlbmFyYWkgcHJvamVrIG1lbmdpa3V0IGt1bXB1bGFuIHBlbmdndW5hLiBLdW5jaSBtZW5nYW5kdW5naSB1bmdrYXBhbiBiaWFzYSB1bnR1ayBwcm9qZWsgKHByb2play1wcm9qZWspLCBrYW5kdW5nYW4gbWVuZ2FuZHVuZ2kga29tYSBzZW5hcmFpIGt1bXB1bGFuIGRpcGlzYWhrYW4uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnTWVuZW50dWthbiBqaWthIHdha3R1IGJla2VyamEgYm9sZWggZGltYXN1a2thbiB0YW5wYSBwZXJtdWxhYW4gZGFuIGFraGlyIG1hc2EuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICdNb2R1bCBpbmkgbWVtYWtzYSBrZW1hc3VrYW4gZGFsYW0gUGVyYWthdW5hblNlbWFzYS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICdNb2R1bCBwZW1iZXJpdGFodWFuIGluaSBtZW1iZXJpIGFtYXJhbiBqaWthIHRlcmRhcGF0IHRlcmxhbHUgYmFueWFrIGhhcmkgYmVrZXJqYSB0aWRhayBsZW5na2FwLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgdGltZSByZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBBY2NvdW50aW5nJ30gPSAnTWFzYSBQZXJha2F1bmFuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgUmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBlZGl0Lid9ID0gJ1N1bnRpbmcgcGVyYWthdW5hbiBzZW1hc2EuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBvdmVydmlldy4nfSA9ICdHYW1iYXJhbiBrZXNlbHVydWhhbiBwZXJha2F1bmFuIHNlbWFzYS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHJlcG9ydGluZy4nfSA9ICdNZWxhcG9yIHBlcmFrYXVuYW4gc2VtYXNhLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnVGV0YXBhbiBwZXJha2F1bmFuIHNlbWFzYS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHRpY2tldCByZXBvcnQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB2aWV3Lid9ID0gJ1BhcGFyYW4gcGVyYWthdW5hbiBzZW1hc2EuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZy4nfSA9ICdQZXJha2F1bmFuIHNlbWFzYS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG8gdXNlIGlmIHNvbWUgYWN0aW9ucyByZWR1Y2VkIHRoZSB3b3JraW5nIGhvdXJzIChmb3IgZXhhbXBsZSwgaWYgb25seSBoYWxmIG9mIHRoZSB0cmF2ZWxpbmcgdGltZSBpcyBwYWlkIEtleSA9PiB0cmF2ZWxpbmc7IENvbnRlbnQgPT4gNTApLid9ID0KICAgICAgICAnVW50dWsgZGlndW5ha2FuIGppa2EgYmViZXJhcGEgdGluZGFrYW4gbWVuZ3VyYW5na2FuIHdha3R1IGtlcmphIChjb250b2hueWEsIGppa2EgaGFueWEgc2VwYXJ1aCBkYXJpcGFkYSBtYXNhIHBlcmphbGFuYW4gZGliYXlhciBLdW5jaSA9PiBwZXJqYWxhbmFuOyBLYW5kdW5nYW4gPSA+IDUwKS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/nb_NO_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6Om5iX05PX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJ0FrdGl2aXRldCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICdNZXJrbmFkJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N0YXJ0IHRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IG11c3QgZW50ZXIgYSBzdGFydCBhbmQgYW4gZW5kIHRpbWUsIG9yIGEgcG9zaXRpdmUgcGVyaW9kIG9mIHVwIHRvIDI0IGhvdXJzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZSB0aW1lIHBlcmlvZCBtdXN0IGJlIGdpdmVuIGluIGhvdXJzIGFuZCBjYW4gYmUgYSBkZWNpbWFsIG51bWJlci4nfSA9CiAgICAgICAgJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ0RlbGV0ZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRG8geW91IHJlYWxseSB3YW50IHRvIGRlbGV0ZSB0aGUgVGltZSBBY2NvdW50aW5nIG9mIHRoaXMgZGF5Pyd9ID0KICAgICAgICAnVmlsIGR1IHZpcmtlbGlnIGZqZXJuZSB0aWRzcmVnaXN0cmVyaW5nZW4gZm9yIGRlbm5lIGRhZ2VuPyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ0VkaXQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBSZWNvcmQnfSA9ICdFbmRyZSB0aWRzcmVnaXN0cmVyaW5nJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnSW5uc3RpbGxpbmdlcic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXRlIE5hdmlnYXRpb24nfSA9ICdOYXZpZ2VyaW5nIG1lbGxvbSBkYXRvZXInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF5cyB3aXRob3V0IGVudHJpZXMnfSA9ICdEYWdlciB1dGVuIHRpZHJlZ2lzdHJlcmluZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICdWZWxnIGFsbGUgZGFnZXInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJ01hc3NlcmVnaXN0cmVyaW5nJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgdGhlIHJlYXNvbiBmb3IgeW91ciBhYnNlbmNlIGZvciB0aGUgc2VsZWN0ZWQgZGF5cyd9ID0KICAgICAgICAnVmVubmxpZ3N0IHZlbGcgw6Vyc2FrZW4gdGlsIGRpdHQgZnJhdsOmciBww6UgZGUgdmFsZ3RlIGRhZ2VuZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJ0ZlcmllJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIHNpY2sgbGVhdmUnfSA9ICdTeWtlZnJhdsOmcic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBvdmVydGltZSBsZWF2ZSd9ID0gJ0F2c3Bhc3NlcmluZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXF1aXJlZCBmaWVsZHMgYXJlIG1hcmtlZCB3aXRoIGEgIioiLid9ID0gJ09ibGlnYXRvcmlza2UgZmVsdCBlciBtYXJrZXJ0IG1lZCAiKiIuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnRHUgbcOlIGZ5bGxlIHV0IHN0YXJ0LSBvZyBzbHV0dGlkc3B1bmt0LCBlbGxlciBwZXJpb2RlbGVuZ2Rlbi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCd9ID0gJ1Byb3NqZWt0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09yaWdpbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgYWRkIGEgcmVtYXJrIHdpdGggbW9yZSB0aGFuIDggY2hhcmFjdGVycyEnfSA9ICdWZW5ubGlnc3Qgc2tyaXYgaW5uIGVuIG1lcmtuYWQgcMOlIG1pbnN0IDggdGVnbiEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXJzcHJ1bmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmVnYXRpdmUgdGltZXMgYXJlIG5vdCBhbGxvd2VkLid9ID0gJ05lZ2F0aXYgdGlkIGdvZHRhcyBpa2tlLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIFN0YXJ0IHRpbWUgbWF0Y2hlcyBhbm90aGVyIGludGVydmFsLid9ID0KICAgICAgICAnT3ZlcmxhcHBlbmRlIHBlcmlvZGVyIGlra2UgdGlsbGF0dC4gU3RhcnR0aWRlbiBlciBpIGVuIGFubmVuIHBlcmlvZGUuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgZm9ybWF0ISBQbGVhc2UgZW50ZXIgYSB0aW1lIHdpdGggdGhlIGZvcm1hdCBISDpNTS4nfSA9ICdGZWlsIGZvcm1hdCEgVmVubmxpZ3N0IG9wcGdpIGV0dCB0aWRzcHVua3QgaSBmb3JtYXRldCBUVDpNTS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnMjQ6MDAgaXMgb25seSBwZXJtaXR0ZWQgYXMgZW5kIHRpbWUuJ30gPSAnMjQ6MDAgZ29kdGFzIGJhcmUgc29tIHNsdXR0aWQuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgdGltZSEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnRmVpbGFrdGlnIHRpZCEgRXQgZMO4Z24gaGFyIGt1biAyNCB0aW1lci4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJ1NsdXR0aWQgbcOlIHbDpnJlIHNlbmVyZSBlbm4gc3RhcnR0aWQuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gRW5kIHRpbWUgbWF0Y2hlcyBhbm90aGVyIGludGVydmFsLid9ID0KICAgICAgICAnT3ZlcmxhcHBlbmRlIHBlcmlvZGVyIGlra2UgdGlsbGF0dC4gU2x1dHRpZGVuIGVyIGkgZW4gYW5uZW4gcGVyaW9kZS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIEEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzLid9ID0gJ0ZlaWxha3RpZyB0aWQhIEV0IGTDuGduIGhhciBrdW4gMjQgdGltZXIuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnRW4gdGlkc3BlcmlvZGUgbcOlIHbDpnJlIHN0w7hycmUgZW5uIG51bGwuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICdGZWlsYWt0aWQgdGlkLiAgTmVnYXRpdiB0aWQgZ29kdGFzIGlra2UuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Ym1pdCBjaGFuZ2VzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBvbmUgcm93J30gPSAnTGVnZyB0aWwgZW4gcmFkLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgY2FuIG9ubHkgc2VsZWN0IG9uZSBjaGVja2JveCBlbGVtZW50ISd9ID0gJ0R1IGthbiBiYXJlIGdqw7hyZSBlbiBhdmtyeXNuaW5nLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHNpY2sgbGVhdmU/J30gPSAnRXIgZHUgc2lra2VyIHDDpSBhdCBkdSBhcmJlaWRldCBtZW5zIGR1IHZhciBzeWtlbWVsZHQuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gdmFjYXRpb24/J30gPSAnRXIgZHUgc2lra2VyIHDDpSBhdCBkdSBhcmJlaWRldCBtZW5zIGR1IGhhZGRlIGZlcmllPyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnRXIgZHUgc2lra2VyIHDDpSBhdCBkdSBhcmJlaWRldCBtZW5zIGR1IGF2c3Bhc3NlcnRlLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIG1vcmUgdGhhbiAxNiBob3Vycz8nfSA9ICdFciBkdSBzaWtrZXIgcMOlIGF0IGR1IGFyYmVpZGV0IGkgZmxlcmUgZW5uIDE2IHRpbWVyPyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnTcOlbmVkc292ZXJzaWt0IHJlZ2lzdHJlcnQgdGlkJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICdPdmVydGlkICh0aW1lciknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnT3ZlcnRpZCAoZGVubmUgbcOlbmVkKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAodG90YWwpJ30gPSAnT3ZlcnRpZCAodG90YWx0KSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgb3ZlcnRpbWUgbGVhdmUnfSA9ICdHamVuc3TDpWVuZGUgYXZzcGFzc2VyaW5nc3RpbWVyJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJ0ZlcmllIChkYWdlciknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRoaXMgbW9udGgpJ30gPSAnRmVyaWUgdGF0dCAoZGVubmUgbcOlbmVkKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodG90YWwpJ30gPSAnRmVyaWUgdGF0dCAodG90YWx0KSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICdHamVuc3TDpWVuZGUgZmVyaWVkYWdlcic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIExlYXZlIChEYXlzKSd9ID0gJ1N5a2VmcmF2w6ZyIChkYWdlciknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICdTeWtlZnJhdsOmciAoZGVubmUgbcOlbmVkKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlIHRha2VuICh0b3RhbCknfSA9ICdTeWtlZnJhdsOmciAodG90YWx0KSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcmV2aW91cyBtb250aCd9ID0gJ0ZvcnJpZ2UgbcOlbmVkJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICdOZXN0ZSBtw6VuZWQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJ1VrZWRhZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnQXJiZWlkZXQgdGlkJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJ1RvdGFsIGFyYmVpZGV0IHRpZCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICdCcnVrZXJzIHByb3NqZWt0b3ZlcnNpa3QnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnVGltZXIgKG3DpW5lZGxpZyknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKExpZmV0aW1lKSd9ID0gJ1RpbWVyICh0b3RhbHQpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dyYW5kIHRvdGFsJ30gPSAnU2x1dHRzdW0nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnVGlkcmFwcG9ydGVyaW5nJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICdOYXZpZ2VyaW5nIG1lbGxvbSBtw6VuZWRlcic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBkYXRlJ30gPSAnR8OlIHRpbCBkYXRvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgcmVwb3J0cyd9ID0gJ0JydWtlcnJhcHBvcnRlcic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNb250aGx5IHRvdGFsJ30gPSAnTcOlbmVkc3N1bSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJ1RvdGFsc3VtJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIGxlYXZlJ30gPSAnQXZzcGFzc2VyaW5nJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uJ30gPSAnRmVyaWUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSd9ID0gJ1N5a2VmcmF2w6ZyJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJ0dqZW5zdMOlZW5kZSBmZXJpZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICdQcm9zamVrdHJhcHBvcnRlcic7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1Byb2plY3QKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgcmVwb3J0J30gPSAnUHJvc2pla3RyYXBwb3J0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHJlcG9ydGluZyBvdmVydmlldyd9ID0gJ0fDpSB0aWwgcmFwcG9ydGVyaW5nc292ZXJzaWt0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0N1cnJlbnRseSBvbmx5IGFjdGl2ZSB1c2VycyBpbiB0aGlzIHByb2plY3QgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnRm9yIHRpZGVuIHZpc2VzIGJhcmUgZGUgYWt0aXZlIGJydWtlcm5lIGkgZGV0dGUgcHJvc2pla3RldC4gRm9yIMOlIGVuZHJlIGRldHRlIG3DpSBmw7hsZ2VuZGUgaW5uc3RpbGxpbmcgZW5kcmVzOic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDdXJyZW50bHkgYWxsIHRpbWUgYWNjb3VudGluZyB1c2VycyBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICdGb3IgdGlkZW4gdmlzZXMgYWxsZSB0aWRzcmVnaXN0cmVyaW5nc2JydWtlcmUuIEZvciDDpSBlbmRyZSBkZXR0ZSBtw6UgZsO4bGdlbmRlIGlubnN0aWxsaW5nIGVuZHJlczonOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCByZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gdGlja2V0J30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgUHJvamVjdCBTZXR0aW5ncyd9ID0gJ0VuZHJlIGluc3RpbGxpbmdlciBmb3IgdGlkc3JlZ2lzdHJlcmluZ3Nwcm9zamVrdCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgcHJvamVjdCd9ID0gJ0xlZ2cgdGlsIGV0IHByb3NqZWt0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzIG92ZXJ2aWV3J30gPSAnR8OlIHRpbCBvdmVyc2lrdGVuIG92ZXIgaW5uc3RpbGxpbmdlcic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgUHJvamVjdCd9ID0gJ0xlZ2cgdGlsIGV0IHByb3NqZWt0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgUHJvamVjdCBTZXR0aW5ncyd9ID0gJ0VuZHJlIGluc3RpbGxpbmdlciBmb3IgcHJvc2pla3RldCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgcHJvamVjdCB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAnRGV0IGZpbm5lcyBhbGxlcmVkZSBldCBwcm9zamVrdCBtZWQgZGV0dGUgbmF2bmV0LiBWZW5ubGlnc3QgdmVsZyBldCBhbm5ldCBuYXZuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgQWNjb3VudGluZyBTZXR0aW5ncyd9ID0gJ0VuZHJlIGluc3RpbGxpbmdlciBmb3IgdGlkc3JlZ2lzdHJlcmluZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGFzayd9ID0gJ0xlZ2cgdGlsIGVuIGFrdGl2aXRldCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgYSB1c2VyIHRvIHRpbWUgYWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRmlsdGVyIGZvciBwcm9qZWN0cywgdGFza3Mgb3IgdXNlcnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBwZXJpb2RzIGNhbiBub3QgYmUgZGVsZXRlZC4nfSA9ICdUaWRzcGVyaW9kZXIga2FuIGlra2Ugc2xldHRlcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCBMaXN0J30gPSAnUHJvc2pla3RsaXN0ZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICdBa3Rpdml0ZXRzbGlzdGUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICdMZWdnIHRpbCBlbiBha3Rpdml0ZXQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnRW5kcmUgaW5zdGlsbGluZ2VyIGZvciBha3Rpdml0ZXRlbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgdGFzayB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAnRGV0IGZpbm5lcyBhbGxlcmVkZSBlbiBha3Rpdml0ZXQgbWVkIGRldHRlIG5hdm5ldC4gVmVubmxpZ3N0IHZlbGcgZXQgYW5uZXQgbmF2bi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnQnJ1a2VybGlzdGUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBTZXR0aW5ncyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gc2VlIG92ZXJ0aW1lcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaG93IE92ZXJ0aW1lJ30gPSAnVmlzIG92ZXJ0aWQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIGNyZWF0ZSBwcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyBwcm9qZWN0IGNyZWF0aW9uJ30gPSAnVGlsbGF0dCBicnVrZXIgw6Ugb3BwcmV0dGUgcHJvc2pla3Rlcic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gc2tpcCB0aW1lIGFjY291bnRpbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsb3cgdGltZSBhY2NvdW50aW5nIHNraXBwaW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIHRoaXMgb3B0aW9uIGlzIHNlbGVjdGVkLCB0aW1lIGFjY291bnRpbmcgaXMgZWZmZWN0aXZlbHkgb3B0aW9uYWwgZm9yIHRoZSB1c2VyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIHdpbGwgYmUgbm8gd2FybmluZ3MgYWJvdXQgbWlzc2luZyBlbnRyaWVzIGFuZCBubyBlbnRyeSBlbmZvcmNlbWVudC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFNwYW5zJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBCZWdpbid9ID0gJ1BlcmlvZGVzdGFydCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgRW5kJ30gPSAnUGVyaW9kZXNsdXR0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RheXMgb2YgVmFjYXRpb24nfSA9ICdGZXJpZWRhZ2VyJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnVGltZXIgcGVyIHVrZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBdXRob3JpemVkIE92ZXJ0aW1lJ30gPSAnUMOlbGFndCBvdmVydGlkJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N0YXJ0IERhdGUnfSA9ICdTdGFydGRhdG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGluc2VydCBhIHZhbGlkIGRhdGUuJ30gPSAnVmVubmxpZ3N0IHNldHQgaW5uIGVuIGd5bGRpZyBkYXRvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgRGF0ZSd9ID0gJ1NsdXR0ZGF0byc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgZW5kIG11c3QgYmUgYWZ0ZXIgcGVyaW9kIGJlZ2luLid9ID0gJ1BlcmlvZGVzbHV0dCBtw6UgdsOmcmUgZXR0ZXIgcGVyaW9kZXN0YXJ0Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMZWF2ZSBEYXlzJ30gPSAnRGFnZXIgbWVkIGd5bGRpZyBmcmF2w6ZyJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlZWtseSBIb3Vycyd9ID0gJ1VrZW50bGlnZSB0aW1lcic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSd9ID0gJ092ZXJ0aWQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJ0luZ2VuIHRpZHNwZXJpb2RlciBmdW5uZXQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRpbWUgcGVyaW9kJ30gPSAnTGVnZyB0aWwgZW4gdGlkc3BlcmlvZGUnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnU2UgcMOlIHRpZHNyZWdpc3RyZXJpbmcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldyBvZiAnfSA9ICdWaXNuaW5nIGF2JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJ0ZvcnJpZ2UgZGFnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgZGF5J30gPSAnTmVzdGUgZGFnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIGRhdGEgZm91bmQgZm9yIHRoaXMgZGF5Lid9ID0gJ0luZ2VuIGRhdGEgZnVubmV0IGZvciBkZW5uZSBkYWdlbi4nOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICdTZW5lc3RlIHByb3NqZWt0ZXInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnS2FuIGlra2UgbGFncmUgaW5zdGlsbGluZ2VuZSBmb3JkaSBldCBkw7hnbiBoYXIga3VuIDI0IHRpbWVyLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgZGVsZXRlIFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgRGF0ZSBpcyBvdXQgb2YgbGltaXQsIGJ1dCB5b3UgaGF2ZW5cJ3QgaW5zZXJ0IHRoaXMgZGF5IHlldCwgc28geW91IGdldCBvbmUoISkgY2hhbmNlIHRvIGluc2VydCd9ID0KICAgICAgICAnRGVubmUgZGF0b2VuIGVyIHV0ZW5mb3IgdGlsbGF0dCBvbXLDpWRlLiBNZW4sIGR1IGhhciBpa2tlIHNhdHQgaW5uIGRlbm5lIGRhZ2VuIGVubsOlLCBzw6UgZHUgZsOlciBlbighKSBzamFuc2UnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICdVZnVsbHN0ZW5kaWdlIGFyYmVpZHNkYWdlcic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWNjZXNzZnVsIGluc2VydCEnfSA9ICdWZWxseWtrZXQgaW5uc2V0dGluZyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRXJyb3Igd2hpbGUgaW5zZXJ0aW5nIG11bHRpcGxlIGRhdGVzISd9ID0gJ0ZlaWwgdW5kZXIgaW5uc2V0dGluZyBhdiBmbGVyZSBkYXRvZXIhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Y2Nlc3NmdWxseSBpbnNlcnRlZCBlbnRyaWVzIGZvciBzZXZlcmFsIGRhdGVzISd9ID0gJ0lubnNldHRpbmcgYXYgcmVnaXN0cmVyaW5nZXIgZm9yIGZsZXJlIGRhdG9lciB2YXIgdmVsbHlra2V0Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbnRlcmVkIGRhdGUgd2FzIGludmFsaWQhIERhdGUgd2FzIGNoYW5nZWQgdG8gdG9kYXkuJ30gPSAnT3BwZ2l0dCBkYXRvIHZhciB1Z3lsZGlnISBEYXRvIGVuZHJldCB0aWwgZGFnZW5zIGRhdG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIHRpbWUgcGVyaW9kIGNvbmZpZ3VyZWQsIG9yIHRoZSBzcGVjaWZpZWQgZGF0ZSBpcyBvdXRzaWRlIG9mIHRoZSBkZWZpbmVkIHRpbWUgcGVyaW9kcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY29udGFjdCB0aGUgdGltZSBhY2NvdW50aW5nIGFkbWluaXN0cmF0b3IgdG8gdXBkYXRlIHlvdXIgdGltZSBwZXJpb2RzISd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgU2VsZWN0ZWQgUHJvamVjdHMnfSA9ICdTZW5lc3RlIHZhbGd0ZSBwcm9zamVrdGVyJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbCBQcm9qZWN0cyd9ID0gJ0FsbGUgcHJvc2pla3Rlcic7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBQcm9qZWN0SUQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nIFByb2plY3QnfSA9ICdQcm9zamVrdCBzb20gcmFwcG9ydGVyZXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nJ30gPSAnUmFwcG9ydGVyaW5nJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBOZWVkIFRpY2tldElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5vIFByb2plY3QgZm9yIFRpY2tldCBmb3VuZC4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdTZXR0aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gdXBkYXRlIHVzZXIgc2V0dGluZ3MhJ30gPSAnS2FuIGlra2UgZW5kcmUgYnJ1a2VyaW5uc3RpbGxpbmdlciEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCBhZGRlZCEnfSA9ICdQcm9zamVrdCBsYWd0IHRpbCEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCB1cGRhdGVkISd9ID0gJ1Byb3NqZWt0IG9wcGRhdGVydCEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayBhZGRlZCEnfSA9ICdBa3Rpdml0ZXQgbGFndCB0aWwhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICdBa3Rpdml0ZXQgb3BwZGF0ZXJ0ISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgVXNlcklEIGlzIG5vdCB2YWxpZCEnfSA9ICdCcnVrZXJJRCBlciBpa2tlIGd5bGRpZyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGluc2VydCB1c2VyIGRhdGEhJ30gPSAnS2FuIGlra2UgbGVnZ2UgdGlsIGJydWtlcmRhdGEhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byBhZGQgdGltZSBwZXJpb2QhJ30gPSAnS2FuIGlra2UgbGVnZ2UgdGlsIHRpZHNwZXJpb2RlISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnSW5uc3RpbGxpbmcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciB1cGRhdGVkISd9ID0gJ0JydWtlciBvcHBkYXRlcnQhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgYWRkZWQhJ30gPSAnQnJ1a2VyIGxhZ3QgdGlsISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXcgVXNlcid9ID0gJ055IGJydWtlcic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgU3RhdHVzJ30gPSAnUGVyaW9kZXN0YXR1cyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnVmlzbmluZzogVHJlbmdlciAlcyEnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ob3RpZmljYXRpb24vVGltZUFjY291bnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBpbnNlcnQgeW91ciB3b3JraW5nIGhvdXJzISd9ID0gJ1Zlbm5saWdzdCBzZXR0IGlubiBkaW5lIGFyYmVpZHN0aW1lciEnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICdVZnVsbHN0ZW5kaWdlIGFyYmVpZHNkYWdlcic7CgogICAgIyBKUyBGaWxlOiBUaW1lQWNjb3VudGluZy5BZ2VudC5FZGl0VGltZVJlY29yZHMKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnfSA9ICdWZW5ubGlnc3QgdmVsZyBtaW5zdCBlbiBkYWchJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICdNYXNzZXJlZ2lzdHJlcmluZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGEgcmVhc29uIGZvciBhYnNlbmNlISd9ID0gJ1Zlbm5saWdzdCB2ZWxnIGZyYXbDpnJzw6Vyc2FrISc7CgogICAgIyBKUyBGaWxlOiBUaW1lQWNjb3VudGluZy5BZ2VudAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVsZXRlIFRpbWUgQWNjb3VudGluZyBFbnRyeSd9ID0gJ1NsZXR0IGVuIHRpZHNyZWdpc3RyZXJpbmcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICdCZWtyZWZ0IGlubnNldHRpbmcnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnRW5kcmUgaW5uc3RpbGxpbmdlciBmb3IgdGlkc3JlZ2lzdHJlcmluZy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIHJlY29yZC4nfSA9ICdFbmRyZSB0aWRzcmVnaXN0cmVyaW5nJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJ0h2b3IgbWFuZ2VyIGRhZ2VyIHRpbGJha2UgaSB0aWQgZGV0IGVyIGFubGVkbmluZyB0aWwgw6UgbGVnZ2UgdGlsIGVuIHRpZHNib2xrLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnT3ZlcnNpa3QuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnVGlkcmFwcG9ydGVyaW5nIGZvciBwcm9zamVrdC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIGFjdGlvbiBsaXN0IGFjY29yZGluZyB0byBzZWxlY3RlZCBwcm9qZWN0LiBLZXkgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9uIGZvciBwcm9qZWN0KHMpLCBjb250ZW50IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGFjdGlvbihzKS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZWd1bGFyIGV4cHJlc3Npb25zIGZvciBjb25zdHJhaW5pbmcgcHJvamVjdCBsaXN0IGFjY29yZGluZyB0byB1c2VyIGdyb3Vwcy4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiBncm91cHMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBhY2NvdW50ZWQgdGltZXMgZm9yIHRoaXMgdGlja2V0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NwZWNpZmllcyBpZiB3b3JraW5nIGhvdXJzIGNhbiBiZSBpbnNlcnRlZCB3aXRob3V0IHN0YXJ0IGFuZCBlbmQgdGltZXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3luY2hyb25pc2UgY3VzdG9tZXJzIGFzIGEgbmV3IHByb2plY3QgaWYgdGhleSBleGlzdHMgaW4gdGhlIGN1c3RvbWVyIGRhdGFiYXNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgbW9kdWxlIGZvcmNlcyBpbnNlcnRzIGluIFRpbWVBY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG5vdGlmaWNhdGlvbiBtb2R1bGUgZ2l2ZXMgYSB3YXJuaW5nIGlmIHRoZXJlIGFyZSB0b28gbWFueSBpbmNvbXBsZXRlIHdvcmtpbmcgZGF5cy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgdGltZSByZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBBY2NvdW50aW5nJ30gPSAnVGlkc3JlZ2lzdHJlcmluZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICdFbmRyZSB0aWRzcmVnaXN0cmVyaW5nLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgb3ZlcnZpZXcuJ30gPSAnT3ZlcnNpa3Qgb3ZlciByZWdpc3RyZXJ0IHRpZC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHJlcG9ydGluZy4nfSA9ICdSYXBwb3J0ZXJpbmcgYXYgcmVnaXN0cmVydCB0aWQuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBzZXR0aW5ncy4nfSA9ICdJbm5zdGlsbGluZ2VyIGZvciB0aWRzcmVnaXN0cmVyaW5nLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdGlja2V0IHJlcG9ydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHZpZXcuJ30gPSAnU2UgcMOlIHRpZHNyZWdpc3RyZXJpbmcuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZy4nfSA9ICdUaWRzcmVnaXN0cmVyaW5nLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/nl_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6Om5sX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJ1RhYWsnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYXJrJ30gPSAnQWFubWVya2luZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdGFydCB0aW1lJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VuZCB0aW1lJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBtdXN0IGVudGVyIGEgc3RhcnQgYW5kIGFuIGVuZCB0aW1lLCBvciBhIHBvc2l0aXZlIHBlcmlvZCBvZiB1cCB0byAyNCBob3Vycy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgdGltZSBwZXJpb2QgbXVzdCBiZSBnaXZlbiBpbiBob3VycyBhbmQgY2FuIGJlIGEgZGVjaW1hbCBudW1iZXIuJ30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdEZWxldGUKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RvIHlvdSByZWFsbHkgd2FudCB0byBkZWxldGUgdGhlIFRpbWUgQWNjb3VudGluZyBvZiB0aGlzIGRheT8nfSA9CiAgICAgICAgJ1dlZXQgdSB6ZWtlciBkYXQgdSBkZSBUaW1lIEFjY291bnRpbmcgd2lsdCB2ZXJ3aWpkZXJlbiB2YW4gZGV6ZSBkYWc/JzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRWRpdAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIFJlY29yZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBzZXR0aW5ncyd9ID0gJ0dhIG5hYXIgaW5zdGVsbGluZ2VuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJ0RhdHVtIE5hdmlnYXRpZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJ0RhZyB6b25kZXIgYm9la2luZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICdTZWxlY3RlZXIgYWxsZSBkYWdlbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXNzIGVudHJ5J30gPSAnTWFzc2EgdG9ldm9lZ2VuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgdGhlIHJlYXNvbiBmb3IgeW91ciBhYnNlbmNlIGZvciB0aGUgc2VsZWN0ZWQgZGF5cyd9ID0KICAgICAgICAnS2llcyBlZW4gcmVkZW4gdmFuIGFic2VudGllIHZvb3IgZGUgZ2VzZWxlY3RlZXJkZSBkYWdlbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJ09wIHZha2FudGllJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIHNpY2sgbGVhdmUnfSA9ICdaaWVrbWVsZGluZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBvdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXF1aXJlZCBmaWVsZHMgYXJlIG1hcmtlZCB3aXRoIGEgIioiLid9ID0gJ1ZlcnBsaWNodGUgdmVsZGVuIHppam4gZ2VtYXJrZWVyZCBtZXQgIioiLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgaGF2ZSB0byBmaWxsIGluIHN0YXJ0IGFuZCBlbmQgdGltZSBvciBhIHRpbWUgcGVyaW9kLid9ID0gJ1UgbW9ldCBlZW4gYmVnaW4gZW4gZWluZHRpamQgb2YgZWVuIHRpamRwZXJpb2RlIGludnVsbGVuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0J30gPSAnUHJvamVjdCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPcmlnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGFkZCBhIHJlbWFyayB3aXRoIG1vcmUgdGhhbiA4IGNoYXJhY3RlcnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Vyc3BydW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05lZ2F0aXZlIHRpbWVzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICdOZWdhdGlldmUgdGlqZGVuIHppam4gbmlldCB0b2VnZXN0YWFuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIFN0YXJ0IHRpbWUgbWF0Y2hlcyBhbm90aGVyIGludGVydmFsLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgZm9ybWF0ISBQbGVhc2UgZW50ZXIgYSB0aW1lIHdpdGggdGhlIGZvcm1hdCBISDpNTS4nfSA9ICdPbmdlbGRpZyBmb3JtYWF0ISBWb2VyIGVlbiB0aWpkIGluIG1ldCBoZXQgZm9ybWFhdCBISDpNTS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnMjQ6MDAgaXMgb25seSBwZXJtaXR0ZWQgYXMgZW5kIHRpbWUuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgdGltZSEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnT25nZWxkaWdlIHRpamQhIEVlbiBkYWcgaGVlZnQgMjQgdXVyLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSBtdXN0IGJlIGFmdGVyIHN0YXJ0IHRpbWUuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gRW5kIHRpbWUgbWF0Y2hlcyBhbm90aGVyIGludGVydmFsLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQSB2YWxpZCBwZXJpb2QgbXVzdCBiZSBncmVhdGVyIHRoYW4gemVyby4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIE5lZ2F0aXZlIHBlcmlvZHMgYXJlIG5vdCBhbGxvd2VkLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWJtaXQgY2hhbmdlcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgb25lIHJvdyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgY2FuIG9ubHkgc2VsZWN0IG9uZSBjaGVja2JveCBlbGVtZW50ISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHNpY2sgbGVhdmU/J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gdmFjYXRpb24/J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gb3ZlcnRpbWUgbGVhdmU/J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCBtb3JlIHRoYW4gMTYgaG91cnM/J30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nT3ZlcnZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nIG1vbnRobHkgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKEhvdXJzKSd9ID0gJ092ZXJ1cmVuIChVcmVuKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAodGhpcyBtb250aCknfSA9ICdPdmVydXJlbiAoZGV6ZSBtYWFuZCknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRvdGFsKSd9ID0gJ092ZXJ1cmVuICh0b3RhYWwpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFpbmluZyBvdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiAoRGF5cyknfSA9ICdWYWthbnRpZSAoZGFnZW4pJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0aGlzIG1vbnRoKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFpbmluZyB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIExlYXZlIChEYXlzKSd9ID0gJ1ppZWt0ZWRhZ2VuIChEYWdlbiknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICdaaWVrdGVkYWdlbiAoZGV6ZSBtYWFuZCknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnWmlla3RlZGFnZW4gb3BnZW5vbWVuICh0b3RhYWwpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnVm9yaWdlIG1hYW5kJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICdWb2xnZW5kZSBtYWFuZCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrZGF5J30gPSAnV2Vla2RhZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnV2Vya3VyZW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG90YWwgd29ya2VkIGhvdXJzJ30gPSAnVG90YWxlIHdlcmt1cmVuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXJcJ3MgcHJvamVjdCBvdmVydmlldyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyAobW9udGhseSknfSA9ICdVcmVuIChNYWFuZGVsaWprcyknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKExpZmV0aW1lKSd9ID0gJ1VyZW4gKExldmVuc2R1dXIpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dyYW5kIHRvdGFsJ30gPSAnVG90YWFsJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNb250aCBOYXZpZ2F0aW9uJ30gPSAnTWFhbmRlbGlqa3NlIE5hdmlnYXRpZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBkYXRlJ30gPSAnR2EgbmFhciBkYXR1bSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJ1Zha2FudGllJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUnfSA9ICdaaWVrdGVkYWcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gcmVtYWluaW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgcmVwb3J0cyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1Byb2plY3QKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHJlcG9ydGluZyBvdmVydmlldyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDdXJyZW50bHkgb25seSBhY3RpdmUgdXNlcnMgaW4gdGhpcyBwcm9qZWN0IGFyZSBzaG93bi4gVG8gY2hhbmdlIHRoaXMgYmVoYXZpb3IsIHBsZWFzZSB1cGRhdGUgc2V0dGluZzonfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDdXJyZW50bHkgYWxsIHRpbWUgYWNjb3VudGluZyB1c2VycyBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCByZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gdGlja2V0J30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgUHJvamVjdCBTZXR0aW5ncyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgcHJvamVjdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBzZXR0aW5ncyBvdmVydmlldyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgUHJvamVjdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlcmUgaXMgYWxyZWFkeSBhIHByb2plY3Qgd2l0aCB0aGlzIG5hbWUuIFBsZWFzZSwgY2hvb3NlIGEgZGlmZmVyZW50IG9uZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgQWNjb3VudGluZyBTZXR0aW5ncyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGFzayd9ID0gJ1RhYWsgdG9ldm9lZ2VuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBhIHVzZXIgdG8gdGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGaWx0ZXIgZm9yIHByb2plY3RzLCB0YXNrcyBvciB1c2Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHBlcmlvZHMgY2FuIG5vdCBiZSBkZWxldGVkLid9ID0gJ1RpamRwZXJpb2RlcyBrdW5uZW4gbmlldCB3b3JkZW4gdmVyd2lqZGVyZC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgVGFzayd9ID0gJ1RhYWsgdG9ldm9lZ2VuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGFzayBTZXR0aW5ncyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgdGFzayB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgTGlzdCd9ID0gJ0dlYnJ1aWtlcnNsaWpzdCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBzZWUgb3ZlcnRpbWVzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgT3ZlcnRpbWUnfSA9ICdUb29uIE92ZXJ1cmVuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBjcmVhdGUgcHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsb3cgcHJvamVjdCBjcmVhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gc2tpcCB0aW1lIGFjY291bnRpbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsb3cgdGltZSBhY2NvdW50aW5nIHNraXBwaW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIHRoaXMgb3B0aW9uIGlzIHNlbGVjdGVkLCB0aW1lIGFjY291bnRpbmcgaXMgZWZmZWN0aXZlbHkgb3B0aW9uYWwgZm9yIHRoZSB1c2VyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIHdpbGwgYmUgbm8gd2FybmluZ3MgYWJvdXQgbWlzc2luZyBlbnRyaWVzIGFuZCBubyBlbnRyeSBlbmZvcmNlbWVudC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFNwYW5zJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBCZWdpbid9ID0gJ0JlZ2lucGVyaW9kZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgRW5kJ30gPSAnRWluZHBlcmlvZGUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF5cyBvZiBWYWNhdGlvbid9ID0gJ1Zha2FudGllZGFnZW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgcGVyIFdlZWsnfSA9ICdVcmVuIHBlciB3ZWVrJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJ0JlZ2luZGF0dW0nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGluc2VydCBhIHZhbGlkIGRhdGUuJ30gPSAnVm9lciBlZW4gZ2VsZGlnZSBkYXR1bSBpbi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICdFaW5kZGF0dW0nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICdFaW5kcGVyaW9kZSBtb2V0IG5hIEJlZ2lucGVyaW9kZSB6aWpuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMZWF2ZSBEYXlzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlZWtseSBIb3Vycyd9ID0gJ1dlZWt1cmVuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lJ30gPSAnT3ZlcnVyZW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJ0dlZW4gdGlqZHBlcmlvZGVzIGdldm9uZGVuLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICdWb2VnIHRpamRwZXJpb2RlIHRvZSc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgVGltZSBSZWNvcmQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldyBvZiAnfSA9ICdXZWVyZ2F2ZSB2YW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJldmlvdXMgZGF5J30gPSAnVm9yaWdlIGRhZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJ1ZvbGdlbmRlIGRhZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICdHZWVuIGRhdGEgZ2V2b25kZW4gdm9vciBkZXplIGRhZy4nOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICdMYWF0c3RlIFByb2plY3Rlbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3Qgc2F2ZSBzZXR0aW5ncywgYmVjYXVzZSBhIGRheSBoYXMgb25seSAyNCBob3VycyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGRlbGV0ZSBXb3JraW5nIFVuaXRzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIERhdGUgaXMgb3V0IG9mIGxpbWl0LCBidXQgeW91IGhhdmVuXCd0IGluc2VydCB0aGlzIGRheSB5ZXQsIHNvIHlvdSBnZXQgb25lKCEpIGNoYW5jZSB0byBpbnNlcnQnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIFdvcmtpbmcgRGF5cyd9ID0gJ0luY29tcGxldGUgV2Vya2RhZ2VuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Y2Nlc3NmdWwgaW5zZXJ0ISd9ID0gJ1N1Y2Nlc3ZvbCBpbmdldm9lcmQhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICdGb3V0IHRpamRlbnMgaW52b2VyZW4gbWVlcmRlcmUgZGF0YSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnU3VjY2Vzdm9sIGludm9lcmVuIHZhbiBtZWVyZGVyZSBkYXRhISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbnRlcmVkIGRhdGUgd2FzIGludmFsaWQhIERhdGUgd2FzIGNoYW5nZWQgdG8gdG9kYXkuJ30gPSAnSW5nZXZvZXJkZSBkYXRhIGlzIGdvZWRnZWtldXJkISBEYXRhIGlzIGFhbmdlcGFzdCBuYWFyIHZhbmRhYWcuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIHRpbWUgcGVyaW9kIGNvbmZpZ3VyZWQsIG9yIHRoZSBzcGVjaWZpZWQgZGF0ZSBpcyBvdXRzaWRlIG9mIHRoZSBkZWZpbmVkIHRpbWUgcGVyaW9kcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY29udGFjdCB0aGUgdGltZSBhY2NvdW50aW5nIGFkbWluaXN0cmF0b3IgdG8gdXBkYXRlIHlvdXIgdGltZSBwZXJpb2RzISd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgU2VsZWN0ZWQgUHJvamVjdHMnfSA9ICdMYWF0c3QgR2VzZWxlY3RlZXJkZSBQcm9qZWN0ZW4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsIFByb2plY3RzJ30gPSAnQWxsZSBQcm9qZWN0ZW4nOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJ1JhcHBvcnRhZ2UnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgVGlja2V0SUQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTm8gUHJvamVjdCBmb3IgVGlja2V0IGZvdW5kLid9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byB1cGRhdGUgdXNlciBzZXR0aW5ncyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCB1cGRhdGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZSBVc2VySUQgaXMgbm90IHZhbGlkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IHVzZXIgZGF0YSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIGFkZCB0aW1lIHBlcmlvZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2V0dGluZyd9ID0gJ0luc3RlbGxpbmcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciB1cGRhdGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXcgVXNlcid9ID0gJ05pZXV3ZSBHZWJydWlrZXInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJ1BlcmlvZGUgU3RhdHVzJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nVmlldy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldzogTmVlZCAlcyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ob3RpZmljYXRpb24vVGltZUFjY291bnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBpbnNlcnQgeW91ciB3b3JraW5nIGhvdXJzISd9ID0gJ1ZvZXIgdXcgd2Vya3VyZW4gaW4hJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvVG9vbEJhci9JbmNvbXBsZXRlV29ya2luZ0RheXMucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0luY29tcGxldGUgd29ya2luZyBkYXlzJ30gPSAnSW5jb21wbGV0ZSBXZXJrZGFnZW4nOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnS2llcyBvcCB6aWpuIG1pbnN0IDEgZGFnISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXNzIEVudHJ5J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgYSByZWFzb24gZm9yIGFic2VuY2UhJ30gPSAnS2llcyBlZW4gcmVkZW4gdmFuIGFic2VudGllISc7CgogICAgIyBKUyBGaWxlOiBUaW1lQWNjb3VudGluZy5BZ2VudAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVsZXRlIFRpbWUgQWNjb3VudGluZyBFbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDb25maXJtIGluc2VydCd9ID0gJyc7CgogICAgIyBTeXNDb25maWcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FjdGl2YXRlIHRoZSBzeW5jaHJvbmlzYXRpb24gb2YgVGlja2V0LVRpbWVVbml0cyBpbnRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWdlbnQgaW50ZXJmYWNlIG5vdGlmaWNhdGlvbiBtb2R1bGUgdG8gc2VlIHRoZSBudW1iZXIgb2YgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMgZm9yIHRoZSB1c2VyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Fsc28gc3luY2hyb25pc2UgY3VzdG9tZXJzIGFzIGEgbmV3IHByb2plY3QgaWYgdGhleSBoYXZlIG5vdCB5ZXQgYmVlbiBjcmVhdGVkIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcyBzb29uIGFzIHRoZSBzeW5jaHJvbmlzYXRpb24gb2YgdGlja2V0IFRpbWVVbml0cyBpcyBhY3RpdmF0ZWQsIGl0IGlzIHBvc3NpYmxlIHRvIHNldCB0aGUgZW50cmllcyBSZWFkT25seS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDcmVhdGUgYSBuZXcgdGltZSBhY2NvdW50aW5nIGVudHJ5IHJlbGF0ZWQgdG8gdGhlIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IG5hbWUgZm9yIG5ldyBhY3Rpb25zLid9ID0gJ1N0YW5kYWFyZG5hYW0gdm9vciBuaWV1d2UgYWN0aWVzLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IG5hbWUgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICdTdGFuZGFhcmRuYWFtIHZvb3IgbmlldXdlIHByb2plY3Rlbi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkYXRlIGVuZC4nfSA9ICdTdGFuZGFhcmRpbnN0ZWxsaW5nIHZvb3IgZWluZGRhdHVtLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRhdGUgc3RhcnQuJ30gPSAnU3RhbmRhYXJkaW5zdGVsbGluZyB2b29yIGJlZ2luZGF0dW0uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGVzY3JpcHRpb24uJ30gPSAnU3RhbmRhYXJkaW5zdGVsbGluZyB2b29yIG9tc2NocmlqdmluZy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJ1RpamQgdmVyYW50d29vcmRpbmcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBSZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIGVkaXQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBvdmVydmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHJlcG9ydGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHNldHRpbmdzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdGlja2V0IHJlcG9ydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG8gdXNlIGlmIHNvbWUgYWN0aW9ucyByZWR1Y2VkIHRoZSB3b3JraW5nIGhvdXJzIChmb3IgZXhhbXBsZSwgaWYgb25seSBoYWxmIG9mIHRoZSB0cmF2ZWxpbmcgdGltZSBpcyBwYWlkIEtleSA9PiB0cmF2ZWxpbmc7IENvbnRlbnQgPT4gNTApLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZSBTZXJ2aWNlIGFzIEFjdGlvbi4gUGxlYXNlIGFkZCBhcyBrZXkgdGhlIHRpbWVhY291bnRpbmcgYWN0aW9uIGFuZCB0aGUgc2VydmljZSBhcyB2YWx1ZS4gUmVnRXggYXJlIGFsbG93ZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2UgbmVlZCB0byBzZXQgYSBkZWZhdWx0IGFjdGlvbiBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2UgbmVlZCB0byBzZXQgYSBkZWZhdWx0IHByb2plY3QgaWQgd2hlbiB3ZSBzeW5jIFRpbWVVbml0cyB0byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIHNhdmUgdGhlIEFydGljbGUgVGltZVVuaXQgdG8gYSBEeW5hbWljRmllbGQgZnJvbSB0eXBlICJBcnRpY2xlIi4gUGxlYXNlIGFkZCBoZXJlIHRoZSBuYW1lIG9mIHRoZSBmaWVsZCBpZiB0aGUgaW5pdGluYWwgbmFtZSBpcyBjaGFuZ2VkLid9ID0KICAgICAgICAnJzsKCgogICAgcHVzaCBAeyAkU2VsZi0+e0phdmFTY3JpcHRTdHJpbmdzfSAvLyBbXSB9LCAoCiAgICAnQ2FuY2VsJywKICAgICdDb25maXJtIGluc2VydCcsCiAgICAnRGVsZXRlIFRpbWUgQWNjb3VudGluZyBFbnRyeScsCiAgICAnTWFzcyBFbnRyeScsCiAgICAnTm8nLAogICAgJ1BsZWFzZSBjaG9vc2UgYSByZWFzb24gZm9yIGFic2VuY2UhJywKICAgICdQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJywKICAgICdTdWJtaXQnLAogICAgJ1llcycsCiAgICApOwoKfQoKMTsK</File>
        <File Location="Kernel/Language/pl_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OnBsX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJ1phZGFuaWUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYXJrJ30gPSAnVXdhZ2EnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICdDenkgbmEgcGV3bm8gY2hjZXN6IHVzdW7EhcSHIHJvemxpY3plbmllIGN6YXN1IHByYWN5IHRlZ28gZG5pYT8nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnRWR5Y2phIGV3aWRlbmNqaSBjemFzdSBwcmFjeSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBzZXR0aW5ncyd9ID0gJ1ByemVqZMW6IGRvIHVzdGF3aWXFhCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXRlIE5hdmlnYXRpb24nfSA9ICdOYXdpZ2FjamEgcG8gZGFjaWUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF5cyB3aXRob3V0IGVudHJpZXMnfSA9ICdEbmkgYmV6IHdwaXPDs3cnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2VsZWN0IGFsbCBkYXlzJ30gPSAnWmF6bmFjeiB3c3p5c3RraWUgZG5pJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgZW50cnknfSA9ICdNYXNvd2Ugd3Bpc3l3YW5pZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJ1Byb3N6xJkgd3licmHEhyBwcnp5Y3p5bsSZIG5pZW9iZWNub8WbY2kgZGxhIHd5YnJhbnljaCBkbmknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gdmFjYXRpb24nfSA9ICdVcmxvcCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnWndvbG5pZW5pZSBsZWthcnNraWUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gb3ZlcnRpbWUgbGVhdmUnfSA9ICdXb2xuZSB6YSBnb2R6aW55IG5hZGxpY3pib3dlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnUG9sYSB3eW1hZ2FuZSBvem5hY3pvbmUgc8SFICIqIi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGhhdmUgdG8gZmlsbCBpbiBzdGFydCBhbmQgZW5kIHRpbWUgb3IgYSB0aW1lIHBlcmlvZC4nfSA9ICdNdXNpc3ogd3Byb3dhZHppxIcgY3phcyBwb2N6xIV0a3UgaSB6YWtvxYRjemVuaWEgbHViIG9rcmXFm2wgY3phcyB0cndhbmlhIGN5bGt1Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0J30gPSAnUHJvamVrdCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPcmlnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGFkZCBhIHJlbWFyayB3aXRoIG1vcmUgdGhhbiA4IGNoYXJhY3RlcnMhJ30gPSAnUHJvc3rEmSBkb2RhxIcgdXdhZ8SZIHphd2llcmFqxIVjxIUgd2nEmWNlaiBuacW8IDggem5ha8OzdyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXJzcHJ1bmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmVnYXRpdmUgdGltZXMgYXJlIG5vdCBhbGxvd2VkLid9ID0gJ1VqZW1uZSBjemFzeSBzxIUgbmllZG96d29sb25lLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIFN0YXJ0IHRpbWUgbWF0Y2hlcyBhbm90aGVyIGludGVydmFsLid9ID0KICAgICAgICAnUG9rcnl3YWrEhWNlIHNpxJkgZ29kemlueSBuaWUgc8SFIGRvendvbG9uZS4gQ3phcyByb3pwb2N6xJljaWEgcGFzdWplIGRvIGlubmVnbyBwcnplZHppYcWCdS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJ05pZXByYXdpZMWCb3d5IGZvcm1hdCEgUHJvc3rEmSBwb2RhxIcgY3phcyB3IGZvcm1hY2llIEdHOk1NLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcyNDowMCBqZXN0IGRvendvbG9uYSBqZWR5bmllIGpha28gY3phcyB6YWtvxYRjemVuaWEuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgdGltZSEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnTmllcHJhd2lkxYJvd3kgY3phcyEgRHppZcWEIG1hIHR5bGtvIDI0IGdvZHppbnkuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VuZCB0aW1lIG11c3QgYmUgYWZ0ZXIgc3RhcnQgdGltZS4nfSA9ICdDemFzIHpha2/FhGN6ZW5pYSBtdXNpIGJ5xIcgcG8gY3phc2llIHJvenBvY3rEmWNpYS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBFbmQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICdQb2tyeXdhasSFY2Ugc2nEmSBnb2R6aW55IG5pZSBzxIUgZG96d29sb25lLiBDemFzIHpha2/FhGN6ZW5pYSBwYXN1amUgZG8gaW5uZWdvIHByemVkemlhxYJ1Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnTmllcHJhd2lkxYJvd3kgY3phcyBjeWtsdSEgRHppZcWEIG1hIHR5bGtvIDI0IGdvZHppbnkuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnUHJhd2lkxYJvd3kgY3phcyBjeWtsdSBtdXNpIGJ5xIcgd2nEmWtzenkgb2QgemVyYS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIE5lZ2F0aXZlIHBlcmlvZHMgYXJlIG5vdCBhbGxvd2VkLid9ID0gJ05pZXByYXdpZMWCb3d5IGN5a2whIFVqZW1ueSBjemFzIGN5a2x1IG5pZSBqZXN0IGRvendvbG9ueS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICdEb2RhaiB3aWVyc3onOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICdNb8W8ZXN6IHphem5hY3p5xIcgdHlsa28gamVkZW4gZWxlbWVudCEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJ0N6eSBqZXN0ZcWbIHBld2llbiwgxbxlIHByYWNvd2HFgmXFmyB3IHRyYWtjaWUgendvbG5pZW5pYSBsZWthcnNraWVnbz8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiB2YWNhdGlvbj8nfSA9ICdDenkgamVzdGXFmyBwZXdpZW4sIMW8ZSBwcmFjb3dhxYJlxZsgdyB0cmFrY2llIHVybG9wdT8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBvdmVydGltZSBsZWF2ZT8nfSA9CiAgICAgICAgJ0N6eSBqZXN0ZcWbIHBld2llbiwgxbxlIHByYWNvd2HFgmXFmyB3IHRyYWtjaWUgd29sbmVnbyB6YSBuYWRnb2R6aW55Pyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIG1vcmUgdGhhbiAxNiBob3Vycz8nfSA9ICdDenkgamVzdGXFmyBwZXdpZW4sIMW8ZSBwcmFjb3dhxYJlxZsgd2nEmWNlaiBuacW8IDE2IGdvZHppbj8nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdPdmVydmlldwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSByZXBvcnRpbmcgbW9udGhseSBvdmVydmlldyd9ID0gJ01pZXNpxJljem55IHJhcG9ydCBjemFzdSBwcmFjeSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAoSG91cnMpJ30gPSAnR29kemlueSBuYWRsaWN6Ym93ZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAodGhpcyBtb250aCknfSA9ICdHb2R6aW55IG5hZGxpY3pib3dlIChiaWXFvMSFY3kgbWllc2nEhWMpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICdHb2R6aW55IG5hZGxpY3pib3dlICjFgsSFY3puaWUpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFpbmluZyBvdmVydGltZSBsZWF2ZSd9ID0gJ1Bvem9zdGHFgmUgZ29kemlueSBuYWRsaWN6Ym93ZSBkbyB3eWJyYW5pYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiAoRGF5cyknfSA9ICdVcmxvcCAoZG5pKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICdXeWtvcnp5c3RhbnkgdXJsb3AgKGJpZcW8xIVjeSBtaWVzacSFYyknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJ1d5a29yenlzdGFueSB1cmxvcCAoxYLEhWN6bmllKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICdVcmxvcCBwb3pvc3RhxYJ5IGRvIHd5a29yenlzdGFuaWEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICdad29sbmllbmllIGxla2Fyc2tpZSAoZG5pKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlIHRha2VuICh0aGlzIG1vbnRoKSd9ID0gJ0RuaSB6d29sbmllbmlhIGxla2Fyc2tpZWdvIChiaWXFvMSFY3kgbWllc2nEhWMpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUgdGFrZW4gKHRvdGFsKSd9ID0gJ0RuaSB6d29sbmllbmlhIGxla2Fyc2tpZWdvICjFgsSFY3puaWUpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnUG9wcnplZG5pIG1pZXNpxIVjJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICdOYXN0xJlwbnkgbWllc2nEhWMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJ0R6aWXFhCByb2JvY3p5JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dvcmtpbmcgSG91cnMnfSA9ICdHb2R6aW55IHByYWN5JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJ8WBxIVjem5hIGlsb8WbxIcgcHJ6ZXByYWNvd2FueWNoIGdvZHppbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICdPcGlzIHByb2pla3R1IHXFvHl0a293bmlrYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyAobW9udGhseSknfSA9ICdHb2R6aW55IChtaWVzacSZY3puaWUpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICdHb2R6aW55ICjFgsSFY3puaWUpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dyYW5kIHRvdGFsJ30gPSAnT2fDs8WCZW0nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnUmFvcnRvd2FuaWUgY3phc3UnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGggTmF2aWdhdGlvbid9ID0gJ05hd2lnYWNqYSBtaWVzacSZY3puYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBkYXRlJ30gPSAnUHJ6ZWpkxbogZG8gZGF0eSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICdSYXBvcnR5IHXFvHl0a293bmlrYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNb250aGx5IHRvdGFsJ30gPSAnxYHEhWN6bmllIC0gbWllc2nEmWN6bmllJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xpZmV0aW1lIHRvdGFsJ30gPSAnxYHEhWN6bmllIC0gb2fDs8WCZW0nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgbGVhdmUnfSA9ICdXb2xuZSB6YSBnb2R6aW55IG5hZGxpY3pib3dlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uJ30gPSAnVXJsb3AnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSd9ID0gJ1p3b2xuaWVuaWUgbGVrYXJza2llJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJ1VybG9wIHBvem9zdGHFgnkgZG8gd3lrb3J6eXN0YW5pYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICdSYXBvcnR5IHByb2pla3R1JzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nUHJvamVjdAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCByZXBvcnQnfSA9ICdSYXBvcnQgcHJvamVrdHUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gcmVwb3J0aW5nIG92ZXJ2aWV3J30gPSAnUHJ6ZWpkxbogZG8gcHJ6ZWdsxIVkdSByYXBvcnRvd2FuaWEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICdBa3R1YWxuaWUgd2lkb2N6bmkgc8SFIGplZHluaWUgdcW8eXRrb3duaWN5IHogdGVnbyBwcm9qZWt0dS4gVHV0YWogbW/FvG5hIHRvIHptaWVuacSHOic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDdXJyZW50bHkgYWxsIHRpbWUgYWNjb3VudGluZyB1c2VycyBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICdBa3R1YWxuaWUgd2lkb2N6bmkgc8SFIHdzenlzY3kgdcW8eXRrb3duaWN5IHJvemxpY3phasSFY3kgY3phcyBwcmFjeS4gVHV0YWogbW/FvG5hIHRvIHptaWVuacSHOic7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byB0aWNrZXQnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdTZXR0aW5nCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgQWNjb3VudGluZyBQcm9qZWN0IFNldHRpbmdzJ30gPSAnRWR5dHVqIHVzdGF3aWVuaWEgcm96bGljemFuaWEgY3phc3UgcHJhY3kgdyBwcm9qZWtjaWUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICdEb2RhaiBwcm9qZWt0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzIG92ZXJ2aWV3J30gPSAnUHJ6ZWpkxbogZG8gb3Bpc3UgdXN0YXdpZcWEJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBQcm9qZWN0J30gPSAnRG9kYWogcHJvamVrdCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFByb2plY3QgU2V0dGluZ3MnfSA9ICdFZHl0dWogdXN0YXdpZW5pYSBwcm9qZWt0dSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgcHJvamVjdCB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAnSW5ueSBwcm9qZWt0IHXFvHl3YSBqdcW8IHRlaiBuYXp3eS4gVcW8eWogaW5uZWogbmF6d3kuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFNldHRpbmdzJ30gPSAnRWR5dHVqIHVzdGF3aWVuaWEgcm96bGljemFuaWEgY3phc3UgcHJhY3knOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICdEb2RhaiB6YWRhbmllJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBhIHVzZXIgdG8gdGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGaWx0ZXIgZm9yIHByb2plY3RzLCB0YXNrcyBvciB1c2Vycyd9ID0gJ0ZpbHRydWogcHJvamVrdHksIHphZGFuaWEgbHViIHXFvHl0a293bmlrw7N3JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnQ3lrbGUgY3phc3UgbmllIG1vZ8SFIHpvc3RhxIcgdXN1bmnEmXRlLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IExpc3QnfSA9ICdMaXN0YSBwcm9qZWt0w7N3JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgTGlzdCd9ID0gJ0xpc3RhIHphZGHFhCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgVGFzayd9ID0gJ0RvZGFqIHphZGFuaWUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnRWR5dHVqIHVzdGF3aWVuaWEgemFkYW5pYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgdGFzayB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAnSW5uZSB6YWRhbmllIHXFvHl3YSBqdcW8IHRlaiBuYXp3eS4gVcW8eWogaW5uZWogbmF6d3kuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgTGlzdCd9ID0gJ0xpc3RhIFXFvHl0a293bmlrw7N3JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICdVc3Rhd2llbmlhIFXFvHl0a293bmlrYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gc2VlIG92ZXJ0aW1lcyd9ID0gJ1XFvHl0a293bmlrIG1vxbxlIHpvYmFjennEhyBuYWRnb2R6aW55JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgT3ZlcnRpbWUnfSA9ICdQb2thxbwgZ29kemlueSBuYWRsaWN6Ym93ZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnVcW8eXRrb3duaWsgbW/FvGUgdHdvcnp5xIcgcHJvamVrdHknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsb3cgcHJvamVjdCBjcmVhdGlvbid9ID0gJ1plendhbGFqIG5hIHR3b3J6ZW5pZSBwcm9qZWt0w7N3JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBza2lwIHRpbWUgYWNjb3VudGluZyd9ID0gJ1XFvHl0a293bmlrIG1vxbxlIHBvbWluxIXEhyByb3psaWN6YW5pZSBjemFzdSBwcmFjeSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyB0aW1lIGFjY291bnRpbmcgc2tpcHBpbmcnfSA9ICdQb3p3w7NsIG5hIG9taW5pxJljaWUgcm96bGljemFuaWEgY3phc3UgcHJhY3knOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgdGhpcyBvcHRpb24gaXMgc2VsZWN0ZWQsIHRpbWUgYWNjb3VudGluZyBpcyBlZmZlY3RpdmVseSBvcHRpb25hbCBmb3IgdGhlIHVzZXIuJ30gPQogICAgICAgICdKZcWbbGkgdGEgb3BjamEgamVzdCB6YXpuYWN6b25hLCByb3psaWN6YW5pZSBjemFzdSBwcmFjeSBqZXN0IG5pZW9ib3dpxIV6a293ZSBkbGEgdcW8eXRrb3duaWthLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICdOaWUgYsSZZHppZSBvc3RyemXFvGXFhCBvIGJyYWt1asSFY3ljaCBqZWRub3N0a2FjaCBjemFzdSBvcmF6IHd5bXVzemFuaWEgd3Bpc8Ozdy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJ09rcmVzeSBDemFzdSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICdQb2N6xIV0ZWsgY3lrbHUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJ0tvbmllYyBjeWtsdSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnRG5pIHVybG9wdSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyBwZXIgV2Vlayd9ID0gJ0lsb8WbxIcgZ29kemluIHcgdHlnb2RuaXUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXV0aG9yaXplZCBPdmVydGltZSd9ID0gJ1plenfDs2wgbmEgZ29kemlueSBuYWRsaWN6Ym93ZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdGFydCBEYXRlJ30gPSAnRGF0YSByb3pwb2N6xJljaWEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGluc2VydCBhIHZhbGlkIGRhdGUuJ30gPSAnUHJvc3rEmSB3cHJvd2FkemnEhyBwcmF3aWTFgm93xIUgZGF0xJkuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VuZCBEYXRlJ30gPSAnRGF0YSB6YWtvxYRjemVuaWEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICdLb25pZWMgb2tyZXN1IG11c2kgYnnEhyBwbyBqZWdvIHBvY3rEhXRrdS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJ0RuaSBvcHVjem9uZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICdUeWdvZG5pb3d5IGN6YXMgcHJhY3knOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICdHb2R6aW55IG5hZGxpY3pib3dlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIHRpbWUgcGVyaW9kcyBmb3VuZC4nfSA9ICdOaWUgem5hbGV6aW9ubyDFvGFkbmVnbyBjeWtsdS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRpbWUgcGVyaW9kJ30gPSAnRG9kYWogY3lrbCc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgVGltZSBSZWNvcmQnfSA9ICdQb2thxbwgZXdpZGVuY2rEmSBjemFzdSBwcmFjeSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IG9mICd9ID0gJ1dpZG9rICc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcmV2aW91cyBkYXknfSA9ICdQb3ByemVkbmkgZHppZcWEJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgZGF5J30gPSAnS29sZWpueSBkemllxYQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gZGF0YSBmb3VuZCBmb3IgdGhpcyBkYXkuJ30gPSAnQnJhayBkYW55Y2ggZG90eWN6xIVjeWNoIHd5YnJhbmVnbyBkbmlhLic7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ0VkaXQucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgV29ya2luZyBVbml0cyEnfSA9ICdOaWUgdWRhxYJvIHNpxJkgd3N0YXdpxIcgamVkbm9zdGVrIHByYWN5ISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMYXN0IFByb2plY3RzJ30gPSAnT3N0YXRuaWUgcHJvamVrdHknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnTmllIG1vxbxuYSB6YXBpc2HEhyB1c3Rhd2llxYQsIHBvbmlld2HFvCBkb2JhIG1hIHR5bGtvIDI0IGdvZHppbnkhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICdOaWUgdWRhxYJvIHNpxJkgdXN1bsSFxIcgamVkbm9zdGVrIHByYWN5ISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIERhdGUgaXMgb3V0IG9mIGxpbWl0LCBidXQgeW91IGhhdmVuXCd0IGluc2VydCB0aGlzIGRheSB5ZXQsIHNvIHlvdSBnZXQgb25lKCEpIGNoYW5jZSB0byBpbnNlcnQnfSA9CiAgICAgICAgJ1dwcm93YWR6b25hIGRhdGEgamVzdCBwb3phIHpha3Jlc2VtLCBhbGUgbmllIHdwcm93YWR6acWCZcWbIGplc3pjemUgdGVnbyBkbmlhLCBtYXN6IHdpxJljIGplZHluxIUoISkgb2themrEmSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIFdvcmtpbmcgRGF5cyd9ID0gJ05pZXBlxYJuZSBkbmkgcHJhY3knOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnV3Byb3dhZGFuaWUgcG93aW9kxYJvIHNpxJkhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICdXeXN0xIVwacWCIGLFgsSFZCBwb2RjemFzIHdwcm93YWR6YW5pYSB3aWVsdSBkYXQgamVkbm9jemXFm25pZSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnUG9tecWbbG5pZSB3cHJvd2Fkem9ubyB3aWVsZSBkYXQgamVkbm9jemXFm25pZSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW50ZXJlZCBkYXRlIHdhcyBpbnZhbGlkISBEYXRlIHdhcyBjaGFuZ2VkIHRvIHRvZGF5Lid9ID0gJ1dwcm93YWR6b25vIG5pZXByYXdpZMWCb3fEhSBkYXTEmSEgWm9zdGHFgmEgb25hIHptaWVuaW9uYSBuYSBiaWXFvMSFY8SFLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyB0aW1lIHBlcmlvZCBjb25maWd1cmVkLCBvciB0aGUgc3BlY2lmaWVkIGRhdGUgaXMgb3V0c2lkZSBvZiB0aGUgZGVmaW5lZCB0aW1lIHBlcmlvZHMuJ30gPQogICAgICAgICdOaWUgc2tvbmZpZ3Vyb3dhbm8gb2tyZXPDs3cgY3phc3UgbHViIHBvZGFuYSBkYXRhIGxlxbx5IHBvemEgemRlZmluaW93YW55bWkgb2tyZXNhbWkuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICdTa29udGFrdHVqIHNpxJkgeiBhZG1pbmlzdHJhdG9yZW0gY3phc3UgcHJhY3kgdyBjZWx1IGFrdHVhbGl6YWNqaSB0d29pY2ggb2tyZXPDs3cgcHJhY3khJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgU2VsZWN0ZWQgUHJvamVjdHMnfSA9ICdPc3RhdG5pbyB3eWJyYW5lIHByb2pla3R5JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbCBQcm9qZWN0cyd9ID0gJ1dzenlzdGtpZSBwcm9qZWt0eSc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBQcm9qZWN0SUQnfSA9ICdSYXBvcnRvd2FuaWUgcHJvamVrdHU6IFd5bWFnYW55IFByb2plY3RJRCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmcgUHJvamVjdCd9ID0gJ1JhcG9ydG93YW5pZSBwcm9qZWt0dSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmcnfSA9ICdSYXBvcnRvd2FuaWUnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgVGlja2V0SUQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTm8gUHJvamVjdCBmb3IgVGlja2V0IGZvdW5kLid9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byB1cGRhdGUgdXNlciBzZXR0aW5ncyEnfSA9ICdOaWUgbW/FvG5hIHptaWVuacSHIHVzdGF3aWXFhCB1xbx5dGtvd25pa2EhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgYWRkZWQhJ30gPSAnUHJvamVrdCBkb2RhbnkhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdXBkYXRlZCEnfSA9ICdQcm9qZWt0IHptaWVuaW9ueSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayBhZGRlZCEnfSA9ICdaYWRhbmllIGRvZGFuZSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayB1cGRhdGVkISd9ID0gJ1phZGFuaWUgem1pZW5pb25lISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgVXNlcklEIGlzIG5vdCB2YWxpZCEnfSA9ICdJZGVudHlmaWthdG9yIFVzZXJJRCBqZXN0IG5pZXByYXdpZMWCb3d5ISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IHVzZXIgZGF0YSEnfSA9ICdOaWUgdWRhxYJvIHNpxJkgd3N0YXdpxIcgZGFueWNoIHXFvHl0a293bmlrYSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIGFkZCB0aW1lIHBlcmlvZCEnfSA9ICdOaWUgbW/FvG5hIGRvZGHEhyBjeWtsdSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2V0dGluZyd9ID0gJ1VzdGF3aWVuaWUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciB1cGRhdGVkISd9ID0gJ1XFvHl0a293bmlrIHptaWVuaW9ueSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICdVxbx5dGtvd25payBkb2RhbnkhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05ldyBVc2VyJ30gPSAnTm93eSBVxbx5dGtvd25payc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgU3RhdHVzJ30gPSAnU3RhbiBjeWtsdSc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnV2lkb2s6IFBvdHJ6ZWJueSAlcyEnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ob3RpZmljYXRpb24vVGltZUFjY291bnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBpbnNlcnQgeW91ciB3b3JraW5nIGhvdXJzISd9ID0gJ1Byb3N6xJkgd3Byb3dhZHppxIcgc3fDs2ogY3phcyBwcmFjeSEnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICdOaWVwZcWCbmUgZG5pIHByYWN5JzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50LkVkaXRUaW1lUmVjb3JkcwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhdCBsZWFzdCBvbmUgZGF5ISd9ID0gJ1Byb3N6xJkgd3licmHEhyBjbyBuYWptbmllaiBqZWRlbiBkemllxYQhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICdNYXNvd2Ugd3Bpc3l3YW5pZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGEgcmVhc29uIGZvciBhYnNlbmNlISd9ID0gJ1Byb3N6xJkgd3licmHEhyBwcnp5Y3p5bsSZIG5pZW9iZWNub8WbY2khJzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5J30gPSAnVXN1xYQgcm96bGljemVuaWUgY3phc3UgcHJhY3knOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICdQb3R3aWVyZMW6IHdwaXMnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJ01vZHXFgiBwb3dpYWRhbWlhbmlhIEFnZW50YSBvIGxpY3piaWUgZG5pIHogbmlla29tcGxldG55bSByYXBvcnRvd2FuaWVtIGN6YXN1IHByYWN5Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICdEb215xZtsbmEgbmF6d2Egbm93eWNoIGN6eW5ub8WbY2kuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgbmFtZSBmb3IgbmV3IHByb2plY3RzLid9ID0gJ0RvbXnFm2xuYSBuYXp3YSBub3d5Y2ggcHJvamVrdMOzdy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkYXRlIGVuZC4nfSA9ICdEb215xZtsbmEgZGF0YSB6YWtvxYRjemVuaWEuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICdEb215xZtsbmEgZGF0YSByb3pwb2N6xJljaWEuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGVzY3JpcHRpb24uJ30gPSAnRG9tecWbbG5lIHVzdGF3aWVuaWUgb3Bpc3UuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgbGVhdmUgZGF5cy4nfSA9ICdEb215xZtsbmUga29uZmlndXJhY2phIHVybG9wdS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBvdmVydGltZS4nfSA9ICdEb215xZtsbmUga29uZmlndXJhY2phIGdvZHppbiBuYWRsaWN6Ym93eWNoLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnRG9tecWbbG5hIGtvbmZpZ3VyYWNqYSB0eWdvZG5pb3dlZ28gY3phc3UgcHJhY3kuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICdEb215xZtsbnkgc3RhbiBub3d5Y2ggY3p5bm5vxZtjaS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICdEb215xZtsbnkgc3RhbiBub3d5Y2ggcHJvamVrdMOzdy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICdEb215xZtsbnkgc3RhbiBub3d5Y2ggdcW8eXRrb3duaWvDs3cuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmluZXMgdGhlIHByb2plY3RzIGZvciB3aGljaCBhIHJlbWFyayBpcyByZXF1aXJlZC4gSWYgdGhlIFJlZ0V4cCBtYXRjaGVzIG9uIHRoZSBwcm9qZWN0LCB5b3UgaGF2ZSB0byBpbnNlcnQgYSByZW1hcmsgdG9vLiBUaGUgUmVnRXhwIHVzZSB0aGUgc214IHBhcmFtZXRlci4nfSA9CiAgICAgICAgJ09rcmXFm2xhIHByb2pla3R5LCBrdMOzcmUgd3ltYWdhasSFIGRvZGF3YW5pYSBrb21lbnRhcnp5LiBKZcW8ZWxpIHd5cmHFvGVuaWUgcmVndWxhcm5lIHBhc3VqZSBkbyBwcm9qZWt0dSwgdHJ6ZWJhIGRvZGHEhyBrb21lbnRhcnouIFd5cmHFvGVuaWEgcmVndWxhcm5lIGtvcnp5c3RhasSFIHogcGFyYW1ldHLDs3cgc2Vyd2VyYSBtYWtyIChTTVgpLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZXRlcm1pbmVzIGlmIHRoZSBzdGF0aXN0aWNzIG1vZHVsZSBtYXkgZ2VuZXJhdGUgdGltZSBhY2NvdW50aW5nIGluZm9ybWF0aW9uLid9ID0KICAgICAgICAnT2tyZcWbbGEsIGN6eSBtb2R1xYIgc3RhdHlzdHljem55IG1vxbxlIGdlbmVyb3dhxIcgaW5mb3JtYWNqZSBvIHJvemxpY3plbmlhY2ggY3phc3UgcHJhY3kuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSBhY2NvdW50aW5nIHNldHRpbmdzLid9ID0gJ0VkeXR1aiB1c3Rhd2llbmlhIHJvemxpY3phbmlhIGN6YXN1IHByYWN5Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IHRpbWUgcmVjb3JkLid9ID0gJ0VkeWNqYSBld2lkZW5jamkgY3phc3UgcHJhY3kuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJ0xpY3piYSBkbmkgd3N0ZWN6LCBkbGEga3TDs3J5Y2ggbW/FvG5hIHJvemxpY3phxIcgY3phcyBwcmFjeS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgb25seSB1c2VycyB0aGF0IGhhcyBhZGRlZCB3b3JraW5nIHRpbWUgdG8gdGhlIHNlbGVjdGVkIHByb2plY3QgYXJlIHNob3duLid9ID0KICAgICAgICAnSmXFm2xpIGFrdHl3bmUsIHdpZG9jem5pIHPEhSB0eWxrbyB1xbx5dGtvd25pY3ksIGt0w7Nyenkgcm96bGljenlsaSBjemFzIHByYWN5IHcgd3licmFueW0gcHJvamVrY2llLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZHJvcGRvd24gZWxlbWVudHMgaW4gdGhlIGVkaXQgc2NyZWVuIGFyZSBjaGFuZ2VkIHRvIG1vZGVybml6ZWQgYXV0b2NvbXBsZXRpb24gZmllbGRzLid9ID0KICAgICAgICAnUHJ6eSB3xYLEhWN6b25laiBvcGNqaSwgZWxlbWVudHkgcm96d2lqYW5lIHcgb2tuaWUgZWR5Y2ppIGLEmWTEhSB6YXN0xIVwaW9uZSBwb2xhbWkgeiBhdXRvbWF0eWN6bnltIHV6dXBlxYJuaWFuaWVtLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICdQcnp5IHfFgsSFY3pvbmVqIG9wY2ppLCBtb8W8bmEgdcW8ecSHIGZpbHRyw7N3LCB1xbx5dHljaCB3IHBvcHJ6ZWRuaWNoIHByb2pla3RhY2gsIHphbWlhc3Qgc3Rvc293YcSHIGR3aWUgbGlzdHkgcHJvamVrdMOzdyAob3N0YXRuaWVnbyBpIHdzenlzdGtpY2gpLiBOaWV6YsSZZG5lIGplc3QgdXJ1Y2hvbWllbmllIG9wY2ppIFRpbWVBY2NvdW50aW5nOjpFbmFibGVBdXRvQ29tcGxldGlvbi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJ0plxZtsaSBha3R5d25lLCBmaWx0cnkgdcW8eXRlIHcgcG9wcnplZG5pY2ggcHJvamVrdGFjaCBzxIUgZG9tecWbbG5pZSBha3R5d25lIChqZcWbbGkgdGFraWUgcHJvamVrdHkgaXN0bmllasSFKS4gTmllemLEmWRuZSBqZXN0IHVydWNob21pZW5pZSBvcGNqaSBFbmFibGVBdXRvQ29tcGxldGlvbiBvcmF6IFRpbWVBY2NvdW50aW5nOjpVc2VGaWx0ZXIuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSB1c2VyIGlzIGFsbG93ZWQgdG8gZW50ZXIgIm9uIHZhY2F0aW9uIGxlYXZlIiwgIm9uIHNpY2sgbGVhdmUiIGFuZCAib24gb3ZlcnRpbWUgbGVhdmUiIHRvIG11bHRpcGxlIGRhdGVzIGF0IG9uY2UuJ30gPQogICAgICAgICdKZcWbbGkgYWt0eXduZSwgdcW8eXRrb3duaWsgbW/FvGUgdXN0YXdpxIcgInVybG9wIiwgInp3b2xuaWVuaWUgbGVrYXJza2llIiBvcmF6ICJ3b2xuZSB6YSBuYWRnb2R6aW55IiBkbGEgd2llbHUgZG5pIGplZG5vY3plxZtuaWUuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnTWFrc3ltYWxuYSBsaWN6YmEgZG5pIHJvYm9jenljaCwgdyBjacSFZ3Uga3TDs3J5Y2ggbmFsZcW8eSB1enVwZcWCbmnEhyBjemFzIHByYWN5Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXhpbXVtIG51bWJlciBvZiB3b3JraW5nIGRheXMgd2l0aG91dCB3b3JraW5nIHVuaXRzIGVudHJ5IGFmdGVyIHdoaWNoIGEgd2FybmluZyB3aWxsIGJlIHNob3duLid9ID0KICAgICAgICAnTWFrc3ltYWxuYSBsaWN6YmEgZG5pIHJvYm9jenljaCwgYmV6IHV6dXBlxYJuaWFuaWEgY3phc3UgcHJhY3ksIHBvIGt0w7NyeWNoIHBva2F6YW5lIHpvc3RhbmllIG9zdHJ6ZcW8ZW5pZS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnUHJ6ZWdsxIVkLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHRpbWUgcmVwb3J0aW5nLid9ID0gJ1JhcG9ydG93YW5pZSBjemFzdSBwcm9qZWt0dS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIGFjdGlvbiBsaXN0IGFjY29yZGluZyB0byBzZWxlY3RlZCBwcm9qZWN0LiBLZXkgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9uIGZvciBwcm9qZWN0KHMpLCBjb250ZW50IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGFjdGlvbihzKS4nfSA9CiAgICAgICAgJ1d5cmHFvGVuaWEgcmVndWxhcm5lIGRvIG9ncmFuaWN6ZW5pYSBsaXN0eSB6YWRhxYQgd3licmFueWNoIHByb2pla3TDs3cuIEtsdWN6IHphd2llcmEgd3lyYcW8ZW5pZSByZWd1bGFybmUgZGxhIHByb2pla3R1KMOzdyksIHphd2FydG/Fm8SHIG9rcmXFm2xhIHd5cmHFvGVuaWUgcmVndWxhcm5lIGRsYSBha2NqaS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnV3lyYcW8ZW5pYSByZWd1bGFybmUgZG8gb2dyYW5pY3plbmlhIGxpc3R5IHByb2pla3TDs3cgd3licmFueWNoIGdydXAgdcW8eXRrb3duaWvDs3cuIEtsdWN6IHphd2llcmEgd3lyYcW8ZW5pZSByZWd1bGFybmUgZGxhIHByb2pla3R1KMOzdyksIHphd2FydG/Fm8SHIHphd2llcmEgbGlzdMSZIGdydXAgcm96ZHppZWxvbnljaCBwcnplY2lua2FtaS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBhY2NvdW50ZWQgdGltZXMgZm9yIHRoaXMgdGlja2V0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NwZWNpZmllcyBpZiB3b3JraW5nIGhvdXJzIGNhbiBiZSBpbnNlcnRlZCB3aXRob3V0IHN0YXJ0IGFuZCBlbmQgdGltZXMuJ30gPQogICAgICAgICdPa3JlxZtsYSwgY3p5IGN6YXMgcHJhY3kgbW/FvGUgem9zdGHEhyB3cHJvd2Fkem9ueSBiZXogcG9kYXdhbmlhIGN6YXN1IHJvenBvY3rEmWNpYSBvcmF6IHpha2/FhGN6ZW5pYS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3luY2hyb25pc2UgY3VzdG9tZXJzIGFzIGEgbmV3IHByb2plY3QgaWYgdGhleSBleGlzdHMgaW4gdGhlIGN1c3RvbWVyIGRhdGFiYXNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgbW9kdWxlIGZvcmNlcyBpbnNlcnRzIGluIFRpbWVBY2NvdW50aW5nLid9ID0gJ1RlbiBtb2R1xYIgd3ltdXN6YSB1enVwZcWCbmlhbmllIHJvemxpY3plxYQgY3phc3UgcHJhY3kuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgbm90aWZpY2F0aW9uIG1vZHVsZSBnaXZlcyBhIHdhcm5pbmcgaWYgdGhlcmUgYXJlIHRvbyBtYW55IGluY29tcGxldGUgd29ya2luZyBkYXlzLid9ID0KICAgICAgICAnTW9kdcWCIHRlbiBvc3RyemVnYSBvIHpieXQgZHXFvGVqIGxpY3piaWUgbmllcm96bGljem9ueWNoIGRuaSByb2JvY3p5Y2guJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCB0aW1lIHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIEFjY291bnRpbmcnfSA9ICdSb3psaWN6YW5pZSBjemFzdSBwcmFjeSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICdFZHljamEgcm96bGljemXFhCBjemFzdSBwcmFjeS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJ09waXMgcm96bGljemFuaWEgY3phc3UgcHJhY3kuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyByZXBvcnRpbmcuJ30gPSAnUmFwb3J0b3dhbmllIHJvemxpY3plxYQgY3phc3UgcHJhY3kuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBzZXR0aW5ncy4nfSA9ICdLb25maWd1cmFjamEgcm96bGljemXFhCBjemFzdSBwcmFjeS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHRpY2tldCByZXBvcnQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB2aWV3Lid9ID0gJ1ByemVnbMSFZCByb3psaWN6ZcWEIGN6YXN1IHByYWN5Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcuJ30gPSAnUm96bGljemFuaWUgY3phc3UgcHJhY3kuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvIHVzZSBpZiBzb21lIGFjdGlvbnMgcmVkdWNlZCB0aGUgd29ya2luZyBob3VycyAoZm9yIGV4YW1wbGUsIGlmIG9ubHkgaGFsZiBvZiB0aGUgdHJhdmVsaW5nIHRpbWUgaXMgcGFpZCBLZXkgPT4gdHJhdmVsaW5nOyBDb250ZW50ID0+IDUwKS4nfSA9CiAgICAgICAgJ1d5a29yenlzdHl3YW5lIGplxbxlbGkga3TDs3JlxZsgemFkYW5pYSByZWR1a3VqxIUgZ29kemlueSBwcmFjeSAobnAuIGplxZtsaSB6YSBjemFzdSBkb2phemR1IGxpY3pvbmEgamVzdCB0eWxrbyBwb8WCb3dhIGN6YXN5OyBLbHVjeiA9PiBkb2phemQ7IFdhcnRvxZvEhyA9PiA1MCkuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZSBTZXJ2aWNlIGFzIEFjdGlvbi4gUGxlYXNlIGFkZCBhcyBrZXkgdGhlIHRpbWVhY291bnRpbmcgYWN0aW9uIGFuZCB0aGUgc2VydmljZSBhcyB2YWx1ZS4gUmVnRXggYXJlIGFsbG93ZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2UgbmVlZCB0byBzZXQgYSBkZWZhdWx0IGFjdGlvbiBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2UgbmVlZCB0byBzZXQgYSBkZWZhdWx0IHByb2plY3QgaWQgd2hlbiB3ZSBzeW5jIFRpbWVVbml0cyB0byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIHNhdmUgdGhlIEFydGljbGUgVGltZVVuaXQgdG8gYSBEeW5hbWljRmllbGQgZnJvbSB0eXBlICJBcnRpY2xlIi4gUGxlYXNlIGFkZCBoZXJlIHRoZSBuYW1lIG9mIHRoZSBmaWVsZCBpZiB0aGUgaW5pdGluYWwgbmFtZSBpcyBjaGFuZ2VkLid9ID0KICAgICAgICAnJzsKCgogICAgcHVzaCBAeyAkU2VsZi0+e0phdmFTY3JpcHRTdHJpbmdzfSAvLyBbXSB9LCAoCiAgICAnQ2FuY2VsJywKICAgICdDb25maXJtIGluc2VydCcsCiAgICAnRGVsZXRlIFRpbWUgQWNjb3VudGluZyBFbnRyeScsCiAgICAnTWFzcyBFbnRyeScsCiAgICAnTm8nLAogICAgJ1BsZWFzZSBjaG9vc2UgYSByZWFzb24gZm9yIGFic2VuY2UhJywKICAgICdQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJywKICAgICdTdWJtaXQnLAogICAgJ1llcycsCiAgICApOwoKfQoKMTsK</File>
        <File Location="Kernel/Language/pt_BR_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OnB0X0JSX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJ1RhcmVmYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYXJrJ30gPSAnT2JzZXJ2YcOnw6NvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N0YXJ0IHRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IG11c3QgZW50ZXIgYSBzdGFydCBhbmQgYW4gZW5kIHRpbWUsIG9yIGEgcG9zaXRpdmUgcGVyaW9kIG9mIHVwIHRvIDI0IGhvdXJzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZSB0aW1lIHBlcmlvZCBtdXN0IGJlIGdpdmVuIGluIGhvdXJzIGFuZCBjYW4gYmUgYSBkZWNpbWFsIG51bWJlci4nfSA9CiAgICAgICAgJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ0RlbGV0ZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRG8geW91IHJlYWxseSB3YW50IHRvIGRlbGV0ZSB0aGUgVGltZSBBY2NvdW50aW5nIG9mIHRoaXMgZGF5Pyd9ID0KICAgICAgICAnVm9jw6ogcmVhbG1lbnRlIGRlc2VqYSByZW1vdmVyIG8gYXBvbnRhbWVudG8gZGUgdGVtcG8gZGVzdGUgZGlhID8nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnRWRpdGFyIHJlZ2lzdHJvIGRlIHRlbXBvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnSXIgcGFyYSBjb25maWd1cmHDp8O1ZXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF0ZSBOYXZpZ2F0aW9uJ30gPSAnTmF2ZWdhw6fDo28gZGUgZGF0YXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF5cyB3aXRob3V0IGVudHJpZXMnfSA9ICdEaWFzIHNlbSBhcG9udGFtZW50b3MnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2VsZWN0IGFsbCBkYXlzJ30gPSAnU2VsZWNpb25hciB0b2RvcyBvcyBkaWFzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgZW50cnknfSA9ICdFbnRyYWRhIGVtIG1hc3NhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgdGhlIHJlYXNvbiBmb3IgeW91ciBhYnNlbmNlIGZvciB0aGUgc2VsZWN0ZWQgZGF5cyd9ID0KICAgICAgICAnUG9yIGZhdm9yLCBlc2NvbGhhIG8gbW90aXZvIGRlIHN1YSBhdXPDqm5jaWEgcGFyYSBvcyBkaWFzIHNlbGVjaW9uYWRvcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJ0VtIGbDqXJpYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gc2ljayBsZWF2ZSd9ID0gJ0VtIGxpY2Vuw6dhIG3DqWRpY2EnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gb3ZlcnRpbWUgbGVhdmUnfSA9ICdFbSBsaWNlbsOnYSBkZSBob3JhcyBleHRyYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVxdWlyZWQgZmllbGRzIGFyZSBtYXJrZWQgd2l0aCBhICIqIi4nfSA9ICdDYW1wb3Mgb2JyaWdhdMOzcmlvcyBlc3TDo28gbWFyY2Fkb3MgY29tICIqIic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgaGF2ZSB0byBmaWxsIGluIHN0YXJ0IGFuZCBlbmQgdGltZSBvciBhIHRpbWUgcGVyaW9kLid9ID0gJ1ZvY8OqIHTDqm0gcXVlIHByZWVuY2hlciBpbsOtY2lvIGUgZmltLCBvdSB1bSBwZXLDrW9kbyBkZSB0ZW1wby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCd9ID0gJ1Byb2pldG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJ1BvciBmYXZvciwgYWRpY2lvbmUgdW0gY29tZW50w6FyaW8gY29tIG1haXMgZGUgOCBjYXJhY3RlcmVzISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnRGF0YXMgbmVnYXRpdmFzIG7Do28gc8OjbyBsaWJlcmFkYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBTdGFydCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJ0hvcmFzIHJlcGV0aWRhcyBuw6NvIHPDo28gbGliZXJhZGFzLiBJbmljaWUgbyBhcG9udGFtZW50byBlbSBvdXRybyBpbnRlcnZhbG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgZm9ybWF0ISBQbGVhc2UgZW50ZXIgYSB0aW1lIHdpdGggdGhlIGZvcm1hdCBISDpNTS4nfSA9ICdGb3JtYXRvIGludsOhbGlkbyEgUG9yIGZhdm9yLCBlbnRyZSBjb20gdW0gdGVtcG8gbm8gZm9ybWF0byBISDpNTSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICdBcGVuYXMgMjQ6MDAgc8OjbyBwZXJtaXRpZGFzIGNvbW8gdGVtcG8gZmluYWwnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICdUZW1wbyBpbnbDoWxpZG8hIFVtIGRpYSB0ZW0gYXBlbmFzIDI0IGhvcmFzLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSBtdXN0IGJlIGFmdGVyIHN0YXJ0IHRpbWUuJ30gPSAnVGVtcG8gZmluYWwgZGV2ZSBzZXIgZGVwb2lzIGRvIHRlbXBvIGluaWNpYWwuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gRW5kIHRpbWUgbWF0Y2hlcyBhbm90aGVyIGludGVydmFsLid9ID0KICAgICAgICAnSG9yYXMgcmVwZXRpZGFzIG7Do28gc8OjbyBsaWJlcmFkYXMuIEluaWNpZSBvIGFwb250YW1lbnRvIGVtIG91dHJvIGludGVydmFsby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIEEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzLid9ID0gJ1BlcsOtb2RvIGludsOhbGlkbyEgVW0gZGlhIHRlbSBhcGVuYXMgMjQgaG9yYXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnVW0gcGVyw61vZG8gdsOhbGlkbyBkZXZlIHNlciBtYWlvciBxdWUgemVyby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIE5lZ2F0aXZlIHBlcmlvZHMgYXJlIG5vdCBhbGxvd2VkLid9ID0gJ1BlcsOtb2RvIGludsOhbGlkbyEgUGVyw61vZG9zIG5lZ2F0aXZvcyBuw6NvIHPDo28gbGliZXJhZG9zLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWJtaXQgY2hhbmdlcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgb25lIHJvdyd9ID0gJ0FkaWNpb25hciB1bWEgbGluaGEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICdWb2PDqiBwb2RlIHNlbGVjaW9uYXIgYXBlbmFzIHVtIGVsZW1lbnRvIG5vIGNoZWNrYm94ISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHNpY2sgbGVhdmU/J30gPSAnVGVtIGNlcnRlemEgZGUgcXVlIHZvY8OqIHRyYWJhbGhvdSBlbnF1YW50byBlc3RhdmEgZW0gbGljZW7Dp2EgbcOpZGljYT8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiB2YWNhdGlvbj8nfSA9ICdUZW0gY2VydGV6YSBkZSBxdWUgdm9jw6ogdHJhYmFsaG91IGVucXVhbnRvIGVzdGF2YSBkZSBmw6lyaWFzPyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnVm9jw6ogdGVtIGNlcnRlemEgcXVlIHRyYWJhbGhvdSBlbnF1YW50byBlc3RhdmEgZGUgbGljZW7Dp2EgZGUgaG9yYXMgZXh0cmFzLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIG1vcmUgdGhhbiAxNiBob3Vycz8nfSA9ICdWb2PDqiB0ZW0gY2VydGV6YSBxdWUgdHJhYmFsaG91IG1haXMgcXVlIDE2IGhvcmFzPyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnUmVsYXTDs3JpbyBkZSBhcG9udGFtZW50byBkZSB0ZW1wbyBtZW5zYWwnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKEhvdXJzKSd9ID0gJ0hvcmFzIGV4dHJhcyAoaG9yYXMpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0aGlzIG1vbnRoKSd9ID0gJ0hvcmFzIGV4dHJhcyAoZXN0ZSBtw6pzKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAodG90YWwpJ30gPSAnSG9yYXMgZXh0cmFzICh0b3RhbCknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnUmVzdGFudGUgZGEgbGljZW7Dp2EgZGUgaG9yYXMgZXh0cmFzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJ0bDqXJpYXMgKERpYXMpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0aGlzIG1vbnRoKSd9ID0gJ0bDqXJpYXMgdGlyYWRhcyAoZXN0ZSBtw6pzKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodG90YWwpJ30gPSAnRsOpcmlhcyB0aXJhZGFzICh0b3RhbCknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIHZhY2F0aW9uJ30gPSAnRsOpcmlhcyByZXN0YW50ZXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICdMaWNlbsOnYSBNw6lkaWNhIChEaWFzKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlIHRha2VuICh0aGlzIG1vbnRoKSd9ID0gJ0xpY2Vuw6dhIG3DqWRpY2FzIHRpcmFkYXMgICggZXN0ZSBtw6pzICknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnTGljZW7Dp2EgbcOpZGljYXMgdGlyYWRhcyAgKCB0b3RhbCApJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnTcOqcyBhbnRlcmlvcic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IG1vbnRoJ30gPSAnUHLDs3hpbW8gbcOqcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrZGF5J30gPSAnRGlhIGRhIHNlbWFuYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnSG9yw6FyaW8gZGUgdHJhYmFsaG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG90YWwgd29ya2VkIGhvdXJzJ30gPSAnVG90YWwgZGUgaG9yYXMgdHJhYmFsaGFkYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlclwncyBwcm9qZWN0IG92ZXJ2aWV3J30gPSAnVmlzw6NvIGRlIHByb2pldG8gZGUgdXN1w6FyaW9zJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChtb250aGx5KSd9ID0gJ0hvcmFzICggbWVuc2FsICknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKExpZmV0aW1lKSd9ID0gJ0hvcmFzICggRHVyYcOnw6NvICknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICdUb3RhbCBnZXJhbCc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSByZXBvcnRpbmcnfSA9ICdSZWxhdMOzcmlvIGRlIHRlbXBvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICdOYXZlZ2HDp8OjbyBNZW5zYWwnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJ0lyIHBhcmEgZGF0YSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICdSZWxhdMOzcmlvcyBkZSB1c3XDoXJpb3MnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJ1RvdGFsIG1lbnNhbCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJ0R1cmHDp8OjbyB0b3RhbCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJ0xpY2Vuw6dhIGRlIGhvcmFzIGV4dHJhcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJ0bDqXJpYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSd9ID0gJ0xpY2Vuw6dhIG3DqWRpY2EnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gcmVtYWluaW5nJ30gPSAnRsOpcmlhcyByZXN0YW50ZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICdSZWxhdMOzcmlvcyBkZSBwcm9qZXRvJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nUHJvamVjdAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCByZXBvcnQnfSA9ICdSZWxhdMOzcmlvIGRlIHByb2pldG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gcmVwb3J0aW5nIG92ZXJ2aWV3J30gPSAnSXIgcGFyYSB2aXPDo28gZ2VyYWwgZGUgcmVsYXTDs3Jpb3MnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICdBdHVhbG1lbnRlIHNvbWVudGUgdXN1w6FyaW9zIGF0aXZvcyBuZXN0ZSBwcm9qZXRvIHPDo28gZXhpYmlkb3MuIFBhcmEgYWx0ZXJhciBlc3NlIGNvbXBvcnRhbWVudG8sIHBvciBmYXZvciBhdHVhbGl6ZSBhIGNvbmZpZ3VyYcOnw6NvOic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDdXJyZW50bHkgYWxsIHRpbWUgYWNjb3VudGluZyB1c2VycyBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICdBdHVhbG1lbnRlIHRvZG9zIG9zIGFwb250YW1lbnRvIGRlIHRlbXBvcyBkb3MgdXN1w6FyaW9zIHPDo28gZXhpYmlkb3MuIFBhcmEgYWx0ZXJhciBlc3NlIGNvbXBvcnRhbWVudG8sIHBvciBmYXZvciBhdHVhbGl6ZSBhIGNvbmZpZ3VyYcOnw6NvOic7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byB0aWNrZXQnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdTZXR0aW5nCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgQWNjb3VudGluZyBQcm9qZWN0IFNldHRpbmdzJ30gPSAnRWRpdGFyIGNvbmZpZ3VyYcOnw7VlcyBkbyBQcm9qZXRvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBwcm9qZWN0J30gPSAnQWRpY2lvbmFyIHByb2pldG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICdJciBwYXJhIGNvbmZpZ3VyYcOnw7VlcyBnZXJhaXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICdBZGljaW9uYXIgcHJvamV0byc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFByb2plY3QgU2V0dGluZ3MnfSA9ICdFZGl0YXIgQ29uZmlndXJhw6fDtWVzIGRvIFByb2pldG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlcmUgaXMgYWxyZWFkeSBhIHByb2plY3Qgd2l0aCB0aGlzIG5hbWUuIFBsZWFzZSwgY2hvb3NlIGEgZGlmZmVyZW50IG9uZS4nfSA9CiAgICAgICAgJ0rDoSBleGlzdGUgdW0gcHJvamV0byBjb20gZXN0ZSBub21lLiBQb3IgZmF2b3IsIGVzY29saGEgdW0gZGlmZXJlbnRlLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgQWNjb3VudGluZyBTZXR0aW5ncyd9ID0gJ0VkaXRhciBDb25maWd1cmHDp8O1ZXMgZGEgQ29udGFiaWxpZGFkZSBkZSBUZW1wby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICdBZGljaW9uYXIgdGFyZWZhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBhIHVzZXIgdG8gdGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGaWx0ZXIgZm9yIHByb2plY3RzLCB0YXNrcyBvciB1c2Vycyd9ID0gJ0ZpbHRyYXIgcG9yIHByb2pldG9zLCB0YXJlZmFzIG91IHVzdcOhcmlvcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHBlcmlvZHMgY2FuIG5vdCBiZSBkZWxldGVkLid9ID0gJ1BlcsOtb2RvcyBkZSB0ZW1wbyBuw6NvIHBvZGVtIHNlciBleGNsdcOtZG9zLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IExpc3QnfSA9ICdMaXN0YSBkZSBwcm9qZXRvcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICdMaXN0YSBkZSB0YXJlZmFzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBUYXNrJ30gPSAnQWRpY2lvbmFyIHRhcmVmYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRhc2sgU2V0dGluZ3MnfSA9ICdFZGl0YXIgY29uZmlndXJhw6fDtWVzIGRhIFRhcmVmYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgdGFzayB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAnSsOhIGV4aXN0ZSB1bWEgdGFyZWZhIGNvbSBlc3NlIG5vbWUuIFBvciBmYXZvciwgZXNjb2xoYSB1bSBub21lIGRpZmVyZW50ZS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnTGlzdGEgZGUgdXN1w6FyaW9zJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICdDb25maWd1cmHDp8O1ZXMgZGUgdXN1w6FyaW8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICdPIHVzdcOhcmlvIHRlbSBwZXJtaXNzw6NvIHBhcmEgdmVyIGhvcmFzIGV4dHJhcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaG93IE92ZXJ0aW1lJ30gPSAnTW9zdHJhciBob3JhcyBleHRyYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIGNyZWF0ZSBwcm9qZWN0cyd9ID0gJ08gdXN1w6FyaW8gdGVtIHBlcm1pc3PDo28gcGFyYSBjcmlhciBwcm9qZXRvcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyBwcm9qZWN0IGNyZWF0aW9uJ30gPSAnTGliZXJhciBjcmlhw6fDo28gZGUgcHJvamV0b3MnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnVXN1w6FyaW8gdGVtIHBlcm1pc3PDo28gZGUgcHVsYXIgYSBjb250YWJpbGlkYWRlIGRlIHRlbXBvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJ1Blcm1pdGlyIHB1bGFyIGEgY29udGFiaWxpZGFkZSBkZSB0ZW1wbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJ1NlIGVzdGEgb3DDp8OjbyBmb3Igc2VsZWNpb25hZGEsIGEgY29udGFiaWxpZGFkZSBkZSB0ZW1wbyBzZXLDoSBlZmV0aXZhbWVudGUgb3BjaW9uYWwgcGFyYSBvIHVzdcOhcmlvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICdOw6NvIGhhdmVyw6NvIGFsZXJ0YXMgc29icmUgcmVnaXN0cm9zIGZhbHRhbnRlcyBuZW0gcmVnaXN0cm9zIGZvcsOnYWRvcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJ0ludGVydmFsb3MgZGUgdGVtcG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEJlZ2luJ30gPSAnUGVyw61vZG8gSW5pY2lhbCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgRW5kJ30gPSAnUGVyw61vZG8gRmluYWwnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF5cyBvZiBWYWNhdGlvbid9ID0gJ0RpYXMgZGUgRsOpcmlhcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyBwZXIgV2Vlayd9ID0gJ0hvcmFzIHBvciBTZW1hbmEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXV0aG9yaXplZCBPdmVydGltZSd9ID0gJ0hvcmFzIGV4dHJhcyBhdXRvcml6YWRhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N0YXJ0IERhdGUnfSA9ICdEYXRhIGluaWNpYWwgJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBpbnNlcnQgYSB2YWxpZCBkYXRlLid9ID0gJ1BvciBmYXZvciwgaW5zaXJhIHVtYSBkYXRhIHbDoWxpZGEuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VuZCBEYXRlJ30gPSAnRGF0YSBmaW5hbCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgZW5kIG11c3QgYmUgYWZ0ZXIgcGVyaW9kIGJlZ2luLid9ID0gJ1BlcsOtb2RvIGZpbmFsIGRldmUgc2VyIG1haW9yIHF1ZSAgcGVyw61vZG8gaW5pY2lhbC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJ0RpYXMgZGUgZsOpcmlhcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICdIb3JhcyBzZW1hbmFpcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSd9ID0gJ0hvcmFzIGV4dHJhcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyB0aW1lIHBlcmlvZHMgZm91bmQuJ30gPSAnUGVyw61vZG8gZGUgdGVtcG8gbsOjbyBlbmNvbnRyYWRvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICdBZGljaW9uYXIgcGVyw61vZG8gZGUgdGVtcG8nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnVmVyIHJlZ2lzdHJvIGRlIHRlbXBvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnVmlzw6NvIGRlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJ0RpYSBhbnRlcmlvcic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJ1Byw7N4aW1vIGRpYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICdOw6NvIGZvcmFtIGVuY29udHJhZG9zIGRhZG9zIHBhcmEgZXN0ZSBkaWEuJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nRWRpdC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGluc2VydCBXb3JraW5nIFVuaXRzISd9ID0gJ07Do28gZm9pIHBvc3PDrXZlbCBpbnNlcmlyIFVuaWRhZGVzIGRlIFRyYWJhbGhvISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMYXN0IFByb2plY3RzJ30gPSAnw5psdGltb3MgcHJvamV0b3MnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnQ29uZmlndXJhw6fDtWVzIG7Do28gc2FsdmFzLCBwb2lzIHVtIGRpYSB0ZW0gYXBlbmFzIDI0IGhvcmFzISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgZGVsZXRlIFdvcmtpbmcgVW5pdHMhJ30gPSAnTsOjbyBmb2kgcG9zc8OtdmVsIGRlbGV0YXIgVW5pZGFkZXMgZGUgVHJhYmFsaG8hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgRGF0ZSBpcyBvdXQgb2YgbGltaXQsIGJ1dCB5b3UgaGF2ZW5cJ3QgaW5zZXJ0IHRoaXMgZGF5IHlldCwgc28geW91IGdldCBvbmUoISkgY2hhbmNlIHRvIGluc2VydCd9ID0KICAgICAgICAnRXN0YSBEYXRhIGVzdMOhIGZvcmEgZG8gbGltaXRlLCBtYXMgdm9jw6ogbsOjbyBpbnNlcml1IGVzdGUgZGlhIGFpbmRhLCBlbnTDo28gdm9jw6ogcG9zc3VpIFVNQSghKSBjaGFuY2UgZGUgaW5zZXJpcic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIFdvcmtpbmcgRGF5cyd9ID0gJ0RpYXMgZGUgdHJhYmFsaG9zIGluY29tcGxldG9zJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Y2Nlc3NmdWwgaW5zZXJ0ISd9ID0gJ0luc2VyaWRvIGNvbSBzdWNlc3NvISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFcnJvciB3aGlsZSBpbnNlcnRpbmcgbXVsdGlwbGUgZGF0ZXMhJ30gPSAnRXJybyBhbyBpbnNlcmlyIG3Dumx0aXBsYXMgZGF0YXMhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Y2Nlc3NmdWxseSBpbnNlcnRlZCBlbnRyaWVzIGZvciBzZXZlcmFsIGRhdGVzISd9ID0gJ0VudHJhZGEgZGUgdsOhcmlhcyBkYXRhcyBpbnNlcmlkYSBjb20gc3VjZXNzbyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW50ZXJlZCBkYXRlIHdhcyBpbnZhbGlkISBEYXRlIHdhcyBjaGFuZ2VkIHRvIHRvZGF5Lid9ID0gJ0RhdGEgaW5zZXJpZGEgw6kgaW52w6FsaWRhISBEYXRhIGZvaSBhbHRlcmFkYSBwYXJhIGhvamUuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIHRpbWUgcGVyaW9kIGNvbmZpZ3VyZWQsIG9yIHRoZSBzcGVjaWZpZWQgZGF0ZSBpcyBvdXRzaWRlIG9mIHRoZSBkZWZpbmVkIHRpbWUgcGVyaW9kcy4nfSA9CiAgICAgICAgJ05lbmh1bSBwZXLDrW9kbyBkZSB0ZW1wbyBjb25maWd1cmFkbyBvdSBhIGRhdGEgZXNwZWNpZmljYWRhIGVzdMOhIGZvcmEgZG9zIHBlcsOtb2RvcyBkZSB0ZW1wbyBkZWZpbmlkb3MuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICdFbnRyZSBlbSBjb250YXRvIGNvbSBvIGFkbWluaXN0cmFkb3IgY29udMOhYmlsIGRvIHRlbXBvIHBhcmEgYXR1YWxpemFyIHNldXMgcGVyw61vZG9zIGRlIHRlbXBvISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMYXN0IFNlbGVjdGVkIFByb2plY3RzJ30gPSAnw5psdGltb3MgcHJvamV0b3Mgc2VsZWNpb25hZG9zJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbCBQcm9qZWN0cyd9ID0gJ1RvZG9zIG9zIHByb2pldG9zJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBOZWVkIFByb2plY3RJRCd9ID0gJ1Byb2pldG8gZGUgUmVsYXTDs3JpbzogTmVjZXNzw6FyaW8gUHJvamVjdElEJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnUHJvamV0byBkZSBSZWxhdMOzcmlvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJ1JlbGF0w7NyaW8nOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgVGlja2V0SUQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTm8gUHJvamVjdCBmb3IgVGlja2V0IGZvdW5kLid9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byB1cGRhdGUgdXNlciBzZXR0aW5ncyEnfSA9ICdJbXBvc3PDrXZlbCBhdHVhbGl6YXIgY29uZmlndXJhw6fDtWVzIGRlIHVzdcOhcmlvISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJ1Byb2pldG8gYWRpY2lvbmFkbyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCB1cGRhdGVkISd9ID0gJ1Byb2pldG8gYXR1YWxpemFkbyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayBhZGRlZCEnfSA9ICdBdGl2aWRhZGUgYWRpY2lvbmFkYSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayB1cGRhdGVkISd9ID0gJ0F0aXZpZGFkZSBhdHVhbGl6YWRhISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgVXNlcklEIGlzIG5vdCB2YWxpZCEnfSA9ICdPIFVzZXJJRCBuw6NvIMOpIHbDoWxpZG8hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJ07Do28gZm9pIHBvc3PDrXZlbCBpbnNlcmlyIGRhZG9zIGRlIHVzdcOhcmlvISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gYWRkIHRpbWUgcGVyaW9kISd9ID0gJ0ltcG9zc8OtdmVsIGFkaWNpb25hciBwZXLDrW9kbyBkZSB0ZW1wbyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2V0dGluZyd9ID0gJ0NvbmZpZ3VyYcOnw6NvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICdVc3XDoXJpbyBhdHVhbGl6YWRvISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGFkZGVkISd9ID0gJ1VzdcOhcmlvIGFkaWNpb25hZG8hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05ldyBVc2VyJ30gPSAnTm92byB1c3XDoXJpbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgU3RhdHVzJ30gPSAnRXN0YWRvIGRvIHBlcsOtb2RvJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nVmlldy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldzogTmVlZCAlcyEnfSA9ICdWaXPDo286IE5lY2Vzc8OhcmlvICVzISc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL091dHB1dC9IVE1ML05vdGlmaWNhdGlvbi9UaW1lQWNjb3VudGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGluc2VydCB5b3VyIHdvcmtpbmcgaG91cnMhJ30gPSAnUG9yIGZhdm9yIGluc2lyYSBzdWFzIGhvcmFzIGRlIHRyYWJhbGhvISc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL091dHB1dC9IVE1ML1Rvb2xCYXIvSW5jb21wbGV0ZVdvcmtpbmdEYXlzLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyd9ID0gJ0RpYXMgZGUgdHJhYmFsaG9zIGluY29tcGxldG9zJzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50LkVkaXRUaW1lUmVjb3JkcwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhdCBsZWFzdCBvbmUgZGF5ISd9ID0gJ1BvciBmYXZvciwgZXNjb2xoYSBwZWxvIG1lbm9zIHVtIGRpYSEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBFbnRyeSd9ID0gJ0VudHJhZGEgZW0gbWFzc2EnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICdQb3IgZmF2b3IgZXNjb2xoYSB1bSBtb3Rpdm8gcGFyYSBhIGF1c8OqbmNpYSc7CgogICAgIyBKUyBGaWxlOiBUaW1lQWNjb3VudGluZy5BZ2VudAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVsZXRlIFRpbWUgQWNjb3VudGluZyBFbnRyeSd9ID0gJ0RlbGV0YXIgZW50cmFkYSBuYSBDb250YWJpbGlkYWRlIGRlIFRlbXBvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDb25maXJtIGluc2VydCd9ID0gJ0NvbmZpcm1hciBpbnNlcsOnw6NvJzsKCiAgICAjIFN5c0NvbmZpZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWN0aXZhdGUgdGhlIHN5bmNocm9uaXNhdGlvbiBvZiBUaWNrZXQtVGltZVVuaXRzIGludG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZ2VudCBpbnRlcmZhY2Ugbm90aWZpY2F0aW9uIG1vZHVsZSB0byBzZWUgdGhlIG51bWJlciBvZiBpbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyBmb3IgdGhlIHVzZXIuJ30gPQogICAgICAgICdNw7NkdWxvIGRlIG5vdGlmaWNhw6fDo28gZG8gQWdlbnRlIHBhcmEgdmVyIG8gbnVtZXJvIGRlIGRpYXMgaW5jb21wbGV0b3MgZG8gdXN1w6FyaW8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Fsc28gc3luY2hyb25pc2UgY3VzdG9tZXJzIGFzIGEgbmV3IHByb2plY3QgaWYgdGhleSBoYXZlIG5vdCB5ZXQgYmVlbiBjcmVhdGVkIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcyBzb29uIGFzIHRoZSBzeW5jaHJvbmlzYXRpb24gb2YgdGlja2V0IFRpbWVVbml0cyBpcyBhY3RpdmF0ZWQsIGl0IGlzIHBvc3NpYmxlIHRvIHNldCB0aGUgZW50cmllcyBSZWFkT25seS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDcmVhdGUgYSBuZXcgdGltZSBhY2NvdW50aW5nIGVudHJ5IHJlbGF0ZWQgdG8gdGhlIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IG5hbWUgZm9yIG5ldyBhY3Rpb25zLid9ID0gJ08gbm9tZSBwYWRyw6NvIHBhcmEgbm92YXMgYcOnw7Vlcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnTyBub21lIHBhZHLDo28gcGFyYSBub3ZvcyBwcm9qZXRvcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkYXRlIGVuZC4nfSA9ICdDb25maWd1cmHDp8OjbyBwYWRyw6NvIHBhcmEgZGF0YSBmaW5hbCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRhdGUgc3RhcnQuJ30gPSAnQ29uZmlndXJhw6fDo28gcGFkcsOjbyBwYXJhIGRhdGEgaW5pY2lhbC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICdDb25maWd1cmHDp8OjbyBwYWRyw6NvIHBhcmEgZGVzY3Jpw6fDo28uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgbGVhdmUgZGF5cy4nfSA9ICdDb25maWd1cmHDp8OjbyBwYWRyw6NvIHBhcmEgZGlhcyBkZSBmw6lyaWFzLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJ0NvbmZpZ3VyYcOnw6NvIHBhZHLDo28gcGFyYSBob3JhcyBleHRyYXMsJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgdGhlIHN0YW5kYXJkIHdlZWtseSBob3Vycy4nfSA9ICdDb25maWd1cmHDp8OjbyBwYWRyw6NvIHBhcmEgaG9yYXMgc2VtYW5haXMgcGFkcsOjbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHN0YXR1cyBmb3IgbmV3IGFjdGlvbnMuJ30gPSAnRXN0YWRvIHBhZHLDo28gcGFyYSBub3ZhcyBhw6fDtWVzLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHN0YXR1cyBmb3IgbmV3IHByb2plY3RzLid9ID0gJ0VzdGFkbyBwYWRyw6NvIHBhcmEgbm92b3MgcHJvamV0b3MnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICdFc3RhZG8gcGFyYSBwYXJhIG5vdm9zIHVzdcOhcmlvcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZpbmVzIHRoZSBwcm9qZWN0cyBmb3Igd2hpY2ggYSByZW1hcmsgaXMgcmVxdWlyZWQuIElmIHRoZSBSZWdFeHAgbWF0Y2hlcyBvbiB0aGUgcHJvamVjdCwgeW91IGhhdmUgdG8gaW5zZXJ0IGEgcmVtYXJrIHRvby4gVGhlIFJlZ0V4cCB1c2UgdGhlIHNteCBwYXJhbWV0ZXIuJ30gPQogICAgICAgICdEZWZpbmUgb3MgcHJvamV0b3MgcGFyYSBvcyBxdWFpcyDDqSBuZWNlc3PDoXJpYSB1bWEgb2JzZXJ2YcOnw6NvLiBTZSBvIFJlZ0V4cCDDqSBlbmNvbnRyYWRvIG5vIHByb2pldG8sIHZvY8OqIHRlbSBxdWUgaW5zZXJpciB1bWEgb2JzZXJ2YcOnw6NvLiBPIFJlZ0V4cCB1c2EgbyBwYXLDom1ldHJvIHNteC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGV0ZXJtaW5lcyBpZiB0aGUgc3RhdGlzdGljcyBtb2R1bGUgbWF5IGdlbmVyYXRlIHRpbWUgYWNjb3VudGluZyBpbmZvcm1hdGlvbi4nfSA9CiAgICAgICAgJ0RldGVybWluYSBzZSBvIG3Ds2R1bG8gZGUgZXN0YXTDrXN0aWNhcyBwb2RlIGdlcmFyIGluZm9ybWHDp8O1ZXMgZG8gdGltZSBhY2NvdW50aW5nLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IHRpbWUgYWNjb3VudGluZyBzZXR0aW5ncy4nfSA9ICdFZGl0YXIgY29uZmlndXJhw6fDtWVzIGRhIGNvbnRhYmlsaWRhZGUgZGUgdGVtcG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnRWRpdGFyIHJlZ2lzdHJvIGRlIHRlbXBvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFdmVyeSB0aW1lIGEgYWdlbnQgYWRkIFRpbWVVbml0cyB0byBhIHRpY2tldCwgd2Ugc3luYyB0aGUgaW5mb3JtYXRpb24gdG8gdGhlIHRpbWVhY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGb3IgaG93IG1hbnkgZGF5cyBhZ28geW91IGNhbiBpbnNlcnQgd29ya2luZyB1bml0cy4nfSA9ICdQYXJhIHF1YW50b3MgZGlhcyBhdHLDoXMgdm9jw6ogcG9kZSBpbnNlcmlyIHVuaWRhZGVzIGRlIHRyYWJhbGhvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICdTZSBhdGl2YWRvLCBzb21lbnRlIG9zIHVzdcOhcmlvcyBxdWUgYWRpY2lvbm91IHRlbXBvIGRlIHRyYWJhbGhvIGFvIG8gcHJvamV0byBzZWxlY2lvbmFkbyBzZXLDo28gZXhpYmlkb3MuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBkcm9wZG93biBlbGVtZW50cyBpbiB0aGUgZWRpdCBzY3JlZW4gYXJlIGNoYW5nZWQgdG8gbW9kZXJuaXplZCBhdXRvY29tcGxldGlvbiBmaWVsZHMuJ30gPQogICAgICAgICdTZSBhdGl2YWRvLCBvcyBlbGVtZW50b3Mgc3VzcGVuc29zIG5hIHRlbGEgZGUgZWRpw6fDo28gc8OjbyBtb2RpZmljYWRhcyBwYXJhIGNhbXBvcyBkZSBhdXRvY29tcGxldGFyIG1vZGVybml6YWRvcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGNhbiBiZSB1c2VkIGluc3RlYWQgdHdvIGxpc3Qgb2YgcHJvamVjdHMgKGxhc3QgYW5kIGFsbCBvbmVzKS4gSXQgY291bGQgYmUgdXNlZCBvbmx5IGlmIFRpbWVBY2NvdW50aW5nOjpFbmFibGVBdXRvQ29tcGxldGlvbiBpcyBlbmFibGVkLid9ID0KICAgICAgICAnU2UgaGFiaWxpdGFkbywgbyBmaWx0cm8gcGFyYSBvcyBwcm9qZXRvcyBhbnRlcmlvcmVzIHBvZGUgc2VyIHVzYWRvIGVtIHZleiBkZSBkdWFzIGxpc3RhcyBkZSBwcm9qZXRvcyAow7psdGltbyBlIHRvZG9zKS4gRWxlIHBvZGUgc2VyIHVzYWRvIGFwZW5hcyBzZSBUaW1lQWNjb3VudGluZzo6RW5hYmxlQXV0b0NvbXBsZXRpb24gZXN0w6EgaGFiaWxpdGFkby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJ1NlIGhhYmlsaXRhZG8sIG8gZmlsdHJvIHBhcmEgcHJvamV0b3MgYW50ZXJpb3JlcyDDqSBhdGl2YWRvIHBvciBwYWRyw6NvIHNlIGjDoSBwcm9qZXRvcyBhbnRlcmlvcmVzLiBFbGUgcG9kZSBzZXIgdXNhZG8gYXBlbmFzIHNlIEVuYWJsZUF1dG9Db21wbGV0aW9uIGUgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBlc3TDo28gaGFiaWxpdGFkb3MuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSB1c2VyIGlzIGFsbG93ZWQgdG8gZW50ZXIgIm9uIHZhY2F0aW9uIGxlYXZlIiwgIm9uIHNpY2sgbGVhdmUiIGFuZCAib24gb3ZlcnRpbWUgbGVhdmUiIHRvIG11bHRpcGxlIGRhdGVzIGF0IG9uY2UuJ30gPQogICAgICAgICdTZSBhdGl2YWRvLCBvIHVzdcOhcmlvIHRlbSBwZXJtaXNzw6NvIHBhcmEgZW50cmFyICJlbSBsaWNlbsOnYSBkZSBmw6lyaWFzIiwgImVtIGxpY2Vuw6dhIG3DqWRpY2EiIGUgImVtIGxpY2Vuw6dhIGRlIGhvcmFzIGV4dHJhcyIgZGUgdW1hIHPDsyB2ZXogcGFyYSB2w6FyaWFzIGRhdGFzLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXhpbXVtIG51bWJlciBvZiB3b3JraW5nIGRheXMgYWZ0ZXIgd2hpY2ggdGhlIHdvcmtpbmcgdW5pdHMgaGF2ZSB0byBiZSBpbnNlcnRlZC4nfSA9CiAgICAgICAgJ08gbsO6bWVybyBtw6F4aW1vIGRlIGRpYXMgZGUgdHJhYmFsaG8gYXDDs3MgbyBxdWFsIGFzICJ1bmlkYWRlcyBkZSB0cmFiYWxobyIgZGV2ZW0gc2VyIGluc2VyaWRvcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXhpbXVtIG51bWJlciBvZiB3b3JraW5nIGRheXMgd2l0aG91dCB3b3JraW5nIHVuaXRzIGVudHJ5IGFmdGVyIHdoaWNoIGEgd2FybmluZyB3aWxsIGJlIHNob3duLid9ID0KICAgICAgICAnTyBuw7ptZXJvIG3DoXhpbW8gZGUgZGlhcyBkZSB0cmFiYWxobyBzZW0gInVuaWRhZGVzIGRlIHRyYWJhbGhvIiAgYXDDs3MgbyBxdWFsIHVtIGF2aXNvIHNlcsOhIG1vc3RyYWRvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydmlldy4nfSA9ICdWaXPDo28gR2VyYWwuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnUmVsYXTDs3JpbyBkZSB0ZW1wb3MgZGUgcHJvamV0b3MuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICdBcyBleHByZXNzw7VlcyByZWd1bGFyZXMgcGFyYSByZXN0cmluZ2lyIGxpc3RhIGRlIGHDp8O1ZXMgZGUgYWNvcmRvIGNvbSBvIHByb2pldG8gc2VsZWNpb25hZG8uIENoYXZlIGNvbnTDqW0gZXhwcmVzc8OjbyByZWd1bGFyIHBhcmEgbyBwcm9qZXRvKHMpLCBDb250ZcO6ZG8gY29udMOpbSBleHByZXNzw7VlcyByZWd1bGFyZXMgcGFyYSBhIGHDp8OjbyhzKS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnQXMgZXhwcmVzc8O1ZXMgcmVndWxhcmVzIHBhcmEgcmVzdHJpbmdpciBhIGxpc3RhIGRlIHByb2pldG8gZGUgYWNvcmRvIGNvbSBncnVwb3MgZGUgdXN1w6FyaW9zLiBDaGF2ZSBjb250w6ltIGV4cHJlc3PDo28gcmVndWxhciBwYXJhIG8gcHJvamV0byAocyksIGNvbnRlw7pkbyBjb250w6ltIGxpc3RhICBzZXBhcmFkYSBwb3IgdsOtcmd1bGFzIGRlIGdydXBvcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBhY2NvdW50ZWQgdGltZXMgZm9yIHRoaXMgdGlja2V0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NwZWNpZmllcyBpZiB3b3JraW5nIGhvdXJzIGNhbiBiZSBpbnNlcnRlZCB3aXRob3V0IHN0YXJ0IGFuZCBlbmQgdGltZXMuJ30gPQogICAgICAgICdFc3BlY2lmaXF1ZSBzZSBvIGhvcsOhcmlvIGRlIHRyYWJhbGhvIHBvZGUgc2VyIGluc2VyaWRvIHNlbSBob3LDoXJpb3MgZGUgaW7DrWNpbyBlIHTDqXJtaW5vLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTeW5jaHJvbmlzZSBjdXN0b21lcnMgYXMgYSBuZXcgcHJvamVjdCBpZiB0aGV5IGV4aXN0cyBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBtb2R1bGUgZm9yY2VzIGluc2VydHMgaW4gVGltZUFjY291bnRpbmcuJ30gPSAnRXNzZSBtw7NkdWxvIGZvcsOnYSBwcmVlbmNoZXIgbyBUaW1lQWNjb3VudGluZy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICdFc3RlIG3Ds2R1bG8gZGUgbm90aWZpY2HDp8OjbyBkw6EgdW0gYXZpc28gc2UgaG91dmVyIG11aXRvcyBkaWFzIGRlIHRyYWJhbGhvIG7Do28gcmVnaXN0cmFkb3MuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCB0aW1lIHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIEFjY291bnRpbmcnfSA9ICdDb250YWJpbGlkYWRlIFRlbXBvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgUmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBlZGl0Lid9ID0gJ0VkaXRhciBjb250YWJpbGlkYWRlIGRlIHRlbXBvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBvdmVydmlldy4nfSA9ICdWaXPDo28gZ2VyYWwgZGUgY29udGFiaWxpZGFkZSBkZSB0ZW1wbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJ1JlbGF0w7NyaW8gZGUgY29udGFiaWxpZGFkZSBkZSB0ZW1wbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnQ29uZmlndXJhw6fDtWVzIGRlIGNvbnRhYmlsaWRhZGUgZGUgdGVtcG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHRpY2tldCByZXBvcnQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB2aWV3Lid9ID0gJ1ZlciBjb250YWJpbGlkYWRlIGRlIHRlbXBvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZy4nfSA9ICdDb250YWJpbGlkYWRlIFRlbXBvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvIHVzZSBpZiBzb21lIGFjdGlvbnMgcmVkdWNlZCB0aGUgd29ya2luZyBob3VycyAoZm9yIGV4YW1wbGUsIGlmIG9ubHkgaGFsZiBvZiB0aGUgdHJhdmVsaW5nIHRpbWUgaXMgcGFpZCBLZXkgPT4gdHJhdmVsaW5nOyBDb250ZW50ID0+IDUwKS4nfSA9CiAgICAgICAgJ1VzYXIgcGFyYSAgYWxndW1hcyBhw6fDtWVzIGRlIHJlZHV6aXIgYXMgaG9yYXMgZGUgdHJhYmFsaG8gKHBvciBleGVtcGxvLCBzZSBhcGVuYXMgbWV0YWRlIGRvIHRlbXBvIGRlIHZpYWdlbSDDqSBwYWdvIEtleSA9PiB2aWFqYXI7IENvbnRlbnQgPT4gNTApJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZSBTZXJ2aWNlIGFzIEFjdGlvbi4gUGxlYXNlIGFkZCBhcyBrZXkgdGhlIHRpbWVhY291bnRpbmcgYWN0aW9uIGFuZCB0aGUgc2VydmljZSBhcyB2YWx1ZS4gUmVnRXggYXJlIGFsbG93ZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2UgbmVlZCB0byBzZXQgYSBkZWZhdWx0IGFjdGlvbiBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2UgbmVlZCB0byBzZXQgYSBkZWZhdWx0IHByb2plY3QgaWQgd2hlbiB3ZSBzeW5jIFRpbWVVbml0cyB0byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIHNhdmUgdGhlIEFydGljbGUgVGltZVVuaXQgdG8gYSBEeW5hbWljRmllbGQgZnJvbSB0eXBlICJBcnRpY2xlIi4gUGxlYXNlIGFkZCBoZXJlIHRoZSBuYW1lIG9mIHRoZSBmaWVsZCBpZiB0aGUgaW5pdGluYWwgbmFtZSBpcyBjaGFuZ2VkLid9ID0KICAgICAgICAnJzsKCgogICAgcHVzaCBAeyAkU2VsZi0+e0phdmFTY3JpcHRTdHJpbmdzfSAvLyBbXSB9LCAoCiAgICAnQ2FuY2VsJywKICAgICdDb25maXJtIGluc2VydCcsCiAgICAnRGVsZXRlIFRpbWUgQWNjb3VudGluZyBFbnRyeScsCiAgICAnTWFzcyBFbnRyeScsCiAgICAnTm8nLAogICAgJ1BsZWFzZSBjaG9vc2UgYSByZWFzb24gZm9yIGFic2VuY2UhJywKICAgICdQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJywKICAgICdTdWJtaXQnLAogICAgJ1llcycsCiAgICApOwoKfQoKMTsK</File>
        <File Location="Kernel/Language/pt_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OnB0X1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJ1RhcmVmYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYXJrJ30gPSAnT2JzZXJ2YcOnw6NvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N0YXJ0IHRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IG11c3QgZW50ZXIgYSBzdGFydCBhbmQgYW4gZW5kIHRpbWUsIG9yIGEgcG9zaXRpdmUgcGVyaW9kIG9mIHVwIHRvIDI0IGhvdXJzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZSB0aW1lIHBlcmlvZCBtdXN0IGJlIGdpdmVuIGluIGhvdXJzIGFuZCBjYW4gYmUgYSBkZWNpbWFsIG51bWJlci4nfSA9CiAgICAgICAgJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ0RlbGV0ZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRG8geW91IHJlYWxseSB3YW50IHRvIGRlbGV0ZSB0aGUgVGltZSBBY2NvdW50aW5nIG9mIHRoaXMgZGF5Pyd9ID0KICAgICAgICAnVm9jw6ogcmVhbG1lbnRlIGRlc2VqYSByZW1vdmVyIG8gYXBvbnRhbWVudG8gZGUgdGVtcG8gZGVzdGUgZGlhID8nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnRWRpdGFyIHJlZ2lzdHJvIGRlIHRlbXBvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnSXIgcGFyYSBjb25maWd1cmHDp8O1ZXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF0ZSBOYXZpZ2F0aW9uJ30gPSAnTmF2ZWdhw6fDo28gZGUgZGF0YXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF5cyB3aXRob3V0IGVudHJpZXMnfSA9ICdEaWFzIHNlbSBhcG9udGFtZW50b3MnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2VsZWN0IGFsbCBkYXlzJ30gPSAnU2VsZWNpb25hciB0b2RvcyBvcyBkaWFzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgZW50cnknfSA9ICdFbnRyYWRhIGVtIG1hc3NhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgdGhlIHJlYXNvbiBmb3IgeW91ciBhYnNlbmNlIGZvciB0aGUgc2VsZWN0ZWQgZGF5cyd9ID0KICAgICAgICAnUG9yIGZhdm9yLCBlc2NvbGhhIG8gbW90aXZvIGRlIHN1YSBhdXPDqm5jaWEgcGFyYSBvcyBkaWFzIHNlbGVjaW9uYWRvcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJ0VtIGbDqXJpYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gc2ljayBsZWF2ZSd9ID0gJ0VtIGxpY2Vuw6dhIG3DqWRpY2EnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gb3ZlcnRpbWUgbGVhdmUnfSA9ICdFbSBsaWNlbsOnYSBkZSBob3JhcyBleHRyYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVxdWlyZWQgZmllbGRzIGFyZSBtYXJrZWQgd2l0aCBhICIqIi4nfSA9ICdDYW1wb3Mgb2JyaWdhdMOzcmlvcyBlc3TDo28gbWFyY2Fkb3MgY29tICIqIic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgaGF2ZSB0byBmaWxsIGluIHN0YXJ0IGFuZCBlbmQgdGltZSBvciBhIHRpbWUgcGVyaW9kLid9ID0gJ1ZvY8OqIHTDqm0gcXVlIHByZWVuY2hlciBpbsOtY2lvIGUgZmltLCBvdSB1bSBwZXLDrW9kbyBkZSB0ZW1wby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCd9ID0gJ1Byb2pldG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJ1BvciBmYXZvciwgYWRpY2lvbmUgdW0gY29tZW50w6FyaW8gY29tIG1haXMgZGUgOCBjYXJhY3RlcmVzISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnRGF0YXMgbmVnYXRpdmFzIG7Do28gc8OjbyBsaWJlcmFkYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBTdGFydCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJ0hvcmFzIHJlcGV0aWRhcyBuw6NvIHPDo28gbGliZXJhZGFzLiBJbmljaWUgbyBhcG9udGFtZW50byBlbSBvdXRybyBpbnRlcnZhbG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgZm9ybWF0ISBQbGVhc2UgZW50ZXIgYSB0aW1lIHdpdGggdGhlIGZvcm1hdCBISDpNTS4nfSA9ICdGb3JtYXRvIGludsOhbGlkbyEgUG9yIGZhdm9yLCBlbnRyZSBjb20gdW0gdGVtcG8gbm8gZm9ybWF0byBISDpNTSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICdBcGVuYXMgMjQ6MDAgc8OjbyBwZXJtaXRpZGFzIGNvbW8gdGVtcG8gZmluYWwnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICdUZW1wbyBpbnbDoWxpZG8hIFVtIGRpYSB0ZW0gYXBlbmFzIDI0IGhvcmFzLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSBtdXN0IGJlIGFmdGVyIHN0YXJ0IHRpbWUuJ30gPSAnVGVtcG8gZmluYWwgZGV2ZSBzZXIgZGVwb2lzIGRvIHRlbXBvIGluaWNpYWwuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gRW5kIHRpbWUgbWF0Y2hlcyBhbm90aGVyIGludGVydmFsLid9ID0KICAgICAgICAnSG9yYXMgcmVwZXRpZGFzIG7Do28gc8OjbyBsaWJlcmFkYXMuIEluaWNpZSBvIGFwb250YW1lbnRvIGVtIG91dHJvIGludGVydmFsby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIEEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzLid9ID0gJ1BlcmlvZG8gaW52w6FsaWRvLiBVbSBkaWEgdGVtIGFwZW5hcyAyNCBob3Jhcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQSB2YWxpZCBwZXJpb2QgbXVzdCBiZSBncmVhdGVyIHRoYW4gemVyby4nfSA9ICdVbSBwZXLDrW9kbyB2w6FsaWRvIGRldmUgc2VyIG1haW9yIHF1ZSB6ZXJvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgTmVnYXRpdmUgcGVyaW9kcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnUGVyw61vZG8gaW52w6FsaWRvISBQZXLDrW9kb3MgbmVnYXRpdm9zIG7Do28gc8OjbyBsaWJlcmFkb3MuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Ym1pdCBjaGFuZ2VzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBvbmUgcm93J30gPSAnQWRpY2lvbmFyIHVtYSBsaW5oYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgY2FuIG9ubHkgc2VsZWN0IG9uZSBjaGVja2JveCBlbGVtZW50ISd9ID0gJ1ZvY8OqIHBvZGUgc2VsZWNpb25hciBhcGVuYXMgdW0gZWxlbWVudG8gbm8gY2hlY2tib3ghJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gc2ljayBsZWF2ZT8nfSA9ICdUZW0gY2VydGV6YSBkZSBxdWUgdm9jw6ogdHJhYmFsaG91IGVucXVhbnRvIGVzdGF2YSBlbSBsaWNlbsOnYSBtw6lkaWNhPyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJ1RlbSBjZXJ0ZXphIGRlIHF1ZSB2b2PDqiB0cmFiYWxob3UgZW5xdWFudG8gZXN0YXZhIGRlIGbDqXJpYXM/JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gb3ZlcnRpbWUgbGVhdmU/J30gPQogICAgICAgICdWb2PDqiB0ZW0gY2VydGV6YSBxdWUgdHJhYmFsaG91IGVucXVhbnRvIGVzdGF2YSBkZSBsaWNlbsOnYSBkZSBob3JhcyBleHRyYXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJ1ZvY8OqIHRlbSBjZXJ0ZXphIHF1ZSB0cmFiYWxob3UgbWFpcyBxdWUgMTYgaG9yYXM/JzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nT3ZlcnZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nIG1vbnRobHkgb3ZlcnZpZXcnfSA9ICdSZWxhdMOzcmlvIGRlIGFwb250YW1lbnRvIGRlIHRlbXBvIG1lbnNhbCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAoSG91cnMpJ30gPSAnSG9yYXMgZXh0cmFzIChob3JhcyknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnSG9yYXMgZXh0cmFzIChlc3RlIG3DqnMpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICdIb3JhcyBleHRyYXMgKHRvdGFsKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgb3ZlcnRpbWUgbGVhdmUnfSA9ICdSZXN0YW50ZSBkYSBsaWNlbsOnYSBkZSBob3JhcyBleHRyYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gKERheXMpJ30gPSAnRsOpcmlhcyAoRGlhcyknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRoaXMgbW9udGgpJ30gPSAnRsOpcmlhcyB0aXJhZGFzIChlc3RlIG3DqnMpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0b3RhbCknfSA9ICdGw6lyaWFzIHRpcmFkYXMgKHRvdGFsKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICdGw6lyaWFzIHJlc3RhbnRlcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIExlYXZlIChEYXlzKSd9ID0gJ0xpY2Vuw6dhIE3DqWRpY2EgKERpYXMpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUgdGFrZW4gKHRoaXMgbW9udGgpJ30gPSAnTGljZW7Dp2EgbcOpZGljYXMgdGlyYWRhcyAgKCBlc3RlIG3DqnMgKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlIHRha2VuICh0b3RhbCknfSA9ICdMaWNlbsOnYSBtw6lkaWNhcyB0aXJhZGFzICAoIHRvdGFsICknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJldmlvdXMgbW9udGgnfSA9ICdNw6pzIGFudGVyaW9yJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICdQcsOzeGltbyBtw6pzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlZWtkYXknfSA9ICdEaWEgZGEgc2VtYW5hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dvcmtpbmcgSG91cnMnfSA9ICdIb3LDoXJpbyBkZSB0cmFiYWxobyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUb3RhbCB3b3JrZWQgaG91cnMnfSA9ICdUb3RhbCBkZSBob3JhcyB0cmFiYWxoYWRhcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICdWaXPDo28gZGUgcHJvamV0byBkZSB1c3XDoXJpb3MnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnSG9yYXMgKCBtZW5zYWwgKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyAoTGlmZXRpbWUpJ30gPSAnSG9yYXMgKCBEdXJhw6fDo28gKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHcmFuZCB0b3RhbCd9ID0gJ1RvdGFsIGdlcmFsJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyd9ID0gJ1JlbGF0w7NyaW8gZGUgdGVtcG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGggTmF2aWdhdGlvbid9ID0gJ05hdmVnYcOnw6NvIE1lbnNhbCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBkYXRlJ30gPSAnSXIgcGFyYSBkYXRhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgcmVwb3J0cyd9ID0gJ1JlbGF0w7NyaW9zIGRlIHVzdcOhcmlvcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNb250aGx5IHRvdGFsJ30gPSAnVG90YWwgbWVuc2FsJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xpZmV0aW1lIHRvdGFsJ30gPSAnRHVyYcOnw6NvIHRvdGFsJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIGxlYXZlJ30gPSAnTGljZW7Dp2EgZGUgaG9yYXMgZXh0cmFzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uJ30gPSAnRsOpcmlhcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAnTGljZW7Dp2EgbcOpZGljYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiByZW1haW5pbmcnfSA9ICdGw6lyaWFzIHJlc3RhbnRlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgcmVwb3J0cyd9ID0gJ1JlbGF0w7NyaW9zIGRlIHByb2pldG8nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJ1JlbGF0w7NyaW8gZGUgcHJvamV0byc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICdJciBwYXJhIHZpc8OjbyBnZXJhbCBkZSByZWxhdMOzcmlvcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDdXJyZW50bHkgb25seSBhY3RpdmUgdXNlcnMgaW4gdGhpcyBwcm9qZWN0IGFyZSBzaG93bi4gVG8gY2hhbmdlIHRoaXMgYmVoYXZpb3IsIHBsZWFzZSB1cGRhdGUgc2V0dGluZzonfSA9CiAgICAgICAgJ0F0dWFsbWVudGUgc29tZW50ZSB1c3XDoXJpb3MgYXRpdm9zIG5lc3RlIHByb2pldG8gc8OjbyBleGliaWRvcy4gUGFyYSBhbHRlcmFyIGVzc2UgY29tcG9ydGFtZW50bywgcG9yIGZhdm9yIGF0dWFsaXplIGEgY29uZmlndXJhw6fDo286JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0N1cnJlbnRseSBhbGwgdGltZSBhY2NvdW50aW5nIHVzZXJzIGFyZSBzaG93bi4gVG8gY2hhbmdlIHRoaXMgYmVoYXZpb3IsIHBsZWFzZSB1cGRhdGUgc2V0dGluZzonfSA9CiAgICAgICAgJ0F0dWFsbWVudGUgdG9kb3Mgb3MgYXBvbnRhbWVudG8gZGUgdGVtcG9zIGRvcyB1c3XDoXJpb3Mgc8OjbyBleGliaWRvcy4gUGFyYSBhbHRlcmFyIGVzc2UgY29tcG9ydGFtZW50bywgcG9yIGZhdm9yIGF0dWFsaXplIGEgY29uZmlndXJhw6fDo286JzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICdFZGl0YXIgY29uZmlndXJhw6fDtWVzIGRvIFByb2pldG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICdBZGljaW9uYXIgcHJvamV0byc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBzZXR0aW5ncyBvdmVydmlldyd9ID0gJ0lyIHBhcmEgY29uZmlndXJhw6fDtWVzIGdlcmFpcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgUHJvamVjdCd9ID0gJ0FkaWNpb25hciBwcm9qZXRvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgUHJvamVjdCBTZXR0aW5ncyd9ID0gJ0VkaXRhciBDb25maWd1cmHDp8O1ZXMgZG8gUHJvamV0byc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgcHJvamVjdCB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAnSsOhIGV4aXN0ZSB1bSBwcm9qZXRvIGNvbSBlc3RlIG5vbWUuIFBvciBmYXZvciwgZXNjb2xoYSB1bSBkaWZlcmVudGUuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFNldHRpbmdzJ30gPSAnRWRpdGFyIENvbmZpZ3VyYcOnw7VlcyBkYSBDb250YWJpbGlkYWRlIGRlIFRlbXBvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGFzayd9ID0gJ0FkaWNpb25hciB0YXJlZmEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAnRmlsdHJhciBwb3IgcHJvamV0b3MsIHRhcmVmYXMgb3UgdXN1w6FyaW9zJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnUGVyw61vZG9zIGRlIHRlbXBvIG7Do28gcG9kZW0gc2VyIGV4Y2x1w61kb3MuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJ0xpc3RhIGRlIHByb2pldG9zJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgTGlzdCd9ID0gJ0xpc3RhIGRlIHRhcmVmYXMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICdBZGljaW9uYXIgdGFyZWZhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGFzayBTZXR0aW5ncyd9ID0gJ0VkaXRhciBjb25maWd1cmHDp8O1ZXMgZGEgVGFyZWZhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICdKw6EgZXhpc3RlIHVtYSB0YXJlZmEgY29tIGVzc2Ugbm9tZS4gUG9yIGZhdm9yLCBlc2NvbGhhIHVtIG5vbWUgZGlmZXJlbnRlLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIExpc3QnfSA9ICdMaXN0YSBkZSB1c3XDoXJpb3MnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBTZXR0aW5ncyd9ID0gJ0NvbmZpZ3VyYcOnw7VlcyBkZSB1c3XDoXJpbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gc2VlIG92ZXJ0aW1lcyd9ID0gJ08gdXN1w6FyaW8gdGVtIHBlcm1pc3PDo28gcGFyYSB2ZXIgaG9yYXMgZXh0cmFzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgT3ZlcnRpbWUnfSA9ICdNb3N0cmFyIGhvcmFzIGV4dHJhcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnTyB1c3XDoXJpbyB0ZW0gcGVybWlzc8OjbyBwYXJhIGNyaWFyIHByb2pldG9zJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICdMaWJlcmFyIGNyaWHDp8OjbyBkZSBwcm9qZXRvcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gc2tpcCB0aW1lIGFjY291bnRpbmcnfSA9ICdVc3XDoXJpbyB0ZW0gcGVybWlzc8OjbyBkZSBwdWxhciBhIGNvbnRhYmlsaWRhZGUgZGUgdGVtcG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsb3cgdGltZSBhY2NvdW50aW5nIHNraXBwaW5nJ30gPSAnUGVybWl0aXIgcHVsYXIgYSBjb250YWJpbGlkYWRlIGRlIHRlbXBvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIHRoaXMgb3B0aW9uIGlzIHNlbGVjdGVkLCB0aW1lIGFjY291bnRpbmcgaXMgZWZmZWN0aXZlbHkgb3B0aW9uYWwgZm9yIHRoZSB1c2VyLid9ID0KICAgICAgICAnU2UgZXN0YSBvcMOnw6NvIGZvciBzZWxlY2lvbmFkYSwgYSBjb250YWJpbGlkYWRlIGRlIHRlbXBvIHNlcsOhIGVmZXRpdmFtZW50ZSBvcGNpb25hbCBwYXJhIG8gdXN1w6FyaW8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIHdpbGwgYmUgbm8gd2FybmluZ3MgYWJvdXQgbWlzc2luZyBlbnRyaWVzIGFuZCBubyBlbnRyeSBlbmZvcmNlbWVudC4nfSA9CiAgICAgICAgJ07Do28gaGF2ZXLDo28gYWxlcnRhcyBzb2JyZSByZWdpc3Ryb3MgZmFsdGFudGVzIG5lbSByZWdpc3Ryb3MgZm9yw6dhZG9zLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFNwYW5zJ30gPSAnSW50ZXJ2YWxvcyBkZSB0ZW1wbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICdQZXLDrW9kbyBJbmljaWFsJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBFbmQnfSA9ICdQZXLDrW9kbyBGaW5hbCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnRGlhcyBkZSBGw6lyaWFzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnSG9yYXMgcG9yIFNlbWFuYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBdXRob3JpemVkIE92ZXJ0aW1lJ30gPSAnSG9yYXMgZXh0cmFzIGF1dG9yaXphZGEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJ0RhdGEgaW5pY2lhbCAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGluc2VydCBhIHZhbGlkIGRhdGUuJ30gPSAnUG9yIGZhdm9yLCBpbnNpcmEgdW1hIGRhdGEgdsOhbGlkYS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICdEYXRhIGZpbmFsJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBlbmQgbXVzdCBiZSBhZnRlciBwZXJpb2QgYmVnaW4uJ30gPSAnUGVyw61vZG8gZmluYWwgZGV2ZSBzZXIgbWFpb3IgcXVlICBwZXLDrW9kbyBpbmljaWFsLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMZWF2ZSBEYXlzJ30gPSAnRGlhcyBkZSBmw6lyaWFzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlZWtseSBIb3Vycyd9ID0gJ0hvcmFzIHNlbWFuYWlzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lJ30gPSAnSG9yYXMgZXh0cmFzJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIHRpbWUgcGVyaW9kcyBmb3VuZC4nfSA9ICdQZXLDrW9kbyBkZSB0ZW1wbyBuw6NvIGVuY29udHJhZG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCB0aW1lIHBlcmlvZCd9ID0gJ0FkaWNpb25hciBwZXLDrW9kbyBkZSB0ZW1wbyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgVGltZSBSZWNvcmQnfSA9ICdWZXIgcmVnaXN0cm8gZGUgdGVtcG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldyBvZiAnfSA9ICdWaXPDo28gZGUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJldmlvdXMgZGF5J30gPSAnRGlhIGFudGVyaW9yJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgZGF5J30gPSAnUHLDs3hpbW8gZGlhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIGRhdGEgZm91bmQgZm9yIHRoaXMgZGF5Lid9ID0gJ07Do28gZm9yYW0gZW5jb250cmFkb3MgZGFkb3MgcGFyYSBlc3RlIGRpYS4nOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnTsOjbyBmb2kgcG9zc8OtdmVsIGluc2VyaXIgVW5pZGFkZXMgZGUgVHJhYmFsaG8hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICfDmmx0aW1vcyBwcm9qZXRvcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3Qgc2F2ZSBzZXR0aW5ncywgYmVjYXVzZSBhIGRheSBoYXMgb25seSAyNCBob3VycyEnfSA9ICdDb25maWd1cmHDp8O1ZXMgbsOjbyBzYWx2YXMsIHBvaXMgdW0gZGlhIHRlbSBhcGVuYXMgMjQgaG9yYXMhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICdOw6NvIGZvaSBwb3Nzw612ZWwgZGVsZXRhciBVbmlkYWRlcyBkZSBUcmFiYWxobyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICdFc3RhIERhdGEgZXN0w6EgZm9yYSBkbyBsaW1pdGUsIG1hcyB2b2PDqiBuw6NvIGluc2VyaXUgZXN0ZSBkaWEgYWluZGEsIGVudMOjbyB2b2PDqiBwb3NzdWkgVU1BKCEpIGNoYW5jZSBkZSBpbnNlcmlyJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0luY29tcGxldGUgV29ya2luZyBEYXlzJ30gPSAnRGlhcyBkZSB0cmFiYWxob3MgaW5jb21wbGV0b3MnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnSW5zZXJpZG8gY29tIHN1Y2Vzc28hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICdFcnJvIGFvIGluc2VyaXIgbcO6bHRpcGxhcyBkYXRhcyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnRW50cmFkYSBkZSB2w6FyaWFzIGRhdGFzIGluc2VyaWRhIGNvbSBzdWNlc3NvISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbnRlcmVkIGRhdGUgd2FzIGludmFsaWQhIERhdGUgd2FzIGNoYW5nZWQgdG8gdG9kYXkuJ30gPSAnRGF0YSBpbnNlcmlkYSDDqSBpbnbDoWxpZGEhIERhdGEgZm9pIGFsdGVyYWRhIHBhcmEgaG9qZS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnTmVuaHVtIHBlcsOtb2RvIGRlIHRlbXBvIGNvbmZpZ3VyYWRvIG91IGEgZGF0YSBlc3BlY2lmaWNhZGEgZXN0w6EgZm9yYSBkb3MgcGVyw61vZG9zIGRlIHRlbXBvIGRlZmluaWRvcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNvbnRhY3QgdGhlIHRpbWUgYWNjb3VudGluZyBhZG1pbmlzdHJhdG9yIHRvIHVwZGF0ZSB5b3VyIHRpbWUgcGVyaW9kcyEnfSA9CiAgICAgICAgJ0VudHJlIGVtIGNvbnRhdG8gY29tIG8gYWRtaW5pc3RyYWRvciBjb250w6FiaWwgZG8gdGVtcG8gcGFyYSBhdHVhbGl6YXIgc2V1cyBwZXLDrW9kb3MgZGUgdGVtcG8hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgU2VsZWN0ZWQgUHJvamVjdHMnfSA9ICfDmmx0aW1vcyBwcm9qZXRvcyBzZWxlY2lvbmFkb3MnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsIFByb2plY3RzJ30gPSAnVG9kb3Mgb3MgcHJvamV0b3MnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnUHJvamV0byBkZSBSZWxhdMOzcmlvOiBOZWNlc3PDoXJpbyBQcm9qZWN0SUQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nIFByb2plY3QnfSA9ICdQcm9qZXRvIGRlIFJlbGF0w7NyaW8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nJ30gPSAnUmVsYXTDs3Jpbyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBUaWNrZXRJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBObyBQcm9qZWN0IGZvciBUaWNrZXQgZm91bmQuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIHVwZGF0ZSB1c2VyIHNldHRpbmdzISd9ID0gJ0ltcG9zc8OtdmVsIGF0dWFsaXphciBjb25maWd1cmHDp8O1ZXMgZGUgdXN1w6FyaW8hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgYWRkZWQhJ30gPSAnUHJvamV0byBhZGljaW9uYWRvISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAnUHJvamV0byBhdHVhbGl6YWRvISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIGFkZGVkISd9ID0gJ0F0aXZpZGFkZSBhZGljaW9uYWRhISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIHVwZGF0ZWQhJ30gPSAnQXRpdmlkYWRlIGF0dWFsaXphZGEhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZSBVc2VySUQgaXMgbm90IHZhbGlkISd9ID0gJ08gVXNlcklEIG7Do28gw6kgdsOhbGlkbyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGluc2VydCB1c2VyIGRhdGEhJ30gPSAnTsOjbyBmb2kgcG9zc8OtdmVsIGluc2VyaXIgZGFkb3MgZGUgdXN1w6FyaW8hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byBhZGQgdGltZSBwZXJpb2QhJ30gPSAnSW1wb3Nzw612ZWwgYWRpY2lvbmFyIHBlcsOtb2RvIGRlIHRlbXBvISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnQ29uZmlndXJhw6fDo28nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciB1cGRhdGVkISd9ID0gJ1VzdcOhcmlvIGF0dWFsaXphZG8hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgYWRkZWQhJ30gPSAnVXN1w6FyaW8gYWRpY2lvbmFkbyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICdOb3ZvIHVzdcOhcmlvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBTdGF0dXMnfSA9ICdFc3RhZG8gZG8gcGVyw61vZG8nOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdWaWV3LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3OiBOZWVkICVzISd9ID0gJ1Zpc8OjbzogTmVjZXNzw6FyaW8gJXMhJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICdQb3IgZmF2b3IgaW5zaXJhIHN1YXMgaG9yYXMgZGUgdHJhYmFsaG8hJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvVG9vbEJhci9JbmNvbXBsZXRlV29ya2luZ0RheXMucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0luY29tcGxldGUgd29ya2luZyBkYXlzJ30gPSAnRGlhcyBkZSB0cmFiYWxob3MgaW5jb21wbGV0b3MnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnUG9yIGZhdm9yLCBlc2NvbGhhIHBlbG8gbWVub3MgdW0gZGlhISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXNzIEVudHJ5J30gPSAnRW50cmFkYSBlbSBtYXNzYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGEgcmVhc29uIGZvciBhYnNlbmNlISd9ID0gJ1BvciBmYXZvciBlc2NvbGhhIHVtIG1vdGl2byBwYXJhIGEgYXVzw6puY2lhJzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5J30gPSAnRGVsZXRhciBlbnRyYWRhIG5hIENvbnRhYmlsaWRhZGUgZGUgVGVtcG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NvbmZpcm0gaW5zZXJ0J30gPSAnQ29uZmlybWFyIGluc2Vyw6fDo28nOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJ03Ds2R1bG8gZGUgbm90aWZpY2HDp8OjbyBkbyBBZ2VudGUgcGFyYSB2ZXIgbyBudW1lcm8gZGUgZGlhcyBpbmNvbXBsZXRvcyBkbyB1c3XDoXJpby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxzbyBzeW5jaHJvbmlzZSBjdXN0b21lcnMgYXMgYSBuZXcgcHJvamVjdCBpZiB0aGV5IGhhdmUgbm90IHlldCBiZWVuIGNyZWF0ZWQgaW4gdGhlIGN1c3RvbWVyIGRhdGFiYXNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FzIHNvb24gYXMgdGhlIHN5bmNocm9uaXNhdGlvbiBvZiB0aWNrZXQgVGltZVVuaXRzIGlzIGFjdGl2YXRlZCwgaXQgaXMgcG9zc2libGUgdG8gc2V0IHRoZSBlbnRyaWVzIFJlYWRPbmx5Lid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NyZWF0ZSBhIG5ldyB0aW1lIGFjY291bnRpbmcgZW50cnkgcmVsYXRlZCB0byB0aGUgdGlja2V0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgbmFtZSBmb3IgbmV3IGFjdGlvbnMuJ30gPSAnTyBub21lIHBhZHLDo28gcGFyYSBub3ZhcyBhw6fDtWVzLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IG5hbWUgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICdPIG5vbWUgcGFkcsOjbyBwYXJhIG5vdm9zIHByb2pldG9zLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRhdGUgZW5kLid9ID0gJ0NvbmZpZ3VyYcOnw6NvIHBhZHLDo28gcGFyYSBkYXRhIGZpbmFsJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICdDb25maWd1cmHDp8OjbyBwYWRyw6NvIHBhcmEgZGF0YSBpbmljaWFsLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRlc2NyaXB0aW9uLid9ID0gJ0NvbmZpZ3VyYcOnw6NvIHBhZHLDo28gcGFyYSBkZXNjcmnDp8Ojby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJ0NvbmZpZ3VyYcOnw6NvIHBhZHLDo28gcGFyYSBkaWFzIGRlIGbDqXJpYXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3Igb3ZlcnRpbWUuJ30gPSAnQ29uZmlndXJhw6fDo28gcGFkcsOjbyBwYXJhIGhvcmFzIGV4dHJhcywnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciB0aGUgc3RhbmRhcmQgd2Vla2x5IGhvdXJzLid9ID0gJ0NvbmZpZ3VyYcOnw6NvIHBhZHLDo28gcGFyYSBob3JhcyBzZW1hbmFpcyBwYWRyw6NvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICdFc3RhZG8gcGFkcsOjbyBwYXJhIG5vdmFzIGHDp8O1ZXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnRXN0YWRvIHBhZHLDo28gcGFyYSBub3ZvcyBwcm9qZXRvcyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHN0YXR1cyBmb3IgbmV3IHVzZXJzLid9ID0gJ0VzdGFkbyBwYXJhIHBhcmEgbm92b3MgdXN1w6FyaW9zJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmluZXMgdGhlIHByb2plY3RzIGZvciB3aGljaCBhIHJlbWFyayBpcyByZXF1aXJlZC4gSWYgdGhlIFJlZ0V4cCBtYXRjaGVzIG9uIHRoZSBwcm9qZWN0LCB5b3UgaGF2ZSB0byBpbnNlcnQgYSByZW1hcmsgdG9vLiBUaGUgUmVnRXhwIHVzZSB0aGUgc214IHBhcmFtZXRlci4nfSA9CiAgICAgICAgJ0RlZmluZSBvcyBwcm9qZXRvcyBwYXJhIG9zIHF1YWlzIMOpIG5lY2Vzc8OhcmlhIHVtYSBvYnNlcnZhw6fDo28uIFNlIG8gUmVnRXhwIMOpIGVuY29udHJhZG8gbm8gcHJvamV0bywgdm9jw6ogdGVtIHF1ZSBpbnNlcmlyIHVtYSBvYnNlcnZhw6fDo28uIE8gUmVnRXhwIHVzYSBvIHBhcsOibWV0cm8gc214Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZXRlcm1pbmVzIGlmIHRoZSBzdGF0aXN0aWNzIG1vZHVsZSBtYXkgZ2VuZXJhdGUgdGltZSBhY2NvdW50aW5nIGluZm9ybWF0aW9uLid9ID0KICAgICAgICAnRGV0ZXJtaW5hIHNlIG8gbcOzZHVsbyBkZSBlc3RhdMOtc3RpY2FzIHBvZGUgZ2VyYXIgaW5mb3JtYcOnw7VlcyBkbyB0aW1lIGFjY291bnRpbmcuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSBhY2NvdW50aW5nIHNldHRpbmdzLid9ID0gJ0VkaXRhciBjb25maWd1cmHDp8O1ZXMgZGEgY29udGFiaWxpZGFkZSBkZSB0ZW1wby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIHJlY29yZC4nfSA9ICdFZGl0YXIgcmVnaXN0cm8gZGUgdGVtcG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJ1BhcmEgcXVhbnRvcyBkaWFzIGF0csOhcyB2b2PDqiBwb2RlIGluc2VyaXIgdW5pZGFkZXMgZGUgdHJhYmFsaG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIG9ubHkgdXNlcnMgdGhhdCBoYXMgYWRkZWQgd29ya2luZyB0aW1lIHRvIHRoZSBzZWxlY3RlZCBwcm9qZWN0IGFyZSBzaG93bi4nfSA9CiAgICAgICAgJ1NlIGF0aXZhZG8sIHNvbWVudGUgb3MgdXN1w6FyaW9zIHF1ZSBhZGljaW9ub3UgdGVtcG8gZGUgdHJhYmFsaG8gYW8gbyBwcm9qZXRvIHNlbGVjaW9uYWRvIHNlcsOjbyBleGliaWRvcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJ1NlIGF0aXZhZG8sIG9zIGVsZW1lbnRvcyBzdXNwZW5zb3MgbmEgdGVsYSBkZSBlZGnDp8OjbyBzw6NvIG1vZGlmaWNhZGFzIHBhcmEgY2FtcG9zIGRlIGF1dG9jb21wbGV0YXIgbW9kZXJuaXphZG9zLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICdTZSBoYWJpbGl0YWRvLCBvIGZpbHRybyBwYXJhIG9zIHByb2pldG9zIGFudGVyaW9yZXMgcG9kZSBzZXIgdXNhZG8gZW0gdmV6IGRlIGR1YXMgbGlzdGFzIGRlIHByb2pldG9zICjDumx0aW1vIGUgdG9kb3MpLiBFbGUgcG9kZSBzZXIgdXNhZG8gYXBlbmFzIHNlIFRpbWVBY2NvdW50aW5nOjpFbmFibGVBdXRvQ29tcGxldGlvbiBlc3TDoSBoYWJpbGl0YWRvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgaXMgYWN0aXZlIGJ5IGRlZmF1bHQgaWYgdGhlcmUgYXJlIHRoZSBwcmV2aW91cyBwcm9qZWN0cy4gSXQgY291bGQgYmUgdXNlZCBvbmx5IGlmIEVuYWJsZUF1dG9Db21wbGV0aW9uIGFuZCBUaW1lQWNjb3VudGluZzo6VXNlRmlsdGVyIGFyZSBlbmFibGVkLid9ID0KICAgICAgICAnU2UgaGFiaWxpdGFkbywgbyBmaWx0cm8gcGFyYSBwcm9qZXRvcyBhbnRlcmlvcmVzIMOpIGF0aXZhZG8gcG9yIHBhZHLDo28gc2UgaMOhIHByb2pldG9zIGFudGVyaW9yZXMuIEVsZSBwb2RlIHNlciB1c2FkbyBhcGVuYXMgc2UgRW5hYmxlQXV0b0NvbXBsZXRpb24gZSBUaW1lQWNjb3VudGluZzo6VXNlRmlsdGVyIGVzdMOjbyBoYWJpbGl0YWRvcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIHVzZXIgaXMgYWxsb3dlZCB0byBlbnRlciAib24gdmFjYXRpb24gbGVhdmUiLCAib24gc2ljayBsZWF2ZSIgYW5kICJvbiBvdmVydGltZSBsZWF2ZSIgdG8gbXVsdGlwbGUgZGF0ZXMgYXQgb25jZS4nfSA9CiAgICAgICAgJ1NlIGF0aXZhZG8sIG8gdXN1w6FyaW8gdGVtIHBlcm1pc3PDo28gcGFyYSBlbnRyYXIgImVtIGxpY2Vuw6dhIGRlIGbDqXJpYXMiLCAiZW0gbGljZW7Dp2EgbcOpZGljYSIgZSAiZW0gbGljZW7Dp2EgZGUgaG9yYXMgZXh0cmFzIiBkZSB1bWEgc8OzIHZleiBwYXJhIHbDoXJpYXMgZGF0YXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnTyBuw7ptZXJvIG3DoXhpbW8gZGUgZGlhcyBkZSB0cmFiYWxobyBhcMOzcyBvIHF1YWwgYXMgInVuaWRhZGVzIGRlIHRyYWJhbGhvIiBkZXZlbSBzZXIgaW5zZXJpZG9zJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICdPIG7Dum1lcm8gbcOheGltbyBkZSBkaWFzIGRlIHRyYWJhbGhvIHNlbSAidW5pZGFkZXMgZGUgdHJhYmFsaG8iICBhcMOzcyBvIHF1YWwgdW0gYXZpc28gc2Vyw6EgbW9zdHJhZG8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ2aWV3Lid9ID0gJ1Zpc8OjbyBHZXJhbC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCB0aW1lIHJlcG9ydGluZy4nfSA9ICdSZWxhdMOzcmlvIGRlIHRlbXBvcyBkZSBwcm9qZXRvcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIGFjdGlvbiBsaXN0IGFjY29yZGluZyB0byBzZWxlY3RlZCBwcm9qZWN0LiBLZXkgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9uIGZvciBwcm9qZWN0KHMpLCBjb250ZW50IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGFjdGlvbihzKS4nfSA9CiAgICAgICAgJ0FzIGV4cHJlc3PDtWVzIHJlZ3VsYXJlcyBwYXJhIHJlc3RyaW5naXIgbGlzdGEgZGUgYcOnw7VlcyBkZSBhY29yZG8gY29tIG8gcHJvamV0byBzZWxlY2lvbmFkby4gQ2hhdmUgY29udMOpbSBleHByZXNzw6NvIHJlZ3VsYXIgcGFyYSBvIHByb2pldG8ocyksIENvbnRlw7pkbyBjb250w6ltIGV4cHJlc3PDtWVzIHJlZ3VsYXJlcyBwYXJhIGEgYcOnw6NvKHMpLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZWd1bGFyIGV4cHJlc3Npb25zIGZvciBjb25zdHJhaW5pbmcgcHJvamVjdCBsaXN0IGFjY29yZGluZyB0byB1c2VyIGdyb3Vwcy4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiBncm91cHMuJ30gPQogICAgICAgICdBcyBleHByZXNzw7VlcyByZWd1bGFyZXMgcGFyYSByZXN0cmluZ2lyIGEgbGlzdGEgZGUgcHJvamV0byBkZSBhY29yZG8gY29tIGdydXBvcyBkZSB1c3XDoXJpb3MuIENoYXZlIGNvbnTDqW0gZXhwcmVzc8OjbyByZWd1bGFyIHBhcmEgbyBwcm9qZXRvIChzKSwgY29udGXDumRvIGNvbnTDqW0gbGlzdGEgIHNlcGFyYWRhIHBvciB2w61yZ3VsYXMgZGUgZ3J1cG9zLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaG93IGFjY291bnRlZCB0aW1lcyBmb3IgdGhpcyB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3BlY2lmaWVzIGlmIHdvcmtpbmcgaG91cnMgY2FuIGJlIGluc2VydGVkIHdpdGhvdXQgc3RhcnQgYW5kIGVuZCB0aW1lcy4nfSA9CiAgICAgICAgJ0VzcGVjaWZpcXVlIHNlIG8gaG9yw6FyaW8gZGUgdHJhYmFsaG8gcG9kZSBzZXIgaW5zZXJpZG8gc2VtIGhvcsOhcmlvcyBkZSBpbsOtY2lvIGUgdMOpcm1pbm8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICdFc3NlIG3Ds2R1bG8gZm9yw6dhIHByZWVuY2hlciBvIFRpbWVBY2NvdW50aW5nLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG5vdGlmaWNhdGlvbiBtb2R1bGUgZ2l2ZXMgYSB3YXJuaW5nIGlmIHRoZXJlIGFyZSB0b28gbWFueSBpbmNvbXBsZXRlIHdvcmtpbmcgZGF5cy4nfSA9CiAgICAgICAgJ0VzdGUgbcOzZHVsbyBkZSBub3RpZmljYcOnw6NvIGTDoSB1bSBhdmlzbyBzZSBob3V2ZXIgbXVpdG9zIGRpYXMgZGUgdHJhYmFsaG8gbsOjbyByZWdpc3RyYWRvcy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJ0NvbnRhYmlsaWRhZGUgVGVtcG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBSZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIGVkaXQuJ30gPSAnRWRpdGFyIGNvbnRhYmlsaWRhZGUgZGUgdGVtcG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJ1Zpc8OjbyBnZXJhbCBkZSBjb250YWJpbGlkYWRlIGRlIHRlbXBvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyByZXBvcnRpbmcuJ30gPSAnUmVsYXTDs3JpbyBkZSBjb250YWJpbGlkYWRlIGRlIHRlbXBvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBzZXR0aW5ncy4nfSA9ICdDb25maWd1cmHDp8O1ZXMgZGUgY29udGFiaWxpZGFkZSBkZSB0ZW1wbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdGlja2V0IHJlcG9ydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHZpZXcuJ30gPSAnVmVyIGNvbnRhYmlsaWRhZGUgZGUgdGVtcG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJ0NvbnRhYmlsaWRhZGUgVGVtcG8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG8gdXNlIGlmIHNvbWUgYWN0aW9ucyByZWR1Y2VkIHRoZSB3b3JraW5nIGhvdXJzIChmb3IgZXhhbXBsZSwgaWYgb25seSBoYWxmIG9mIHRoZSB0cmF2ZWxpbmcgdGltZSBpcyBwYWlkIEtleSA9PiB0cmF2ZWxpbmc7IENvbnRlbnQgPT4gNTApLid9ID0KICAgICAgICAnVXNhciBwYXJhICBhbGd1bWFzIGHDp8O1ZXMgZGUgcmVkdXppciBhcyBob3JhcyBkZSB0cmFiYWxobyAocG9yIGV4ZW1wbG8sIHNlIGFwZW5hcyBtZXRhZGUgZG8gdGVtcG8gZGUgdmlhZ2VtIMOpIHBhZ28gS2V5ID0+IHZpYWphcjsgQ29udGVudCA9PiA1MCknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/ro_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OnJvX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJ1ppbGUgZmFyYSBpbnRyYXJpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NlbGVjdCBhbGwgZGF5cyd9ID0gJ1NlbGVjdGVhemEgdG9hdGUgemlsZWxlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgZW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSB0aGUgcmVhc29uIGZvciB5b3VyIGFic2VuY2UgZm9yIHRoZSBzZWxlY3RlZCBkYXlzJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gdmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gc2ljayBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBvdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXF1aXJlZCBmaWVsZHMgYXJlIG1hcmtlZCB3aXRoIGEgIioiLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgaGF2ZSB0byBmaWxsIGluIHN0YXJ0IGFuZCBlbmQgdGltZSBvciBhIHRpbWUgcGVyaW9kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0J30gPSAnUHJvaWVjdCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPcmlnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGFkZCBhIHJlbWFyayB3aXRoIG1vcmUgdGhhbiA4IGNoYXJhY3RlcnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Vyc3BydW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05lZ2F0aXZlIHRpbWVzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBTdGFydCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIGZvcm1hdCEgUGxlYXNlIGVudGVyIGEgdGltZSB3aXRoIHRoZSBmb3JtYXQgSEg6TU0uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57JzI0OjAwIGlzIG9ubHkgcGVybWl0dGVkIGFzIGVuZCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHRpbWUhIEEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSBtdXN0IGJlIGFmdGVyIHN0YXJ0IHRpbWUuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gRW5kIHRpbWUgbWF0Y2hlcyBhbm90aGVyIGludGVydmFsLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQSB2YWxpZCBwZXJpb2QgbXVzdCBiZSBncmVhdGVyIHRoYW4gemVyby4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIE5lZ2F0aXZlIHBlcmlvZHMgYXJlIG5vdCBhbGxvd2VkLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWJtaXQgY2hhbmdlcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgb25lIHJvdyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgY2FuIG9ubHkgc2VsZWN0IG9uZSBjaGVja2JveCBlbGVtZW50ISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHNpY2sgbGVhdmU/J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gdmFjYXRpb24/J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gb3ZlcnRpbWUgbGVhdmU/J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCBtb3JlIHRoYW4gMTYgaG91cnM/J30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nT3ZlcnZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nIG1vbnRobHkgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKEhvdXJzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgb3ZlcnRpbWUgbGVhdmUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gKERheXMpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0aGlzIG1vbnRoKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFpbmluZyB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIExlYXZlIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlIHRha2VuICh0aGlzIG1vbnRoKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlIHRha2VuICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJldmlvdXMgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV4dCBtb250aCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrZGF5J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dvcmtpbmcgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG90YWwgd29ya2VkIGhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXJcJ3MgcHJvamVjdCBvdmVydmlldyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyAobW9udGhseSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKExpZmV0aW1lKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHcmFuZCB0b3RhbCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSByZXBvcnRpbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGggTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBkYXRlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgcmVwb3J0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNb250aGx5IHRvdGFsJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xpZmV0aW1lIHRvdGFsJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gcmVtYWluaW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgcmVwb3J0cyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1Byb2plY3QKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHJlcG9ydGluZyBvdmVydmlldyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDdXJyZW50bHkgb25seSBhY3RpdmUgdXNlcnMgaW4gdGhpcyBwcm9qZWN0IGFyZSBzaG93bi4gVG8gY2hhbmdlIHRoaXMgYmVoYXZpb3IsIHBsZWFzZSB1cGRhdGUgc2V0dGluZzonfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDdXJyZW50bHkgYWxsIHRpbWUgYWNjb3VudGluZyB1c2VycyBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCByZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gdGlja2V0J30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgUHJvamVjdCBTZXR0aW5ncyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgcHJvamVjdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBzZXR0aW5ncyBvdmVydmlldyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgUHJvamVjdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlcmUgaXMgYWxyZWFkeSBhIHByb2plY3Qgd2l0aCB0aGlzIG5hbWUuIFBsZWFzZSwgY2hvb3NlIGEgZGlmZmVyZW50IG9uZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgQWNjb3VudGluZyBTZXR0aW5ncyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgYSB1c2VyIHRvIHRpbWUgYWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRmlsdGVyIGZvciBwcm9qZWN0cywgdGFza3Mgb3IgdXNlcnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBwZXJpb2RzIGNhbiBub3QgYmUgZGVsZXRlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRhc2sgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlcmUgaXMgYWxyZWFkeSBhIHRhc2sgd2l0aCB0aGlzIG5hbWUuIFBsZWFzZSwgY2hvb3NlIGEgZGlmZmVyZW50IG9uZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBTZXR0aW5ncyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gc2VlIG92ZXJ0aW1lcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaG93IE92ZXJ0aW1lJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBjcmVhdGUgcHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsb3cgcHJvamVjdCBjcmVhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gc2tpcCB0aW1lIGFjY291bnRpbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsb3cgdGltZSBhY2NvdW50aW5nIHNraXBwaW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIHRoaXMgb3B0aW9uIGlzIHNlbGVjdGVkLCB0aW1lIGFjY291bnRpbmcgaXMgZWZmZWN0aXZlbHkgb3B0aW9uYWwgZm9yIHRoZSB1c2VyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIHdpbGwgYmUgbm8gd2FybmluZ3MgYWJvdXQgbWlzc2luZyBlbnRyaWVzIGFuZCBubyBlbnRyeSBlbmZvcmNlbWVudC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFNwYW5zJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBCZWdpbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgRW5kJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RheXMgb2YgVmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgcGVyIFdlZWsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXV0aG9yaXplZCBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdGFydCBEYXRlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBpbnNlcnQgYSB2YWxpZCBkYXRlLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgZW5kIG11c3QgYmUgYWZ0ZXIgcGVyaW9kIGJlZ2luLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMZWF2ZSBEYXlzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlZWtseSBIb3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyB0aW1lIHBlcmlvZHMgZm91bmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCB0aW1lIHBlcmlvZCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgVGltZSBSZWNvcmQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldyBvZiAnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJldmlvdXMgZGF5J30gPSAnWml1YSBhbnRlcmlvYXJhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgZGF5J30gPSAnWml1YSB1cm1hdG9hcmUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gZGF0YSBmb3VuZCBmb3IgdGhpcyBkYXkuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nRWRpdC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGluc2VydCBXb3JraW5nIFVuaXRzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMYXN0IFByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBzYXZlIHNldHRpbmdzLCBiZWNhdXNlIGEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgZGVsZXRlIFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgRGF0ZSBpcyBvdXQgb2YgbGltaXQsIGJ1dCB5b3UgaGF2ZW5cJ3QgaW5zZXJ0IHRoaXMgZGF5IHlldCwgc28geW91IGdldCBvbmUoISkgY2hhbmNlIHRvIGluc2VydCd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0luY29tcGxldGUgV29ya2luZyBEYXlzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Y2Nlc3NmdWwgaW5zZXJ0ISd9ID0gJ0ludHJvZHVzIGN1IHN1Y2NlcyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRXJyb3Igd2hpbGUgaW5zZXJ0aW5nIG11bHRpcGxlIGRhdGVzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWNjZXNzZnVsbHkgaW5zZXJ0ZWQgZW50cmllcyBmb3Igc2V2ZXJhbCBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW50ZXJlZCBkYXRlIHdhcyBpbnZhbGlkISBEYXRlIHdhcyBjaGFuZ2VkIHRvIHRvZGF5Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyB0aW1lIHBlcmlvZCBjb25maWd1cmVkLCBvciB0aGUgc3BlY2lmaWVkIGRhdGUgaXMgb3V0c2lkZSBvZiB0aGUgZGVmaW5lZCB0aW1lIHBlcmlvZHMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNvbnRhY3QgdGhlIHRpbWUgYWNjb3VudGluZyBhZG1pbmlzdHJhdG9yIHRvIHVwZGF0ZSB5b3VyIHRpbWUgcGVyaW9kcyEnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMYXN0IFNlbGVjdGVkIFByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbCBQcm9qZWN0cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBQcm9qZWN0SUQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nJ30gPSAnUmFwb3J0YXJlJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBOZWVkIFRpY2tldElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5vIFByb2plY3QgZm9yIFRpY2tldCBmb3VuZC4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdTZXR0aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gdXBkYXRlIHVzZXIgc2V0dGluZ3MhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayB1cGRhdGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgVXNlcklEIGlzIG5vdCB2YWxpZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGluc2VydCB1c2VyIGRhdGEhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byBhZGQgdGltZSBwZXJpb2QhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NldHRpbmcnfSA9ICdTZXRhcmUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciB1cGRhdGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXcgVXNlcid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgU3RhdHVzJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nVmlldy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldzogTmVlZCAlcyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ob3RpZmljYXRpb24vVGltZUFjY291bnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBpbnNlcnQgeW91ciB3b3JraW5nIGhvdXJzISd9ID0gJ1ZhIHJ1Z2FtIGludHJvZHVjZXRpIGNhdGUgb3JlIGF0aSBsdWNyYXQhJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvVG9vbEJhci9JbmNvbXBsZXRlV29ya2luZ0RheXMucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0luY29tcGxldGUgd29ya2luZyBkYXlzJ30gPSAnJzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50LkVkaXRUaW1lUmVjb3JkcwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhdCBsZWFzdCBvbmUgZGF5ISd9ID0gJ1ZhIHJ1Z2FtIGFsZWdldGkgY2VsIHB1dGluIG8gemkhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICcnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/ru_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OnJ1X1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJ9CX0LDQtNCw0YfQsCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICfQn9GA0LjQvNC10YfQsNC90LjQtSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdGFydCB0aW1lJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VuZCB0aW1lJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBtdXN0IGVudGVyIGEgc3RhcnQgYW5kIGFuIGVuZCB0aW1lLCBvciBhIHBvc2l0aXZlIHBlcmlvZCBvZiB1cCB0byAyNCBob3Vycy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgdGltZSBwZXJpb2QgbXVzdCBiZSBnaXZlbiBpbiBob3VycyBhbmQgY2FuIGJlIGEgZGVjaW1hbCBudW1iZXIuJ30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdEZWxldGUKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RvIHlvdSByZWFsbHkgd2FudCB0byBkZWxldGUgdGhlIFRpbWUgQWNjb3VudGluZyBvZiB0aGlzIGRheT8nfSA9CiAgICAgICAgJ9CS0Ysg0LTQtdC50YHRgtCy0LjRgtC10LvRjNC90L4g0LbQtdC70LDQtdGC0LUg0YPQtNCw0LvQuNGC0Ywg0YPRh9GC0LXQvdC90YvQtSDQt9Cw0YLRgNCw0YLRiyDQstGA0LXQvNC10L3QuCDQtNC70Y8g0Y3RgtC+0LPQviDQtNC90Y8/JzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRWRpdAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIFJlY29yZCd9ID0gJ9Cg0LXQtNCw0LrRgtC40YDQvtCy0LDRgtGMINC30LDQv9C40YHRjCDQstGA0LXQvNC10L3QuCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBzZXR0aW5ncyd9ID0gJ9Cf0LXRgNC10LnRgtC4INC6INC90LDRgdGC0YDQvtC50LrQsNC8JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJ9Cd0LDQstC40LPQsNGG0LjRjyDQv9C+INCy0YDQtdC80LXQvdC4JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RheXMgd2l0aG91dCBlbnRyaWVzJ30gPSAn0JTQvdC4INCx0LXQtyDQt9Cw0L/QuNGB0LXQuSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICfQktGL0LHRgNCw0YLRjCDQstGB0LUg0LTQvdC4JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgZW50cnknfSA9ICfQnNCw0YHRgdC+0LLRi9C5INCy0LLQvtC0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgdGhlIHJlYXNvbiBmb3IgeW91ciBhYnNlbmNlIGZvciB0aGUgc2VsZWN0ZWQgZGF5cyd9ID0KICAgICAgICAn0JLRi9Cx0LXRgNC40YLQtSDQv9GA0LjRh9C40L3RgyDQstCw0YjQtdCz0L4g0L7RgtGB0YPRgtGB0YLQstC40Y8g0LIg0LLRi9Cx0YDQsNC90L3Ri9C1INC00L3QuCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJ9CSINC+0YLQv9GD0YHQutC1JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIHNpY2sgbGVhdmUnfSA9ICfQn9C+INCx0L7Qu9C10LfQvdC4JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAn0JIg0L7RgtCz0YPQu9C1INC30LAg0L/QtdGA0LXRgNCw0LHQvtGC0LrRgyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXF1aXJlZCBmaWVsZHMgYXJlIG1hcmtlZCB3aXRoIGEgIioiLid9ID0gJ9Ce0LHRj9C30LDRgtC10LvRjNC90YvQtSDQv9C+0LvRjyDQv9C+0LzQtdGH0LXQvdGLICIqIi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGhhdmUgdG8gZmlsbCBpbiBzdGFydCBhbmQgZW5kIHRpbWUgb3IgYSB0aW1lIHBlcmlvZC4nfSA9ICfQndC10L7QsdGF0L7QtNC40LzQviDQt9Cw0L/QvtC70L3QuNGC0Ywg0LLRgNC10LzRjyDQvdCw0YfQsNC70LAg0Lgg0L7QutC+0L3Rh9Cw0L3QuNGPINC40LvQuCDQv9C10YDQuNC+0LQg0LLRgNC10LzQtdC90LguJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICfQn9C70LDQvdC40YDQvtCy0LDQvdC40LUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJ9Cf0YDQuNC80LXRh9Cw0L3QuNC1INC00L7Qu9C20L3QviDQsdGL0YLRjCDQvdC1INC80LXQvdC10LUgOCDRgdC40LzQstC+0LvQvtCyLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAn0J7RgtGA0LjRhtCw0YLQtdC70YzQvdC+0LUg0LfQvdCw0YfQtdC90LjQtSDQvdC10LTQvtC/0YPRgdGC0LjQvNC+Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIFN0YXJ0IHRpbWUgbWF0Y2hlcyBhbm90aGVyIGludGVydmFsLid9ID0KICAgICAgICAn0J3QtSDQtNC+0L/Rg9GB0LrQsNC10YLRgdGPINC/0L7QstGC0L7RgNC10L3QuNC1LiDQktGA0LXQvNGPINC90LDRh9Cw0LvQsCDRgdC+0L7RgtCy0LXRgtGB0YLQstGD0LXRgiDQtNGA0YPQs9C+0LzRgyDQuNC90YLQtdGA0LLQsNC70YMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgZm9ybWF0ISBQbGVhc2UgZW50ZXIgYSB0aW1lIHdpdGggdGhlIGZvcm1hdCBISDpNTS4nfSA9ICfQndC10LLQtdGA0L3Ri9C5INGE0L7RgNC80LDRgiEg0JLQstC10LTQuNGC0LUg0LLRgNC10LzRjyDQsiDRhNC+0YDQvNCw0YLQtSBISDpNTS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnMjQ6MDAgaXMgb25seSBwZXJtaXR0ZWQgYXMgZW5kIHRpbWUuJ30gPSAn0KLQvtC70YzQutC+IDI0OjAwINGA0LDQt9GA0LXRiNC10L3QviDQsiDQutCw0YfQtdGB0YLQstC1INCy0YDQtdC80LXQvdC4INC+0LrQvtC90YfQsNC90LjRjy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICfQndC10LLQtdGA0L3QvtC1INCy0YDQtdC80Y8hINCSINGB0YPRgtC60LDRhSDRgtC+0LvRjNC60L4gMjQg0YfQsNGB0LAuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VuZCB0aW1lIG11c3QgYmUgYWZ0ZXIgc3RhcnQgdGltZS4nfSA9ICfQktGA0LXQvNGPINC+0LrQvtC90YfQsNC90LjRjyDQtNC+0LvQttC90L4g0LHRi9GC0Ywg0L/QvtC30LbQtSDQstGA0LXQvNC10L3QuCDQvdCw0YfQsNC70LAuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gRW5kIHRpbWUgbWF0Y2hlcyBhbm90aGVyIGludGVydmFsLid9ID0KICAgICAgICAn0J3QtSDQtNC+0L/Rg9GB0LrQsNC10YLRgdGPINC/0L7QstGC0L7RgNC10L3QuNC1LiDQktGA0LXQvNGPINC+0LrQvtC90YfQsNC90LjRjyDRgdC+0L7RgtCy0LXRgtGB0YLQstGD0LXRgiDQtNGA0YPQs9C+0LzRgyDQuNC90YLQtdGA0LLQsNC70YMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICfQndC10LLQtdGA0L3Ri9C5INC/0LXRgNC40L7QtCEg0JIg0YHRg9GC0LrQsNGFINGC0L7Qu9GM0LrQviAyNCDRh9Cw0YHQsC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQSB2YWxpZCBwZXJpb2QgbXVzdCBiZSBncmVhdGVyIHRoYW4gemVyby4nfSA9ICfQn9GA0LDQstC40LvRjNC90YvQuSDQv9C10YDQuNC+0LQg0LTQvtC70LbQtdC9INCx0YvRgtGMINCx0L7Qu9GM0YjQtSDQvdGD0LvRjy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIE5lZ2F0aXZlIHBlcmlvZHMgYXJlIG5vdCBhbGxvd2VkLid9ID0gJ9Cd0LXQstC10YDQvdGL0Lkg0L/QtdGA0LjQvtC0ISDQntGC0YDQuNGG0LDRgtC10LvRjNC90L7QtSDQt9C90LDRh9C10L3QuNC1INC90LUg0LTQvtC/0YPRgdC60LDQtdGC0YHRjy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICfQlNC+0LHQsNCy0LjRgtGMINC+0LTQvdGDINGB0YLRgNC+0LrRgyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgY2FuIG9ubHkgc2VsZWN0IG9uZSBjaGVja2JveCBlbGVtZW50ISd9ID0gJ9CjINCy0LDRgSDQtdGB0YLRjCDQstC+0LfQvNC+0LbQvdC+0YHRgtGMINCy0YvQsdGA0LDRgtGMINGC0L7Qu9GM0LrQviDQvtC00LjQvSDRjdC70LXQvNC10L3RgiEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJ9CS0Ysg0LTQtdC50YHRgtCy0LjRgtC10LvRjNC90L4g0YDQsNCx0L7RgtCw0LvQuCDQsiDQv9C10YDQuNC+0LQg0LHQvtC70LXQt9C90Lg/JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gdmFjYXRpb24/J30gPSAn0JLRiyDQtNC10LnRgdGC0LLQuNGC0LXQu9GM0L3QviDRgNCw0LHQvtGC0LDQu9C4INCyINC/0LXRgNC40L7QtCDQvtGC0L/Rg9GB0LrQsD8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBvdmVydGltZSBsZWF2ZT8nfSA9CiAgICAgICAgJ9CS0Ysg0LTQtdC50YHRgtCy0LjRgtC10LvRjNC90L4g0YDQsNCx0L7RgtCw0LvQuCDQsiDQv9C10YDQuNC+0LQg0L7RgtCz0YPQu9C+0LI/JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJ9CS0Ysg0LTQtdC50YHRgtCy0LjRgtC10LvRjNC90L4g0YDQsNCx0L7RgtCw0LvQuCDQsdC+0LvQtdC1IDE2INGH0LDRgdC+0LI/JzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nT3ZlcnZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nIG1vbnRobHkgb3ZlcnZpZXcnfSA9ICfQnNC10YHRj9GH0L3Ri9C5INC+0YLRh9C10YIg0L4g0LfQsNGC0YDQsNGH0LXQvdC90L7QvCDQstGA0LXQvNC10L3QuCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAoSG91cnMpJ30gPSAn0J/QtdGA0LXRgNCw0LHQvtGC0LrQsCAo0YfQsNGB0YspJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0aGlzIG1vbnRoKSd9ID0gJ9Cf0LXRgNC10YDQsNCx0L7RgtC60LAgKNGN0YLQvtCz0L4g0LzQtdGB0Y/RhtCwKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAodG90YWwpJ30gPSAn0J/QtdGA0LXRgNCw0LHQvtGC0LrQsCAo0LLRgdC10LPQviknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAn0J7RgdGC0LDQstGI0LXQtdGB0Y8g0LLRgNC10LzRjyDQvtGC0LPRg9C70LAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gKERheXMpJ30gPSAn0J7RgtC/0YPRgdC6ICjQtNC90LgpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0aGlzIG1vbnRoKSd9ID0gJ9CY0YHQv9C+0LvRjNC30L7QstCw0L3QvdGL0LUg0LTQvdC4INC+0YLQv9GD0YHQutCwICjQsiDRjdGC0L7QvCDQvNC10YHRj9GG0LUpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0b3RhbCknfSA9ICfQmNGB0L/QvtC70YzQt9C+0LLQsNC90L3Ri9C1INC00L3QuCDQvtGC0L/Rg9GB0LrQsCAo0LLRgdC10LPQviknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIHZhY2F0aW9uJ30gPSAn0J7RgdGC0LDQstGI0LjQtdGB0Y8g0LTQvdC4INC+0YLQv9GD0YHQutCwJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgTGVhdmUgKERheXMpJ30gPSAn0JHQvtC70LXQt9C90YwgKNC00L3QuCknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICfQntGC0YHRg9GC0YHRgtCy0L7QstCw0Lsg0L/QviDQsdC+0LvQtdC30L3QuCAo0LIg0Y3RgtC+0Lwg0LzQtdGB0Y/RhtC1KSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlIHRha2VuICh0b3RhbCknfSA9ICfQntGC0YHRg9GC0YHRgtCy0L7QstCw0Lsg0L/QviDQsdC+0LvQtdC30L3QuCAo0LLRgdC10LPQviknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJldmlvdXMgbW9udGgnfSA9ICfQn9GA0LXQtNGL0LTRg9GJ0LjQuSDQvNC10YHRj9GGJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICfQodC70LXQtNGD0Y7RidC40Lkg0LzQtdGB0Y/Rhic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrZGF5J30gPSAn0J3QtdC00LXQu9GPJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dvcmtpbmcgSG91cnMnfSA9ICfQoNCw0LHQvtGH0LjQtSDRh9Cw0YHRiyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUb3RhbCB3b3JrZWQgaG91cnMnfSA9ICfQktGB0LXQs9C+INC+0YLRgNCw0LHQvtGC0LDQvdC90YvRhSDRh9Cw0YHQvtCyJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXJcJ3MgcHJvamVjdCBvdmVydmlldyd9ID0gJ9Ce0LHQt9C+0YAg0LTQsNC90L3Ri9GFINC/0L4g0L/Qu9Cw0L3QuNGA0L7QstCw0L3QuNGOINC00LvRjyDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAn0KfQsNGB0YsgKNC10LbQtdC80LXRgdGP0YfQvdC+KSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyAoTGlmZXRpbWUpJ30gPSAn0KfQsNGB0YsgKNC30LAg0LLQtdGB0Ywg0YHRgNC+0Log0L3QsNCx0LvRjtC00LXQvdC40Y8pJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dyYW5kIHRvdGFsJ30gPSAn0JLRgdC10LPQvic7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSByZXBvcnRpbmcnfSA9ICfQntGC0YfQtdGCINC+INCy0YDQtdC80LXQvdC4JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICfQndCw0LLQuNCz0LDRhtC40Y8g0L/QviDQvNC10YHRj9GG0LDQvCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBkYXRlJ30gPSAn0J/QtdGA0LXQudGC0Lgg0Log0LTQsNGC0LUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciByZXBvcnRzJ30gPSAn0J7RgtGH0LXRgiDQviDQv9C+0LvRjNC30L7QstCw0YLQtdC70LUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJ9CY0YLQvtCz0L4g0LfQsCDQvNC10YHRj9GGJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xpZmV0aW1lIHRvdGFsJ30gPSAn0JjRgtC+0LPQviDQt9CwINCy0YHQtSDQstGA0LXQvNGPJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIGxlYXZlJ30gPSAn0J7RgtCz0YPQu9GLINC30LAg0L/QtdGA0LXRgNCw0LHQvtGC0LrRgyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJ9Ce0YLQv9GD0YHQuic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAn0J7RgtGB0YPRgtGB0YLQstC40LUg0L/QviDQsdC+0LvQtdC30L3QuCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiByZW1haW5pbmcnfSA9ICfQntGB0YLQsNC70L7RgdGMINC00L3QtdC5INC+0YLQv9GD0YHQutCwJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgcmVwb3J0cyd9ID0gJ9Ce0YLRh9C10YLRiyDQv9C+INC/0LvQsNC90LjRgNC+0LLQsNC90LjRjic7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1Byb2plY3QKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgcmVwb3J0J30gPSAn0J7RgtGH0LXRgiDQv9C+INC/0LvQsNC90LjRgNC+0LLQsNC90LjRjic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICfQn9C10YDQtdC50YLQuCDQuiDQvtCx0LfQvtGA0YMg0L7RgtGH0LXRgtC+0LInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICfQkiDQvdCw0YHRgtC+0Y/RidC10LUg0LLRgNC10LzRjyDQv9C+0LrQsNC30LDQvdGLINGC0L7Qu9GM0LrQviDQsNC60YLQuNCy0L3Ri9C1INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQuCDQsiDRjdGC0L7QvCDQv9GA0L7QtdC60YLQtS4g0KfRgtC+0LHRiyDQuNC30LzQtdC90LjRgtGMINGN0YLQviwg0L/QvtC20LDQu9GD0LnRgdGC0LAsINC+0LHQvdC+0LLQuNGC0LUg0L3QsNGB0YLRgNC+0LnQutC4Oic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDdXJyZW50bHkgYWxsIHRpbWUgYWNjb3VudGluZyB1c2VycyBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICfQkiDQvdCw0YHRgtC+0Y/RidC10LUg0LLRgNC10LzRjyDQv9C+0LrQsNC30LDQvdGLINCy0YHQtSDQv9C+0LvRjNC30L7QstCw0YLQtdC70Lgg0LIg0Y3RgtC+0Lwg0L/RgNC+0LXQutGC0LUuINCn0YLQvtCx0Ysg0LjQt9C80LXQvdC40YLRjCwg0L/QvtC20LDQu9GD0LnRgdGC0LAsINC+0LHQvdC+0LLQuNGC0LUg0L3QsNGB0YLRgNC+0LnQutC4Oic7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byB0aWNrZXQnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdTZXR0aW5nCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgQWNjb3VudGluZyBQcm9qZWN0IFNldHRpbmdzJ30gPSAn0KDQtdC00LDQutGC0LjRgNC+0LLQsNGC0Ywg0L3QsNGB0YLRgNC+0LnQutC4INGD0YfQtdGC0LAg0LfQsNGC0YDQsNGH0LXQvdC90L7Qs9C+INCy0YDQtdC80LXQvdC4INC/0L4g0L/RgNC+0LXQutGC0YMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICfQlNC+0LHQsNCy0LjRgtGMINC/0LvQsNC90LjRgNC+0LLQsNC90LjQtSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBzZXR0aW5ncyBvdmVydmlldyd9ID0gJ9Cf0LXRgNC10LnRgtC4INC6INC+0LHQt9C+0YDRgyDQvdCw0YHRgtGA0L7QtdC6JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBQcm9qZWN0J30gPSAn0JTQvtCx0LDQstC40YLRjCDQv9C70LDQvdC40YDQvtCy0LDQvdC40LUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAn0KDQtdC00LDQutGC0LjRgNC+0LLQsNGC0Ywg0L3QsNGB0YLRgNC+0LnQutC4INC/0LvQsNC90LjRgNC+0LLQsNC90LjRjyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgcHJvamVjdCB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAn0KPQttC1INC10YHRgtGMINC/0YDQvtC10LrRgiDRgSDRgtCw0LrQuNC8INC90LDQuNC80LXQvdC+0LLQsNC90LjQtdC8LiDQktGL0LHQtdGA0LjRgtC1INC00YDRg9Cz0L7QtS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICfQoNC10LTQsNC60YLQuNGA0L7QstCw0YLRjCDQvdCw0YHRgtGA0L7QudC60Lgg0YPRh9C10YLQsCDQt9Cw0YLRgNCw0YfQtdC90L3QvtCz0L4g0LLRgNC10LzQtdC90LgnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICfQlNC+0LHQsNCy0LjRgtGMINC30LDQtNCw0YfRgyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgYSB1c2VyIHRvIHRpbWUgYWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRmlsdGVyIGZvciBwcm9qZWN0cywgdGFza3Mgb3IgdXNlcnMnfSA9ICfQpNC40LvRjNGC0YAg0LTQu9GPINC/0YDQvtC10LrRgtC+0LIsINC30LDQtNCw0Ycg0LjQu9C4INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC5JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAn0J/QtdGA0LjQvtC00Ysg0LLRgNC10LzQtdC90Lgg0L3QtSDQvNC+0LPRg9GCINCx0YvRgtGMINGD0LTQsNC70LXQvdGLLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IExpc3QnfSA9ICfQodC/0LjRgdC+0Log0L/RgNC+0LXQutGC0L7Qsic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICfQodC/0LjRgdC+0Log0LfQsNC00LDRhyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgVGFzayd9ID0gJ9CU0L7QsdCw0LLQuNGC0Ywg0LfQsNC00LDRh9GDJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGFzayBTZXR0aW5ncyd9ID0gJ9Cg0LXQtNCw0LrRgtC40YDQvtCy0LDRgtGMINC90LDRgdGC0YDQvtC50LrQuCDQt9Cw0LTQsNGH0LgnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlcmUgaXMgYWxyZWFkeSBhIHRhc2sgd2l0aCB0aGlzIG5hbWUuIFBsZWFzZSwgY2hvb3NlIGEgZGlmZmVyZW50IG9uZS4nfSA9CiAgICAgICAgJ9Cj0LbQtSDQtdGB0YLRjCDQt9Cw0LTQsNGH0LAg0YEg0YLQsNC60LjQvCDQuNC80LXQvdC10LwsINCS0YvQsdC10YDQuNGC0LUg0LTRgNGD0LPQvtC1Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIExpc3QnfSA9ICfQodC/0LjRgdC+0Log0L/QvtC70YzQt9C+0LLQsNGC0LXQu9C10LknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBTZXR0aW5ncyd9ID0gJ9Cf0L7Qu9GM0LfQvtCy0LDRgtC10LvRjNGB0LrQuNC1INC90LDRgdGC0YDQvtC50LrQuCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gc2VlIG92ZXJ0aW1lcyd9ID0gJ9Cf0L7Qu9GM0LfQvtCy0LDRgtC10LvRjiDRgNCw0LfRgNC10YjQtdC90L4g0L/RgNC+0YHQvNCw0YLRgNC40LLQsNGC0Ywg0LLRgNC10LzRjyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaG93IE92ZXJ0aW1lJ30gPSAn0J/QvtC60LDQt9Cw0YLRjCDQv9C10YDQtdGA0LDQsdC+0YLQutGDJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBjcmVhdGUgcHJvamVjdHMnfSA9ICfQn9C+0LvRjNC30L7QstCw0YLQtdC70Y4g0YDQsNC30YDQtdGI0LXQvdC+INGB0L7Qt9C00LDQstCw0YLRjCDQv9GA0L7QtdC60YLRiyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyBwcm9qZWN0IGNyZWF0aW9uJ30gPSAn0KDQsNC30YDQtdGI0LjRgtGMINGB0L7Qt9C00LDQvdC40LUg0L/RgNC+0LXQutGC0L7Qsic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gc2tpcCB0aW1lIGFjY291bnRpbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsb3cgdGltZSBhY2NvdW50aW5nIHNraXBwaW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIHRoaXMgb3B0aW9uIGlzIHNlbGVjdGVkLCB0aW1lIGFjY291bnRpbmcgaXMgZWZmZWN0aXZlbHkgb3B0aW9uYWwgZm9yIHRoZSB1c2VyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIHdpbGwgYmUgbm8gd2FybmluZ3MgYWJvdXQgbWlzc2luZyBlbnRyaWVzIGFuZCBubyBlbnRyeSBlbmZvcmNlbWVudC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFNwYW5zJ30gPSAn0J/RgNC+0LzQtdC20YPRgtC60Lgg0LLRgNC10LzQtdC90LgnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEJlZ2luJ30gPSAn0J3QsNGH0LDQu9C+INC/0LXRgNC40L7QtNCwJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBFbmQnfSA9ICfQmtC+0L3QtdGGINC/0LXRgNC40L7QtNCwJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RheXMgb2YgVmFjYXRpb24nfSA9ICfQlNC90Lgg0L7RgtC/0YPRgdC60LAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgcGVyIFdlZWsnfSA9ICfQp9Cw0YHQvtCyINCyINC90LXQtNC10LvQtSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBdXRob3JpemVkIE92ZXJ0aW1lJ30gPSAn0KDQsNC30YDQtdGI0LXQvdC90LDRjyDQv9C10YDQtdGA0LDQsdC+0YLQutCwJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N0YXJ0IERhdGUnfSA9ICfQlNCw0YLQsCDQvdCw0YfQsNC70LAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGluc2VydCBhIHZhbGlkIGRhdGUuJ30gPSAn0JLQstC10LTQuNGC0LUg0L/RgNCw0LLQuNC70YzQvdGD0Y4g0LTQsNGC0YMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VuZCBEYXRlJ30gPSAn0JTQsNGC0LAg0L7QutC+0L3Rh9Cw0L3QuNGPJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBlbmQgbXVzdCBiZSBhZnRlciBwZXJpb2QgYmVnaW4uJ30gPSAn0JLRgNC10LzRjyDQvtC60L7QvdGH0LDQvdC40Y8g0L/QtdGA0LjQvtC00LAg0LTQvtC70LbQvdC+INCx0YvRgtGMINC/0L7Qt9C20LUg0LLRgNC10LzQtdC90Lgg0LXQs9C+INC90LDRh9Cw0LvQsC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJ9Ce0YHRgtCw0LvQvtGB0YwsINC00L3QtdC5JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlZWtseSBIb3Vycyd9ID0gJ9Cn0LDRgdC+0LIg0LIg0L3QtdC00LXQu9GOJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lJ30gPSAn0J/QtdGA0LXRgNCw0LHQvtGC0LrQsC/QodCy0LXRgNGF0YPRgNC+0YfQvdGL0LUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJ9Cd0LUg0LfQsNC00LDQvdGLINC/0LXRgNC40L7QtNGLINCy0YDQtdC80LXQvdC4Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICfQlNC+0LHQsNCy0LjRgtGMINC/0LXRgNC40LQg0LLRgNC10LzQtdC90LgnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAn0J/QvtGB0LzQvtGC0YDQtdGC0Ywg0LfQsNC/0LjRgdGMINCy0YDQtdC80LXQvdC4JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAn0J/RgNC+0YHQvNC+0YLRgCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcmV2aW91cyBkYXknfSA9ICfQn9GA0LXQtNGL0LTRg9GJ0LjQuSDQtNC10L3RjCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJ9Ch0LvQtdC00YPRjtGJ0LjQuSDQtNC10L3RjCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICfQlNC70Y8g0Y3RgtC+0LPQviDQtNC90Y8g0LTQsNC90L3Ri9C1INC90LUg0L3QsNC50LTQtdC90YsuJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nRWRpdC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGluc2VydCBXb3JraW5nIFVuaXRzISd9ID0gJ9Cd0LUg0YPQtNCw0LvQvtGB0Ywg0LTQvtCx0LDQstC40YLRjCDRgNCw0LHQvtGH0LjQtSDQtdC00LjQvdC40YbRiyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBQcm9qZWN0cyd9ID0gJ9Cf0L7RgdC70LXQtNC90LjQtSDQv9GA0L7QtdC60YLRiy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAn0J3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0YXRgNCw0L3QuNGC0Ywg0L3QsNGB0YLRgNC+0LnQutC4LCDRgtCw0Log0LrQsNC6INCyINGB0YPRgtC60LDRhSAyNCDRh9Cw0YHQsCEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGRlbGV0ZSBXb3JraW5nIFVuaXRzISd9ID0gJ9Cd0LUg0YPQtNCw0LvQvtGB0Ywg0YPQtNCw0LvQuNGC0Ywg0YDQsNCx0L7Rh9C40LUg0LXQtNC40L3QuNGG0YshJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgRGF0ZSBpcyBvdXQgb2YgbGltaXQsIGJ1dCB5b3UgaGF2ZW5cJ3QgaW5zZXJ0IHRoaXMgZGF5IHlldCwgc28geW91IGdldCBvbmUoISkgY2hhbmNlIHRvIGluc2VydCd9ID0KICAgICAgICAn0K3RgtCwINC00LDRgtCwINCy0L3QtSDQtNC40LDQv9Cw0LfQvtC90LAsINC90L4g0LLRiyDQtdGJ0LUg0L3QtSDRg9GB0YLQsNC90L7QstC40LvQuCDRjdGC0L7RgiDQtNC10L3RjCwg0YLQsNC6INGH0YLQviDQstCw0Lwg0LTQsNC10YLRgdGPINC+0LTQuNC9KCEpINGI0LDQvdGBINC00LvRjyDQtdC1INGD0YHRgtCw0L3QvtCy0LrQuCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIFdvcmtpbmcgRGF5cyd9ID0gJ9Cd0LXQv9C+0LvQvdGL0LUg0YDQsNCx0L7Rh9C40LUg0LTQvdC4JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Y2Nlc3NmdWwgaW5zZXJ0ISd9ID0gJ9CU0LDQvdC90YvQtSDQt9Cw0L3QtdGB0LXQvdGLINGD0YHQv9C10YjQvdC+ISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFcnJvciB3aGlsZSBpbnNlcnRpbmcgbXVsdGlwbGUgZGF0ZXMhJ30gPSAn0J7RiNC40LHQutCwINC/0YDQuCDQstCy0L7QtNC1INC90LXRgdC60L7Qu9GM0LrQuNGFINC00LDRgiEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAn0JTQsNC90L3Ri9C1INC00LvRjyDRgNCw0LfQvdGL0YUg0LTQsNGCINCy0LLQtdC00LXQvdGLINGD0YHQv9C10YjQvdC+ISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbnRlcmVkIGRhdGUgd2FzIGludmFsaWQhIERhdGUgd2FzIGNoYW5nZWQgdG8gdG9kYXkuJ30gPSAn0JLQstC10LTQtdC90L3QsNGPINC00LDRgtCwINC90LXQstC10YDQvdCwISDQl9Cw0LzQtdC90LXQvdCwINC90LAg0YLQtdC60YPRidGD0Y4hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIHRpbWUgcGVyaW9kIGNvbmZpZ3VyZWQsIG9yIHRoZSBzcGVjaWZpZWQgZGF0ZSBpcyBvdXRzaWRlIG9mIHRoZSBkZWZpbmVkIHRpbWUgcGVyaW9kcy4nfSA9CiAgICAgICAgJ9Cd0LUg0L3QsNGB0YLRgNC+0LXQvSDQstGA0LXQvNC10L3QvdC+0Lkg0L/QtdGA0LjQvtC0LCDQuNC70Lgg0YPQutCw0LfQsNC90L3QsNGPINC00LDRgtCwINC90LDRhdC+0LTQuNGC0YHRjyDQt9CwINC/0YDQtdC00LXQu9Cw0LzQuCDQvtC/0YDQtdC00LXQu9C10L3QvdGL0YUg0LLRgNC10LzQtdC90L3Ri9GFINC/0LXRgNC40L7QtNC+0LIuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICfQn9C+0LbQsNC70YPQudGB0YLQsCwg0YHQstGP0LbQuNGC0LXRgdGMINGBINCw0LTQvNC40L3QuNGB0YLRgNCw0YLQvtGA0L7QvCDQstGA0LXQvNC10L3QvdC+0LPQviDRg9GH0LXRgtCwLCDRh9GC0L7QsdGLINC+0LHQvdC+0LLQuNGC0Ywg0LLQsNGI0Lgg0LLRgNC10LzQtdC90L3Ri9C1INC/0LXRgNC40L7QtNGLISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMYXN0IFNlbGVjdGVkIFByb2plY3RzJ30gPSAn0J/QvtGB0LvQtdC00L3QuNC1INCy0YvQsdGA0LDQvdC90YvQtSDQv9GA0L7QtdC60YLRiyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGwgUHJvamVjdHMnfSA9ICfQktGB0LUg0L/RgNC+0LXQutGC0YsnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnUmVwb3J0aW5nUHJvamVjdDog0KLRgNC10LHRg9C10YLRgdGPIFByb2plY3RJRCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmcgUHJvamVjdCd9ID0gJ9Cf0YDQvtC10LrRgiDRgdC+0YHRgtCw0LLQu9C10L3QuNGPINC+0YLRh9C10YLQvtCyJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJ9Ch0L7RgdGC0LDQstC70LXQvdC40LUg0L7RgtGH0LXRgtC+0LInOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgVGlja2V0SUQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTm8gUHJvamVjdCBmb3IgVGlja2V0IGZvdW5kLid9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byB1cGRhdGUgdXNlciBzZXR0aW5ncyEnfSA9ICfQndC1INGD0LTQsNC70L7RgdGMINC+0LHQvdC+0LLQuNGC0Ywg0L3QsNGB0YLRgNC+0LnQutC4INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCBhZGRlZCEnfSA9ICfQlNC+0LHQsNCy0LvQtdC90L4g0L/Qu9Cw0L3QuNGA0L7QstCw0L3QuNC1ISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAn0J/Qu9Cw0L3QuNGA0L7QstCw0L3QuNC1INC+0LHQvdC+0LLQu9C10L3QviEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayBhZGRlZCEnfSA9ICfQl9Cw0LTQsNGH0LAg0LTQvtCx0LDQstC70LXQvdCwISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIHVwZGF0ZWQhJ30gPSAn0JfQsNC00LDRh9CwINC+0LHQvdC+0LLQu9C10L3QsCEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAn0J3QtdCy0LXRgNC90YvQuSBVc2VySUQhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJ9Cd0LUg0YPQtNCw0LvQvtGB0Ywg0LLRgdGC0LDQstC40YLRjCDQtNCw0L3QvdGL0LUg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gYWRkIHRpbWUgcGVyaW9kISd9ID0gJ9Cd0LUg0YPQtNCw0LvQvtGB0Ywg0LTQvtCx0LDQstC40YLRjCDQv9C10YDQuNC0INCy0YDQtdC80LXQvdC4ISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAn0J/QsNGA0LDQvNC10YLRgCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHVwZGF0ZWQhJ30gPSAn0J/QvtC70YzQt9C+0LLQsNGC0LXQu9GMINC+0LHQvdC+0LLQu9C10L0hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgYWRkZWQhJ30gPSAn0J/QvtC70YzQt9C+0LLQsNGC0LXQu9GMINC00L7QsdCw0LLQu9C10L0hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05ldyBVc2VyJ30gPSAn0J3QvtCy0YvQuSDQv9C+0LvRjNC30L7QstCw0YLQtdC70YwnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJ9Ch0YLQsNGC0YPRgSDQv9C10YDQuNC+0LTQsCc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnVmlldzog0KLRgNC10LHRg9C10YLRgdGPICAlcyEnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ob3RpZmljYXRpb24vVGltZUFjY291bnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBpbnNlcnQgeW91ciB3b3JraW5nIGhvdXJzISd9ID0gJ9CS0LLQtdC00LjRgtC1INCS0LDRiNC4INGA0LDQsdC+0YfQuNC1INGH0LDRgdGLISc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL091dHB1dC9IVE1ML1Rvb2xCYXIvSW5jb21wbGV0ZVdvcmtpbmdEYXlzLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyd9ID0gJ9Cd0LXQv9C+0LvQvdGL0LUg0YDQsNCx0L7Rh9C40LUg0LTQvdC4JzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50LkVkaXRUaW1lUmVjb3JkcwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhdCBsZWFzdCBvbmUgZGF5ISd9ID0gJ9CS0YvQsdC10YDQuNGC0LUg0YXQvtGC0Y8g0LHRiyDQvtC00LjQvSDQtNC10L3RjCEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBFbnRyeSd9ID0gJ9Cc0LDRgdGB0L7QstGL0Lkg0LLQstC+0LQnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICfQktGL0LHQtdGA0LjRgtC1INC/0YDQuNGH0LjQvdGDINC+0YLRgdGD0YLRgdGC0LLQuNGPISc7CgogICAgIyBKUyBGaWxlOiBUaW1lQWNjb3VudGluZy5BZ2VudAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVsZXRlIFRpbWUgQWNjb3VudGluZyBFbnRyeSd9ID0gJ9Cj0LTQsNC70LjRgtGMINC30LDQv9C40YHRjCDQt9Cw0YLRgNCw0YfQtdC90L3QvtCz0L4g0LLRgNC10LzQtdC90LgnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICfQn9C+0LTRgtCy0LXRgNC00LjRgtC1INCy0YHRgtCw0LLQutGDJzsKCiAgICAjIFN5c0NvbmZpZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWN0aXZhdGUgdGhlIHN5bmNocm9uaXNhdGlvbiBvZiBUaWNrZXQtVGltZVVuaXRzIGludG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZ2VudCBpbnRlcmZhY2Ugbm90aWZpY2F0aW9uIG1vZHVsZSB0byBzZWUgdGhlIG51bWJlciBvZiBpbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyBmb3IgdGhlIHVzZXIuJ30gPQogICAgICAgICfQnNC+0LTRg9C70Ywg0YPQstC10LTQvtC80LvQtdC90LjQuSwg0LTQu9GPINC+0YLQvtCx0YDQsNC20LXQvdC40Y8g0LrQvtC70LjRh9C10YHRgtCy0LAg0L3QtdC30LDQstC10YDRiNC10L3QvdGL0YUg0YDQsNCx0L7Rh9C40YUg0LTQvdC10Lkg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPINCyINC40L3RgtC10YDRhNC10LnRgdC1INCw0LPQtdC90YLQsCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICfQmNC80LXQvdCwINC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOINC00LvRjyDQvdC+0LLRi9GFINC00LXQudGB0YLQstC40LkuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgbmFtZSBmb3IgbmV3IHByb2plY3RzLid9ID0gJ9Cd0LDQt9Cy0LDQvdC40LUg0L3QvtCy0L7Qs9C+INC/0YDQvtC10LrRgtCwINC/0L4t0YPQvNC+0LvRh9Cw0L3QuNGOLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRhdGUgZW5kLid9ID0gJ9CX0L3QsNGH0LXQvdC40LUg0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4g0LTQu9GPINC00LDRgtGLINC+0LrQvtC90YfQsNC90LjRjy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkYXRlIHN0YXJ0Lid9ID0gJ9CX0L3QsNGH0LXQvdC40LUg0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4g0LTQu9GPINC00LDRgtGLINC90LDRh9Cw0LvQsC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICfQl9C90LDRh9C10L3QuNC1INC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOINC00LvRjyDQvtC/0LjRgdCw0L3QuNGPLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGxlYXZlIGRheXMuJ30gPSAn0JfQvdCw0YfQtdC90LjQtSDQv9C+INGD0LzQvtC70YfQsNC90LjRjiDQtNC70Y8g0L7RgdGC0LDQstGI0LjRhdGB0Y8g0LTQvdC10LkuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3Igb3ZlcnRpbWUuJ30gPSAn0JfQvdCw0YfQtdC90LjQtSDQv9C+INGD0LzQvtC70YfQsNC90LjRjiDQtNC70Y8g0L/QtdGA0LXRgNCw0LHQvtGC0LrQuC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciB0aGUgc3RhbmRhcmQgd2Vla2x5IGhvdXJzLid9ID0gJ9CX0L3QsNGH0LXQvdC40LUg0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4g0LTQu9GPINGB0YLQsNC90LTQsNGA0YLQvdGL0YUg0YDQsNCx0L7Rh9C40YUg0YfQsNGB0L7Qsi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBhY3Rpb25zLid9ID0gJ9CX0L3QsNGH0LXQvdC40LUg0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4g0YHRgtCw0YLRg9GB0LAg0L3QvtCy0YvRhSDQtNC10LnRgdGC0LLQuNC5Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHN0YXR1cyBmb3IgbmV3IHByb2plY3RzLid9ID0gJ9CX0L3QsNGH0LXQvdC40LUg0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4g0LTQu9GPINGB0YLQsNGC0YPRgdCwINC90L7QstGL0YUg0L/RgNC+0LXQutGC0L7Qsi4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICfQl9C90LDRh9C10L3QuNC1INC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOINC00LvRjyDRgdGC0LDRgtGD0YHQsCDQvdC+0LLRi9GFINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC5Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZpbmVzIHRoZSBwcm9qZWN0cyBmb3Igd2hpY2ggYSByZW1hcmsgaXMgcmVxdWlyZWQuIElmIHRoZSBSZWdFeHAgbWF0Y2hlcyBvbiB0aGUgcHJvamVjdCwgeW91IGhhdmUgdG8gaW5zZXJ0IGEgcmVtYXJrIHRvby4gVGhlIFJlZ0V4cCB1c2UgdGhlIHNteCBwYXJhbWV0ZXIuJ30gPQogICAgICAgICfQl9Cw0LTQsNC10YIg0L/RgNC+0LXQutGC0Ysg0LTQu9GPINC60L7RgtC+0YDRi9GFINGC0YDQtdCx0YPQtdGC0YHRjyDQt9Cw0L3QtdGB0LXQvdC40LUg0LfQsNC80LXRh9Cw0L3QuNC5LiDQldGB0LvQuCBSZWdFeHAg0LLQtdGA0L3QviDQtNC70Y8g0L/RgNC+0LXQutGC0LAsINCy0Ysg0LTQvtC70LbQvdGLINC00L7QsdCw0LLQuNGC0Ywg0LfQsNC80LXRh9Cw0L3QuNGPINGC0L7QttC1LiDQlNC70Y8gUmVnRXhwINC40YHQv9C+0LvRjNC30YPQudGC0LUg0L/QsNGA0LDQvNC10YLRgCBzbXguJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICfQl9Cw0LTQsNC10YIsINC80L7QttC10YIg0LvQuCDQvNC+0LTRg9C70Ywg0L7RgtGH0LXRgtC+0LIg0LPQtdC90LXRgNC40YDQvtCy0LDRgtGMINC40L3RhNC+0YDQvNCw0YbQuNGOINC/0L4g0YPRh9C10YLRgyDQt9Cw0YLRgNCw0YfQtdC90L3QvtCz0L4g0LLRgNC10LzQtdC90LguJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSBhY2NvdW50aW5nIHNldHRpbmdzLid9ID0gJ9Cg0LXQtNCw0LrRgtC40YDQvtCy0LDRgtGMINC90LDRgdGC0YDQvtC50LrQuCDRg9GH0LXRgtCwINC30LDRgtGA0LDRh9C10L3QvdC+0LPQviDQstGA0LXQvNC10L3QuC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIHJlY29yZC4nfSA9ICfQoNC10LTQsNC60YLQuNGA0L7QstCw0YLRjCDQt9Cw0L/QuNGB0Ywg0LLRgNC10LzQtdC90LguJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJ9CU0LvRjyDQutCw0LrQvtCz0L4g0LrQvtC70LjRh9C10YHRgtCy0LAg0L/RgNC+0YjQtdC00YjQuNGFINC00L3QtdC5INCy0Ysg0LzQvtC20LXRgtC1INCy0L3QtdGB0YLQuCDQtNCw0L3QvdGL0LUg0L4g0LLRgNC10LzQtdC90LguJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIG9ubHkgdXNlcnMgdGhhdCBoYXMgYWRkZWQgd29ya2luZyB0aW1lIHRvIHRoZSBzZWxlY3RlZCBwcm9qZWN0IGFyZSBzaG93bi4nfSA9CiAgICAgICAgJ9CV0YHQu9C4INCy0LrQu9GO0YfQtdC90L4sINC+0YLQvtCx0YDQsNC20LDRjtGC0YHRjyDRgtC+0LvRjNC60L4g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9C4LCDQutC+0YLQvtGA0YvQtSDQt9Cw0L3QvtGB0LjQu9C4INC30LDRgtGA0LDRgtGLINCy0YDQtdC80LXQvdC4INCyINCy0YvQsdGA0LDQvdC90YvQuSDQv9GA0L7QtdC60YIuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBkcm9wZG93biBlbGVtZW50cyBpbiB0aGUgZWRpdCBzY3JlZW4gYXJlIGNoYW5nZWQgdG8gbW9kZXJuaXplZCBhdXRvY29tcGxldGlvbiBmaWVsZHMuJ30gPQogICAgICAgICfQldGB0LvQuCDQstC60LvRjtGH0LXQvdC+LCDQstGL0L/QsNC00LDRjtGJ0LjQtSDQv9C+0LvRjyDRgdC/0LjRgdC60LAg0L3QsCDRjdC60YDQsNC90LUg0YDQtdC00LDQutGC0LjRgNC+0LLQsNC90LjRjyDQv9GA0LXQvtCx0YDQsNC30YPRjtGC0YHRjyDQsiDQvNC+0LTQtdGA0L3QuNC30LjRgNC+0LLQsNC90L3Ri9C1INC/0L7Qu9GPINCw0LLRgtC+0LfQsNCy0LXRgNGI0LXQvdC40Y8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBmaWx0ZXIgZm9yIHRoZSBwcmV2aW91cyBwcm9qZWN0cyBjYW4gYmUgdXNlZCBpbnN0ZWFkIHR3byBsaXN0IG9mIHByb2plY3RzIChsYXN0IGFuZCBhbGwgb25lcykuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBUaW1lQWNjb3VudGluZzo6RW5hYmxlQXV0b0NvbXBsZXRpb24gaXMgZW5hYmxlZC4nfSA9CiAgICAgICAgJ9CV0YHQu9C4INCy0LrQu9GO0YfQtdC90L4sINGC0L4g0YTQuNC70YzRgtGAINC00LvRjyDQv9GA0LXQtNGL0LTRg9GJ0LjRhSDQv9GA0L7QtdC60YLQvtCyINC80L7QttC10YIg0LHRi9GC0Ywg0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvSDQstC80LXRgdGC0L4g0LTQstGD0YUg0YHQv9C40YHQutC+0LIgKNC/0L7RgdC70LXQtNC90LjRhSDQuCDQstGB0LXRhSDQv9GA0L7QtdC60YLQvtCyKS4g0K3RgtC+INC00L7RgdGC0YPQv9C90L4g0YLQvtC70YzQutC+INC10YHQu9C4INC/0LDRgNCw0LzQtdGC0YAgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uINCw0LrRgtC40LLQuNGA0L7QstCw0L0uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBmaWx0ZXIgZm9yIHRoZSBwcmV2aW91cyBwcm9qZWN0cyBpcyBhY3RpdmUgYnkgZGVmYXVsdCBpZiB0aGVyZSBhcmUgdGhlIHByZXZpb3VzIHByb2plY3RzLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgRW5hYmxlQXV0b0NvbXBsZXRpb24gYW5kIFRpbWVBY2NvdW50aW5nOjpVc2VGaWx0ZXIgYXJlIGVuYWJsZWQuJ30gPQogICAgICAgICfQldGB0LvQuCDQstC60LvRjtGH0LXQvdC+LCDRgtC+INGE0LjQu9GM0YLRgCDQtNC70Y8g0L/RgNC10LTRi9C00YPRidC40YUg0L/RgNC+0LXQutGC0L7QsiDQstC60LvRjtGH0LXQvSDQv9C+INGD0LzQvtC70YfQsNC90LjRjiDQv9GA0Lgg0L3QsNC70LjRh9C40LUg0L/RgNC10LTRi9C00YPRidC40YUg0L/RgNC+0LXQutGC0L7Qsi4g0K3RgtC+INC00L7RgdGC0YPQv9C90L4g0YLQvtC70YzQutC+INC10YHQu9C4INC/0LDRgNCw0LzQtdGC0YDRiyBFbmFibGVBdXRvQ29tcGxldGlvbiDQuCBUaW1lQWNjb3VudGluZzo6VXNlRmlsdGVyINCw0LrRgtC40LLQuNGA0L7QstCw0L3Riy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIHVzZXIgaXMgYWxsb3dlZCB0byBlbnRlciAib24gdmFjYXRpb24gbGVhdmUiLCAib24gc2ljayBsZWF2ZSIgYW5kICJvbiBvdmVydGltZSBsZWF2ZSIgdG8gbXVsdGlwbGUgZGF0ZXMgYXQgb25jZS4nfSA9CiAgICAgICAgJ9CV0YHQu9C4INCy0LrQu9GO0YfQtdC90L4sINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjiDRgNCw0LfRgNC10YjQtdC90L4g0LLQstC+0LTQuNGC0Ywg0LfQvdCw0YfQtdC90LjRjyAi0J7RgdGC0LDQu9C+0YHRjCDQsiDQvtGC0L/RgdC60LUiLCAi0J7RgdGC0LDQu9C+0YHRjCDQtNC90LXQuSDQv9C+INCx0L7Qu9C10LfQvdC4IiDQuCAi0J7RgdGC0LDQu9C+0YHRjCDQv9C10YDQtdGA0LDQsdC+0YLQutC4IiDQv9C+INC90LXRgdC60L7Qu9GM0LrQviDQtNCw0YIg0YHRgNCw0LfRgy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWF4aW11bSBudW1iZXIgb2Ygd29ya2luZyBkYXlzIGFmdGVyIHdoaWNoIHRoZSB3b3JraW5nIHVuaXRzIGhhdmUgdG8gYmUgaW5zZXJ0ZWQuJ30gPQogICAgICAgICfQnNCw0LrRgS4g0LrQvtC70LjRh9C10YHRgtCy0L4g0YDQsNCx0L7Rh9C40YUg0LTQvdC10LksINC/0L7RgdC70LUg0LrQvtGC0L7RgNGL0YUg0YDQsNCx0L7Rh9C40LUg0LXQtNC40L3QuNGG0Ysg0LTQvtC70LbQvdGLINCx0YvRgtGMINC30LDQvdC10YHQtdC90YsuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICfQnNCw0LrRgdC40LzQsNC70YzQvdC+INC60L7Qu9C40YfQtdGB0YLQstC+INGA0LDQsdC+0YfQuNGFINC00L3QtdC5LCDQv9C+0YHQu9C1INC60L7RgtC+0YDQvtCz0L4g0LLRi9C00LDQtdGC0YHRjyDQv9GA0LXQtNGD0L/RgNC10LbQtNC10L3QuNC1INC+INGC0L7QvCwg0YfRgtC+INC00LDQvdC90YvQtSDQvdC1INCy0LLQvtC00LjQu9C40YHRjC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAn0J7QsdC30L7RgCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHRpbWUgcmVwb3J0aW5nLid9ID0gJ9Ce0YLRh9C10YIg0L4g0LLRgNC10LzQtdC90Lgg0L/QviDQv9GA0L7QtdC60YLRgyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZWd1bGFyIGV4cHJlc3Npb25zIGZvciBjb25zdHJhaW5pbmcgYWN0aW9uIGxpc3QgYWNjb3JkaW5nIHRvIHNlbGVjdGVkIHByb2plY3QuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9ucyBmb3IgYWN0aW9uKHMpLid9ID0KICAgICAgICAn0KDQtdCz0YPQu9GP0YDQvdGL0LUg0LLRi9GA0LDQttC10L3QuNGPINC00LvRjyDRgdC+0YHRgtCw0LLQu9C10L3QuNGPINGB0L/QuNGB0LrQsCDQtNC10LnRgdGC0LLQuNC5INCyINGB0L7QvtGC0LLQtdGC0YHRgtCy0LjQuCDRgSDQstGL0LHRgNCw0L3QvdGL0Lwg0L/RgNC+0LXQutGC0L7QvC4g0JrQu9GO0Ycg0LTQvtC70LbQtdC9INGB0L7QtNC10YDQttCw0YLRjCDRgNC10LPRg9C70Y/RgNC90L7QtSDQstGL0YDQsNC20LXQvdC40LUg0LTQu9GPINC/0YDQvtC10LrRgtCwKNC+0LIpLCDQodC+0LTQtdGA0LbQsNC90LjQtSAtINGA0LXQs9GD0LvRj9GA0L3Ri9C1INCy0YvRgNCw0LbQtdC90LjRjyDQtNC70Y8g0LTQtdC50YHRgtCy0LjRjyjQuSkuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBwcm9qZWN0IGxpc3QgYWNjb3JkaW5nIHRvIHVzZXIgZ3JvdXBzLiBLZXkgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9uIGZvciBwcm9qZWN0KHMpLCBjb250ZW50IGNvbnRhaW5zIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIGdyb3Vwcy4nfSA9CiAgICAgICAgJ9Cg0LXQs9GD0LvRj9GA0L3Ri9C1INCy0YvRgNCw0LbQtdC90LjRjyDQtNC70Y8g0YHQvtGB0YLQsNCy0LvQtdC90LjRjyDRgdC/0LjRgdC60LAg0LTQtdC50YHRgtCy0LjQuSDQsiDQt9Cw0LLQuNGB0LjQvNC+0YHRgtC4INC+0YIg0LPRgNGD0L/QvyDQv9C+0LvRjNC30L7QstCw0YLQtdC70LXQuS4g0JrQu9GO0Ycg0LTQvtC70LbQtdC9INGB0L7QtNC10YDQttCw0YLRjCDRgNC10LPRg9C70Y/RgNC90L7QtSDQstGL0YDQsNC20LXQvdC40LUg0LTQu9GPINC/0YDQvtC10LrRgtCwKNC+0LIpLCDQodC+0LTQtdGA0LbQsNC90LjQtSAtINGB0L/QuNGB0L7QuiDQs9GA0YPQv9C/LCDRgNCw0LfQtNC10LvQtdC90L3Ri9GFINC30LDQv9GP0YLQvtC5Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaG93IGFjY291bnRlZCB0aW1lcyBmb3IgdGhpcyB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3BlY2lmaWVzIGlmIHdvcmtpbmcgaG91cnMgY2FuIGJlIGluc2VydGVkIHdpdGhvdXQgc3RhcnQgYW5kIGVuZCB0aW1lcy4nfSA9CiAgICAgICAgJ9CX0LDQtNCw0LXRgiwg0LzQvtC20L3QviDQu9C4INC30LDQvdC+0YHQuNGC0Ywg0YDQsNCx0L7Rh9C40LUg0YfQsNGB0Ysg0LHQtdC3INGD0LrQsNC30LDQvdC40Y8g0LLRgNC10LzQtdC90Lgg0L3QsNGH0LDQu9CwINC4INC+0LrQvtC90YfQsNC90LjRjy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3luY2hyb25pc2UgY3VzdG9tZXJzIGFzIGEgbmV3IHByb2plY3QgaWYgdGhleSBleGlzdHMgaW4gdGhlIGN1c3RvbWVyIGRhdGFiYXNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgbW9kdWxlIGZvcmNlcyBpbnNlcnRzIGluIFRpbWVBY2NvdW50aW5nLid9ID0gJ9Ct0YLQvtGCINC80L7QtNGD0LvRjCDRg9GB0LrQvtGA0Y/QtdGCINCy0LLQvtC0INC00LDQvdC90YvRhSDQsiBUaW1lQWNjb3VudGluZy4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICfQnNC+0LTRg9C70Ywg0YPQstC10LTQvtC80LvQtdC90LjQuSwg0LTQu9GPINC+0YLQvtCx0YDQsNC20LXQvdC40Y8g0LrQvtC70LjRh9C10YHRgtCy0LAg0L3QtdC30LDQstC10YDRiNC10L3QvdGL0YUg0YDQsNCx0L7Rh9C40YUg0LTQvdC10Lkg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgdGltZSByZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBBY2NvdW50aW5nJ30gPSAn0KPRh9C10YIg0LfQsNGC0YDQsNGH0LXQvdC90L7Qs9C+INCy0YDQtdC80LXQvdC4JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgUmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBlZGl0Lid9ID0gJ9Cg0LXQtNCw0LrRgtC40YDQvtCy0LDQvdC40LUg0LfQsNGC0YDQsNGCINCy0YDQtdC80LXQvdC4Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgb3ZlcnZpZXcuJ30gPSAn0J7QsdC30L7RgCDQt9Cw0YLRgNCw0YIg0LLRgNC10LzQtdC90LguJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyByZXBvcnRpbmcuJ30gPSAn0J7RgtGH0LXRgtGLINC+INC30LDRgtGA0YLQsNGFINCy0YDQtdC80LXQvdC4Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAn0J3QsNGB0YLRgNC+0LnQutC4INGD0YfQtdGC0LAg0LfQsNGC0YDQsNGH0LXQvdC90L7Qs9C+INCy0YDQtdC80LXQvdC4Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdGlja2V0IHJlcG9ydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHZpZXcuJ30gPSAn0J/RgNC+0YHQvNC+0YLRgCDQt9Cw0YLRgNCw0YIg0LLRgNC10LzQtdC90LguJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZy4nfSA9ICfQo9GH0LXRgiDQt9Cw0YLRgNCw0YfQtdC90L3QvtCz0L4g0LLRgNC10LzQtdC90LgnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG8gdXNlIGlmIHNvbWUgYWN0aW9ucyByZWR1Y2VkIHRoZSB3b3JraW5nIGhvdXJzIChmb3IgZXhhbXBsZSwgaWYgb25seSBoYWxmIG9mIHRoZSB0cmF2ZWxpbmcgdGltZSBpcyBwYWlkIEtleSA9PiB0cmF2ZWxpbmc7IENvbnRlbnQgPT4gNTApLid9ID0KICAgICAgICAn0JTQu9GPINC40YHQv9C+0LvRjNC30L7QstCw0L3QuNGPLCDQtdGB0LvQuCDQvdC10LrQvtGC0L7RgNGL0LUg0LTQtdC50YHRgtCy0LjRjyDRg9C80LXQvdGM0YjQsNGO0YIg0YDQsNCx0L7Rh9C40LUg0YfQsNGB0YsgKNC90LDQv9GA0LjQvNC10YAsINC10YHQu9C4INGC0L7Qu9GM0LrQviDQv9C+0LvQvtCy0LjQvdCwINCy0YDQtdC80LXQvdC4INCyINC/0YPRgtC4INC+0L/Qu9Cw0YfQuNCy0LDQtdGC0YHRjyAtIEtleSA9PiB0cmF2ZWxpbmc7IENvbnRlbnQgPT4gNTApLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2UgU2VydmljZSBhcyBBY3Rpb24uIFBsZWFzZSBhZGQgYXMga2V5IHRoZSB0aW1lYWNvdW50aW5nIGFjdGlvbiBhbmQgdGhlIHNlcnZpY2UgYXMgdmFsdWUuIFJlZ0V4IGFyZSBhbGxvd2VkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIG5lZWQgdG8gc2V0IGEgZGVmYXVsdCBhY3Rpb24gaWQgd2hlbiB3ZSBzeW5jIFRpbWVVbml0cyB0byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIG5lZWQgdG8gc2V0IGEgZGVmYXVsdCBwcm9qZWN0IGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBzYXZlIHRoZSBBcnRpY2xlIFRpbWVVbml0IHRvIGEgRHluYW1pY0ZpZWxkIGZyb20gdHlwZSAiQXJ0aWNsZSIuIFBsZWFzZSBhZGQgaGVyZSB0aGUgbmFtZSBvZiB0aGUgZmllbGQgaWYgdGhlIGluaXRpbmFsIG5hbWUgaXMgY2hhbmdlZC4nfSA9CiAgICAgICAgJyc7CgoKICAgIHB1c2ggQHsgJFNlbGYtPntKYXZhU2NyaXB0U3RyaW5nc30gLy8gW10gfSwgKAogICAgJ0NhbmNlbCcsCiAgICAnQ29uZmlybSBpbnNlcnQnLAogICAgJ0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknLAogICAgJ01hc3MgRW50cnknLAogICAgJ05vJywKICAgICdQbGVhc2UgY2hvb3NlIGEgcmVhc29uIGZvciBhYnNlbmNlIScsCiAgICAnUGxlYXNlIGNob29zZSBhdCBsZWFzdCBvbmUgZGF5IScsCiAgICAnU3VibWl0JywKICAgICdZZXMnLAogICAgKTsKCn0KCjE7Cg==</File>
        <File Location="Kernel/Language/sl_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OnNsX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIEVuZCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGwgUHJvamVjdHMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBUaWNrZXRJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBObyBQcm9qZWN0IGZvciBUaWNrZXQgZm91bmQuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIHVwZGF0ZSB1c2VyIHNldHRpbmdzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gYWRkIHRpbWUgcGVyaW9kISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICcnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/sr_Cyrl_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OnNyX0N5cmxfVGltZUFjY291bnRpbmc7Cgp1c2Ugc3RyaWN0Owp1c2Ugd2FybmluZ3M7CnVzZSB1dGY4OwoKc3ViIERhdGEgewogICAgbXkgJFNlbGYgPSBzaGlmdDsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpY2tldEFjY291bnRUaW1lCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgVGltZSBBY2NvdW50aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZSBkYXRlIG11c3QgYmUgdmFsaWQgYW5kIG5vdCBsYXRlciB0aGFuIHRvZGF5ISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFyayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdGFydCB0aW1lJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VuZCB0aW1lJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBtdXN0IGVudGVyIGEgc3RhcnQgYW5kIGFuIGVuZCB0aW1lLCBvciBhIHBvc2l0aXZlIHBlcmlvZCBvZiB1cCB0byAyNCBob3Vycy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgdGltZSBwZXJpb2QgbXVzdCBiZSBnaXZlbiBpbiBob3VycyBhbmQgY2FuIGJlIGEgZGVjaW1hbCBudW1iZXIuJ30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdEZWxldGUKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RvIHlvdSByZWFsbHkgd2FudCB0byBkZWxldGUgdGhlIFRpbWUgQWNjb3VudGluZyBvZiB0aGlzIGRheT8nfSA9CiAgICAgICAgJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ0VkaXQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBSZWNvcmQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF0ZSBOYXZpZ2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RheXMgd2l0aG91dCBlbnRyaWVzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NlbGVjdCBhbGwgZGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXNzIGVudHJ5J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgdGhlIHJlYXNvbiBmb3IgeW91ciBhYnNlbmNlIGZvciB0aGUgc2VsZWN0ZWQgZGF5cyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIHZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIHNpY2sgbGVhdmUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gb3ZlcnRpbWUgbGVhdmUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVxdWlyZWQgZmllbGRzIGFyZSBtYXJrZWQgd2l0aCBhICIqIi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGhhdmUgdG8gZmlsbCBpbiBzdGFydCBhbmQgZW5kIHRpbWUgb3IgYSB0aW1lIHBlcmlvZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPcmlnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGFkZCBhIHJlbWFyayB3aXRoIG1vcmUgdGhhbiA4IGNoYXJhY3RlcnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Vyc3BydW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05lZ2F0aXZlIHRpbWVzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBTdGFydCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIGZvcm1hdCEgUGxlYXNlIGVudGVyIGEgdGltZSB3aXRoIHRoZSBmb3JtYXQgSEg6TU0uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57JzI0OjAwIGlzIG9ubHkgcGVybWl0dGVkIGFzIGVuZCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHRpbWUhIEEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSBtdXN0IGJlIGFmdGVyIHN0YXJ0IHRpbWUuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gRW5kIHRpbWUgbWF0Y2hlcyBhbm90aGVyIGludGVydmFsLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQSB2YWxpZCBwZXJpb2QgbXVzdCBiZSBncmVhdGVyIHRoYW4gemVyby4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIE5lZ2F0aXZlIHBlcmlvZHMgYXJlIG5vdCBhbGxvd2VkLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWJtaXQgY2hhbmdlcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgb25lIHJvdyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgY2FuIG9ubHkgc2VsZWN0IG9uZSBjaGVja2JveCBlbGVtZW50ISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHNpY2sgbGVhdmU/J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gdmFjYXRpb24/J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gb3ZlcnRpbWUgbGVhdmU/J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCBtb3JlIHRoYW4gMTYgaG91cnM/J30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nT3ZlcnZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nIG1vbnRobHkgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKEhvdXJzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgb3ZlcnRpbWUgbGVhdmUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gKERheXMpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0aGlzIG1vbnRoKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFpbmluZyB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIExlYXZlIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlIHRha2VuICh0aGlzIG1vbnRoKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlIHRha2VuICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJldmlvdXMgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV4dCBtb250aCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrZGF5J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dvcmtpbmcgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG90YWwgd29ya2VkIGhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXJcJ3MgcHJvamVjdCBvdmVydmlldyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyAobW9udGhseSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKExpZmV0aW1lKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHcmFuZCB0b3RhbCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSByZXBvcnRpbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGggTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBkYXRlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgcmVwb3J0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNb250aGx5IHRvdGFsJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xpZmV0aW1lIHRvdGFsJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gcmVtYWluaW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgcmVwb3J0cyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1Byb2plY3QKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHJlcG9ydGluZyBvdmVydmlldyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDdXJyZW50bHkgb25seSBhY3RpdmUgdXNlcnMgaW4gdGhpcyBwcm9qZWN0IGFyZSBzaG93bi4gVG8gY2hhbmdlIHRoaXMgYmVoYXZpb3IsIHBsZWFzZSB1cGRhdGUgc2V0dGluZzonfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDdXJyZW50bHkgYWxsIHRpbWUgYWNjb3VudGluZyB1c2VycyBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCByZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gdGlja2V0J30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgUHJvamVjdCBTZXR0aW5ncyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgcHJvamVjdCd9ID0gJ0RvZGFqIHByb2pla2F0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzIG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgUHJvamVjdCBTZXR0aW5ncyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgcHJvamVjdCB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCB0YXNrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBhIHVzZXIgdG8gdGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGaWx0ZXIgZm9yIHByb2plY3RzLCB0YXNrcyBvciB1c2Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHBlcmlvZHMgY2FuIG5vdCBiZSBkZWxldGVkLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBUYXNrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGFzayBTZXR0aW5ncyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgdGFzayB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBzZWUgb3ZlcnRpbWVzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIGNyZWF0ZSBwcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyBwcm9qZWN0IGNyZWF0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBza2lwIHRpbWUgYWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyB0aW1lIGFjY291bnRpbmcgc2tpcHBpbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgdGhpcyBvcHRpb24gaXMgc2VsZWN0ZWQsIHRpbWUgYWNjb3VudGluZyBpcyBlZmZlY3RpdmVseSBvcHRpb25hbCBmb3IgdGhlIHVzZXIuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlcmUgd2lsbCBiZSBubyB3YXJuaW5ncyBhYm91dCBtaXNzaW5nIGVudHJpZXMgYW5kIG5vIGVudHJ5IGVuZm9yY2VtZW50Lid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgU3BhbnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEJlZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBFbmQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF5cyBvZiBWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyBwZXIgV2Vlayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBdXRob3JpemVkIE92ZXJ0aW1lJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N0YXJ0IERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGluc2VydCBhIHZhbGlkIGRhdGUuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VuZCBEYXRlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBlbmQgbXVzdCBiZSBhZnRlciBwZXJpb2QgYmVnaW4uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xlYXZlIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2x5IEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIHRpbWUgcGVyaW9kcyBmb3VuZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRpbWUgcGVyaW9kJ30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nVmlldwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldyBUaW1lIFJlY29yZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IG9mICd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcmV2aW91cyBkYXknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV4dCBkYXknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gZGF0YSBmb3VuZCBmb3IgdGhpcyBkYXkuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nRWRpdC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGluc2VydCBXb3JraW5nIFVuaXRzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMYXN0IFByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBzYXZlIHNldHRpbmdzLCBiZWNhdXNlIGEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgZGVsZXRlIFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgRGF0ZSBpcyBvdXQgb2YgbGltaXQsIGJ1dCB5b3UgaGF2ZW5cJ3QgaW5zZXJ0IHRoaXMgZGF5IHlldCwgc28geW91IGdldCBvbmUoISkgY2hhbmNlIHRvIGluc2VydCd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0luY29tcGxldGUgV29ya2luZyBEYXlzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Y2Nlc3NmdWwgaW5zZXJ0ISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFcnJvciB3aGlsZSBpbnNlcnRpbmcgbXVsdGlwbGUgZGF0ZXMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Y2Nlc3NmdWxseSBpbnNlcnRlZCBlbnRyaWVzIGZvciBzZXZlcmFsIGRhdGVzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbnRlcmVkIGRhdGUgd2FzIGludmFsaWQhIERhdGUgd2FzIGNoYW5nZWQgdG8gdG9kYXkuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIHRpbWUgcGVyaW9kIGNvbmZpZ3VyZWQsIG9yIHRoZSBzcGVjaWZpZWQgZGF0ZSBpcyBvdXRzaWRlIG9mIHRoZSBkZWZpbmVkIHRpbWUgcGVyaW9kcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY29udGFjdCB0aGUgdGltZSBhY2NvdW50aW5nIGFkbWluaXN0cmF0b3IgdG8gdXBkYXRlIHlvdXIgdGltZSBwZXJpb2RzISd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgU2VsZWN0ZWQgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsIFByb2plY3RzJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBOZWVkIFByb2plY3RJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmcgUHJvamVjdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmcnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgVGlja2V0SUQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTm8gUHJvamVjdCBmb3IgVGlja2V0IGZvdW5kLid9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byB1cGRhdGUgdXNlciBzZXR0aW5ncyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCB1cGRhdGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZSBVc2VySUQgaXMgbm90IHZhbGlkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IHVzZXIgZGF0YSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIGFkZCB0aW1lIHBlcmlvZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2V0dGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05ldyBVc2VyJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBTdGF0dXMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdWaWV3LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3OiBOZWVkICVzISd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL091dHB1dC9IVE1ML05vdGlmaWNhdGlvbi9UaW1lQWNjb3VudGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGluc2VydCB5b3VyIHdvcmtpbmcgaG91cnMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvVG9vbEJhci9JbmNvbXBsZXRlV29ya2luZ0RheXMucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0luY29tcGxldGUgd29ya2luZyBkYXlzJ30gPSAnJzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50LkVkaXRUaW1lUmVjb3JkcwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhdCBsZWFzdCBvbmUgZGF5ISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXNzIEVudHJ5J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgYSByZWFzb24gZm9yIGFic2VuY2UhJ30gPSAnJzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NvbmZpcm0gaW5zZXJ0J30gPSAnJzsKCiAgICAjIFN5c0NvbmZpZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWN0aXZhdGUgdGhlIHN5bmNocm9uaXNhdGlvbiBvZiBUaWNrZXQtVGltZVVuaXRzIGludG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZ2VudCBpbnRlcmZhY2Ugbm90aWZpY2F0aW9uIG1vZHVsZSB0byBzZWUgdGhlIG51bWJlciBvZiBpbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyBmb3IgdGhlIHVzZXIuJ30gPQogICAgICAgICfQnNC+0LTRg9C7INC30LAg0L7QsdCw0LLQtdGI0YLQsNCy0LDRmtC1INGDINC40L3RgtC10YDRhNC10ZjRgdGDINC+0L/QtdGA0LDRgtC10YDQsCDQutC+0ZjQuCDQv9GA0LjQutCw0LfRg9GY0LUg0LHRgNC+0Zgg0L3QtdC60L7QvNC/0LvQtdGC0L3QuNGFINGA0LDQtNC90LjRhSDQtNCw0L3QsCDQt9CwINC60L7RgNC40YHQvdC40LrQsC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxzbyBzeW5jaHJvbmlzZSBjdXN0b21lcnMgYXMgYSBuZXcgcHJvamVjdCBpZiB0aGV5IGhhdmUgbm90IHlldCBiZWVuIGNyZWF0ZWQgaW4gdGhlIGN1c3RvbWVyIGRhdGFiYXNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FzIHNvb24gYXMgdGhlIHN5bmNocm9uaXNhdGlvbiBvZiB0aWNrZXQgVGltZVVuaXRzIGlzIGFjdGl2YXRlZCwgaXQgaXMgcG9zc2libGUgdG8gc2V0IHRoZSBlbnRyaWVzIFJlYWRPbmx5Lid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NyZWF0ZSBhIG5ldyB0aW1lIGFjY291bnRpbmcgZW50cnkgcmVsYXRlZCB0byB0aGUgdGlja2V0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgbmFtZSBmb3IgbmV3IGFjdGlvbnMuJ30gPSAn0J/QvtC00YDQsNC30YPQvNC10LLQsNC90L4g0LjQvNC1INC90L7QstC40YUg0LDQutGG0LjRmNCwLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IG5hbWUgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICfQn9C+0LTRgNCw0LfRg9C80LXQstCw0L3QviDQuNC80LUg0L3QvtCy0LjRhSDQv9GA0L7RmNC10LrQsNGC0LAuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAn0J/QvtC00YDQsNC30YPQvNC10LLQsNC90L4g0L/QvtC00LXRiNCw0LLQsNGa0LUg0LfQsCDQtNCw0YLRg9C8INC30LDQstGA0YjQtdGC0LrQsC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkYXRlIHN0YXJ0Lid9ID0gJ9Cf0L7QtNGA0LDQt9GD0LzQtdCy0LDQvdC+INC/0L7QtNC10YjQsNCy0LDRmtC1INC30LAg0LTQsNGC0YPQvCDQv9C+0YfQtdGC0LrQsC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICfQn9C+0LTRgNCw0LfRg9C80LXQstCw0L3QviDQv9C+0LTQtdGI0LDQstCw0ZrQtSDQt9CwINC+0L/QuNGBLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGxlYXZlIGRheXMuJ30gPSAn0J/QvtC00YDQsNC30YPQvNC10LLQsNC90L4g0L/QvtC00LXRiNCw0LLQsNGa0LUg0LfQsCDQtNCw0L3QtSDQvtC00YHRg9GB0YLQstCwLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJ9Cf0L7QtNGA0LDQt9GD0LzQtdCy0LDQvdC+INC/0L7QtNC10YjQsNCy0LDRmtC1INC30LAg0L/RgNC10LrQvtCy0YDQtdC80LXQvdC4INGA0LDQtC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciB0aGUgc3RhbmRhcmQgd2Vla2x5IGhvdXJzLid9ID0gJ9Cf0L7QtNGA0LDQt9GD0LzQtdCy0LDQvdC+INC/0L7QtNC10YjQsNCy0LDRmtC1INC30LAg0YHRgtCw0L3QtNCw0YDQtNC90YMg0YDQsNC00L3RgyDQvdC10LTQtdGZ0YMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICfQn9C+0LTRgNCw0LfRg9C80LXQstCw0L3QuCDRgdGC0LDRgtGD0YEg0LfQsCDQvdC+0LLQtSDQsNC60YbQuNGY0LUuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgcHJvamVjdHMuJ30gPSAn0J/QvtC00YDQsNC30YPQvNC10LLQsNC90Lgg0YHRgtCw0YLRg9GBINC30LAg0L3QvtCy0LUg0L/RgNC+0ZjQtdC60YLQtS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICfQn9C+0LTRgNCw0LfRg9C80LXQstCw0L3QuCDRgdGC0LDRgtGD0YEg0L3QvtCy0LjRhSDQutC+0YDQuNGB0L3QuNC60LAuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmluZXMgdGhlIHByb2plY3RzIGZvciB3aGljaCBhIHJlbWFyayBpcyByZXF1aXJlZC4gSWYgdGhlIFJlZ0V4cCBtYXRjaGVzIG9uIHRoZSBwcm9qZWN0LCB5b3UgaGF2ZSB0byBpbnNlcnQgYSByZW1hcmsgdG9vLiBUaGUgUmVnRXhwIHVzZSB0aGUgc214IHBhcmFtZXRlci4nfSA9CiAgICAgICAgJ9Ce0LTRgNC10ZLRg9GY0LUg0L/RgNC+0ZjQtdC60YLQtSDQt9CwINC60L7RmNC1INGY0LUg0L3QsNC/0L7QvNC10L3QsCDQvtCx0LDQstC10LfQvdCwLiDQkNC60L4g0YHQtSBSZWdFeHAg0L/QvtC60LvQvtC/0Lgg0L3QsCDQv9GA0L7RmNC10LrRgtGDLCDQvNC+0YDQsNGC0LUg0YLQtdC60L7RktC1INGD0L3QtdGC0Lgg0L3QsNC/0L7QvNC10L3Rgy4gUmVnRXhwINC60L7RgNC40YHRgtC4IHNteCDQv9Cw0YDQsNC80LXRgtCw0YAuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICfQntC00YDQtdGS0YPRmNC1INC00LAg0LvQuCDRgdGC0LDRgtC40YHRgtC40YfQutC4INC80L7QtNGD0Lsg0LzQvtC20LUg0LPQtdC90LXRgNC40YHQsNGC0Lgg0LjQvdGE0L7RgNC80LDRhtC40ZjQtSDQviDQvtCx0YDQsNGH0YPQvdGDINCy0YDQtdC80LXQvdCwLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IHRpbWUgYWNjb3VudGluZyBzZXR0aW5ncy4nfSA9ICfQmNC30LzQtdC90Lgg0L/QvtC00LXRiNCw0LLQsNGa0LAg0L7QsdGA0LDRh9GD0L3QsNCy0LDRmtCwINCy0YDQtdC80LXQvdCwLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IHRpbWUgcmVjb3JkLid9ID0gJ9CY0LfQvNC10L3QuCDQstGA0LXQvNC10L3RgdC60Lgg0LfQsNC/0LjRgS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRXZlcnkgdGltZSBhIGFnZW50IGFkZCBUaW1lVW5pdHMgdG8gYSB0aWNrZXQsIHdlIHN5bmMgdGhlIGluZm9ybWF0aW9uIHRvIHRoZSB0aW1lYWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRm9yIGhvdyBtYW55IGRheXMgYWdvIHlvdSBjYW4gaW5zZXJ0IHdvcmtpbmcgdW5pdHMuJ30gPSAn0JfQsCDQutC+0LvQuNC60L4g0LTQsNC90LAg0YPQvdCw0LfQsNC0INC80L7QttC10YLQtSDRg9C90LXRgtC4INGA0LDQtNC90LUg0ZjQtdC00LjQvdC40YbQtS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgb25seSB1c2VycyB0aGF0IGhhcyBhZGRlZCB3b3JraW5nIHRpbWUgdG8gdGhlIHNlbGVjdGVkIHByb2plY3QgYXJlIHNob3duLid9ID0KICAgICAgICAn0JDQutC+INGY0LUg0LDQutGC0LjQstC40YDQsNC90L4sINC/0YDQuNC60LDQt9Cw0L3QuCDRgdGDINGB0LDQvNC+INC60L7RgNC40YHQvdC40YbQuCDQutC+0ZjQuCDRgdGDINC00L7QtNCw0LvQuCDRgNCw0LTQvdC+INCy0YDQtdC80LUg0YMg0LjQt9Cw0LHRgNCw0L3QuCDQv9GA0L7RmNC10LrQsNGCLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZHJvcGRvd24gZWxlbWVudHMgaW4gdGhlIGVkaXQgc2NyZWVuIGFyZSBjaGFuZ2VkIHRvIG1vZGVybml6ZWQgYXV0b2NvbXBsZXRpb24gZmllbGRzLid9ID0KICAgICAgICAn0JDQutC+INGY0LUg0LDQutGC0LjQstC40YDQsNC90L4sINC/0LDQtNCw0ZjRg9Gb0Lgg0LXQu9C10LzQtdC90YLQuCDQvdCwINC10LrRgNCw0L3RgyDQt9CwINC40LfQvNC10L3RgyDRgdC1INC80LXRmtCw0ZjRgyDRgyDQvNC+0LTQtdGA0L3QuNC30L7QstCw0L3QsCDRgdCw0LzQvtC00L7QstGA0YjQsNCy0LDRmNGD0ZvQsCDQv9C+0ZnQsC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGNhbiBiZSB1c2VkIGluc3RlYWQgdHdvIGxpc3Qgb2YgcHJvamVjdHMgKGxhc3QgYW5kIGFsbCBvbmVzKS4gSXQgY291bGQgYmUgdXNlZCBvbmx5IGlmIFRpbWVBY2NvdW50aW5nOjpFbmFibGVBdXRvQ29tcGxldGlvbiBpcyBlbmFibGVkLid9ID0KICAgICAgICAn0JDQutC+INGY0LUg0LDQutGC0LjQstC40YDQsNC90L4sINGE0LjQu9GC0LXRgCDQv9GA0LXRgtGF0L7QtNC90LjRhSDQv9GA0L7RmNC10LrQsNGC0LAg0YHQtSDQvNC+0LbQtSDQutC+0YDQuNGB0YLQuNGC0Lgg0YPQvNC10YHRgtC+INC00LLQtSDQu9C40YHRgtC1INC/0YDQvtGY0LXQutCw0YLQsCAo0L/QvtGB0LvQtdC00ZrQuCDQuCDRgdCy0LgpLiDQnNC+0LbQtSDRgdC1INC60L7RgNC40YHRgtC40YLQuCDRgdCw0LzQviDQsNC60L4g0ZjQtSBUaW1lQWNjb3VudGluZzo6RW5hYmxlQXV0b0NvbXBsZXRpb24g0LDQutGC0LjQstC40YDQsNC90L4uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBmaWx0ZXIgZm9yIHRoZSBwcmV2aW91cyBwcm9qZWN0cyBpcyBhY3RpdmUgYnkgZGVmYXVsdCBpZiB0aGVyZSBhcmUgdGhlIHByZXZpb3VzIHByb2plY3RzLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgRW5hYmxlQXV0b0NvbXBsZXRpb24gYW5kIFRpbWVBY2NvdW50aW5nOjpVc2VGaWx0ZXIgYXJlIGVuYWJsZWQuJ30gPQogICAgICAgICfQkNC60L4g0ZjQtSDQsNC60YLQuNCy0LjRgNCw0L3Qviwg0YTQuNC70YLQtdGAINC/0YDQtdGC0YXQvtC00L3QuNGFINC/0YDQvtGY0LXQutCw0YLQsCDRmNC1INC/0L7QtNGA0LDQt9GD0LzQtdCy0LDQvdC+INCw0LrRgtC40LLQsNC9INCw0LrQviDQuNC80LAg0L/RgNC+0ZjQtdC60LDRgtCwINC+0LQg0L/RgNC1LiDQnNC+0LbQtSDRgdC1INC60L7RgNC40YHRgtC40YLQuCDRgdCw0LzQviDQsNC60L4g0ZjQtSBFbmFibGVBdXRvQ29tcGxldGlvbiDQuCBUaW1lQWNjb3VudGluZzo6VXNlRmlsdGVyINCw0LrRgtC40LLQuNGA0LDQvdC+Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAn0JDQutC+INGY0LUg0LDQutGC0LjQstC40YDQsNC90L4sINC60L7RgNC40YHQvdC40LrRgyDRmNC1INC00L7Qt9Cy0L7RmdC10L3QviDQtNCwINGD0L3QtdGB0LUgItC90LAg0L7QtNC80L7RgNGDIiwgItC90LAg0LHQvtC70L7QstCw0ZrRgyIg0LggItC90LAg0YHQu9C+0LHQvtC00L3QuNC8INC00LDQvdC40LzQsCIg0L3QsCDQstC40YjQtSDQtNCw0YLRg9C80LAg0L7QtNGY0LXQtNC90L7QvC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWF4aW11bSBudW1iZXIgb2Ygd29ya2luZyBkYXlzIGFmdGVyIHdoaWNoIHRoZSB3b3JraW5nIHVuaXRzIGhhdmUgdG8gYmUgaW5zZXJ0ZWQuJ30gPQogICAgICAgICfQnNCw0LrRgdC40LzQsNC70L3QuCDQsdGA0L7RmCDRgNCw0LTQvdC40YUg0LTQsNC90LAg0L/QvtGB0LvQtSDQutC+0LMg0YLRgNC10LHQsCDQtNC+0LTQsNGC0Lgg0YDQsNC00L3QtSDRmNC10LTQuNC90LjRhtC1Lic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXhpbXVtIG51bWJlciBvZiB3b3JraW5nIGRheXMgd2l0aG91dCB3b3JraW5nIHVuaXRzIGVudHJ5IGFmdGVyIHdoaWNoIGEgd2FybmluZyB3aWxsIGJlIHNob3duLid9ID0KICAgICAgICAn0JzQsNC60YHQuNC80LDQu9C90Lgg0LHRgNC+0Zgg0YDQsNC00L3QuNGFINC00LDQvdCwINCx0LXQtyDRg9C90L7RgdCwINGA0LDQtNC90LjRhSDRmNC10LTQuNC90LjRhtCwINC/0L7RgdC70LUg0LrQvtCzINGb0LUg0LHQuNGC0Lgg0L/RgNC40LrQsNC30LDQvdC+INGD0L/QvtC30L7RgNC10ZrQtS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAn0J/RgNC10LPQu9C10LQuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAn0JjQt9Cy0LXRiNGC0LDQstCw0ZrQtSDQviDQstGA0LXQvNC10L3RgyDQv9GA0L7RmNC10LrRgtCwLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZWd1bGFyIGV4cHJlc3Npb25zIGZvciBjb25zdHJhaW5pbmcgYWN0aW9uIGxpc3QgYWNjb3JkaW5nIHRvIHNlbGVjdGVkIHByb2plY3QuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9ucyBmb3IgYWN0aW9uKHMpLid9ID0KICAgICAgICAn0KDQtdCz0YPQu9Cw0YDQvdC4INC40LfRgNCw0LfQuCDQt9CwINC+0LPRgNCw0L3QuNGH0LDQstCw0ZrQtSDQu9C40YHRgtC1INCw0LrRhtC40ZjQsCDQv9GA0LXQvNCwINC40LfQsNCx0YDQsNC90LjQvCDQv9GA0L7RmNC10LrRgtC40LzQsC4g0JrRmdGD0Ycg0YHQsNC00YDQttC4INGA0LXQs9GD0LvQsNGA0L3QuCDQuNC30YDQsNC3INC30LAg0L/RgNC+0ZjQtdC60YIo0LUpLCDRgyDRgdCw0LTRgNC20LDRmNGDINGY0LUg0YDQtdCz0YPQu9Cw0YDQvdC4INC40LfRgNCw0Lcg0LfQsCDQsNC60YbQuNGY0YMo0LUpLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZWd1bGFyIGV4cHJlc3Npb25zIGZvciBjb25zdHJhaW5pbmcgcHJvamVjdCBsaXN0IGFjY29yZGluZyB0byB1c2VyIGdyb3Vwcy4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiBncm91cHMuJ30gPQogICAgICAgICfQoNC10LPRg9C70LDRgNC90Lgg0LjQt9GA0LDQt9C4INC30LAg0L7Qs9GA0LDQvdC40YfQsNCy0LDRmtC1INC70LjRgdGC0LUg0LDQutGG0LjRmNCwINC/0YDQtdC80LAg0LjQt9Cw0LHRgNCw0L3QuNC8INC60L7RgNC40YHQvdC40YfQutC40Lwg0LPRgNGD0L/QsNC80LAuINCa0ZnRg9GHINGB0LDQtNGA0LbQuCDRgNC10LPRg9C70LDRgNC90Lgg0LjQt9GA0LDQtyDQt9CwINC/0YDQvtGY0LXQutGCKNC1KSwg0YMg0YHQsNC00YDQttCw0ZjRgyDRmNC1INGA0LXQs9GD0LvQsNGA0L3QuCDQuNC30YDQsNC3INC30LAg0LPRgNGD0L/QtS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBhY2NvdW50ZWQgdGltZXMgZm9yIHRoaXMgdGlja2V0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NwZWNpZmllcyBpZiB3b3JraW5nIGhvdXJzIGNhbiBiZSBpbnNlcnRlZCB3aXRob3V0IHN0YXJ0IGFuZCBlbmQgdGltZXMuJ30gPQogICAgICAgICfQntC00YDQtdGS0YPRmNC1INC00LAg0LvQuCDRgNCw0LTQvdC4INGB0LDRgtC4INC80L7Qs9GDINC00LAg0YHQtSDRg9C90LXRgdGDINCx0LXQtyDQstGA0LXQvNC10L3QsCDQv9C+0YfQtdGC0LrQsCDQuCDQt9Cw0LLRgNGI0LXRgtC60LAuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICfQntCy0LDRmCDQvNC+0LTRg9C7INC90LDQvNC10ZvQtSDRg9C90L7RgSDRgyDQvtCx0YDQsNGH0YPQvSDQstGA0LXQvNC10L3QsC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICfQntCy0LDRmCDQvNC+0LTRg9C7INC30LAg0L7QsdCw0LLQtdGI0YLQsNCy0LDRmtC1INC00LDRmNC1INGD0L/QvtC30L7RgNC10ZrQtSDQsNC60L4g0LjQvNCwINC/0YDQtdCy0LjRiNC1INC90LXQutC+0LzQv9C70LXRgtC90LjRhSDRgNCw0LTQvdC40YUg0LTQsNC90LAuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCB0aW1lIHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIEFjY291bnRpbmcnfSA9ICfQntCx0YDQsNGH0YPQvdCw0LLQsNGa0LUg0LLRgNC10LzQtdC90LAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBSZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIGVkaXQuJ30gPSAn0KPRgNC10ZLQuNCy0LDRmtC1INC+0LHRgNCw0YfRg9C90LDQstCw0ZrQsCDQstGA0LXQvNC10L3QsC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJ9Cf0YDQtdCz0LvQtdC0INC+0LHRgNCw0YfRg9C90LDQstCw0ZrQsCDQstGA0LXQvNC10L3QsC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHJlcG9ydGluZy4nfSA9ICfQmNC30LLQtdGI0YLQsNGY0Lgg0L7QsdGA0LDRh9GD0L3QsNCy0LDRmtCwINCy0YDQtdC80LXQvdCwLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAn0J/QvtC00LXRiNCw0LLQsNGa0LAg0L7QsdGA0LDRh9GD0L3QsNCy0LDRmtCwINCy0YDQtdC80LXQvdCwLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdGlja2V0IHJlcG9ydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHZpZXcuJ30gPSAn0J/RgNC10LPQu9C10LQg0L7QsdGA0LDRh9GD0L3QsNCy0LDRmtCwINCy0YDQtdC80LXQvdCwLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcuJ30gPSAn0J7QsdGA0LDRh9GD0L3QsNCy0LDRmtC1INCy0YDQtdC80LXQvdCwLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICfQl9CwINGD0L/QvtGC0YDQtdCx0YMg0LDQutC+INC90LXQutC1INCw0LrRhtC40ZjQtSDRgdC80LDRmtGD0ZjRgyDRgNCw0LTQvdC1INGB0LDRgtC1ICjQvdCwINC/0YDQuNC80LXRgCwg0LDQutC+INGB0LUg0L/Qu9Cw0ZvQsCDRgdCw0LzQviDQv9C+0LvQsCDQstGA0LXQvNC10L3QsCDQv9GD0YLQvtCy0LDRmtCwINCa0ZnRg9GHID0+INC/0YPRgtC+0LLQsNGa0LU7INCh0LDQtNGA0LbQsNGYID0+IDUwKS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/sr_Latn_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OnNyX0xhdG5fVGltZUFjY291bnRpbmc7Cgp1c2Ugc3RyaWN0Owp1c2Ugd2FybmluZ3M7CnVzZSB1dGY4OwoKc3ViIERhdGEgewogICAgbXkgJFNlbGYgPSBzaGlmdDsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpY2tldEFjY291bnRUaW1lCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgVGltZSBBY2NvdW50aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZSBkYXRlIG11c3QgYmUgdmFsaWQgYW5kIG5vdCBsYXRlciB0aGFuIHRvZGF5ISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFyayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdGFydCB0aW1lJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VuZCB0aW1lJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBtdXN0IGVudGVyIGEgc3RhcnQgYW5kIGFuIGVuZCB0aW1lLCBvciBhIHBvc2l0aXZlIHBlcmlvZCBvZiB1cCB0byAyNCBob3Vycy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgdGltZSBwZXJpb2QgbXVzdCBiZSBnaXZlbiBpbiBob3VycyBhbmQgY2FuIGJlIGEgZGVjaW1hbCBudW1iZXIuJ30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdEZWxldGUKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RvIHlvdSByZWFsbHkgd2FudCB0byBkZWxldGUgdGhlIFRpbWUgQWNjb3VudGluZyBvZiB0aGlzIGRheT8nfSA9CiAgICAgICAgJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ0VkaXQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBSZWNvcmQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF0ZSBOYXZpZ2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RheXMgd2l0aG91dCBlbnRyaWVzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NlbGVjdCBhbGwgZGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXNzIGVudHJ5J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgdGhlIHJlYXNvbiBmb3IgeW91ciBhYnNlbmNlIGZvciB0aGUgc2VsZWN0ZWQgZGF5cyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIHZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIHNpY2sgbGVhdmUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gb3ZlcnRpbWUgbGVhdmUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVxdWlyZWQgZmllbGRzIGFyZSBtYXJrZWQgd2l0aCBhICIqIi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGhhdmUgdG8gZmlsbCBpbiBzdGFydCBhbmQgZW5kIHRpbWUgb3IgYSB0aW1lIHBlcmlvZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPcmlnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGFkZCBhIHJlbWFyayB3aXRoIG1vcmUgdGhhbiA4IGNoYXJhY3RlcnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Vyc3BydW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05lZ2F0aXZlIHRpbWVzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBTdGFydCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIGZvcm1hdCEgUGxlYXNlIGVudGVyIGEgdGltZSB3aXRoIHRoZSBmb3JtYXQgSEg6TU0uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57JzI0OjAwIGlzIG9ubHkgcGVybWl0dGVkIGFzIGVuZCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHRpbWUhIEEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSBtdXN0IGJlIGFmdGVyIHN0YXJ0IHRpbWUuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gRW5kIHRpbWUgbWF0Y2hlcyBhbm90aGVyIGludGVydmFsLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQSB2YWxpZCBwZXJpb2QgbXVzdCBiZSBncmVhdGVyIHRoYW4gemVyby4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIE5lZ2F0aXZlIHBlcmlvZHMgYXJlIG5vdCBhbGxvd2VkLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWJtaXQgY2hhbmdlcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgb25lIHJvdyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgY2FuIG9ubHkgc2VsZWN0IG9uZSBjaGVja2JveCBlbGVtZW50ISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHNpY2sgbGVhdmU/J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gdmFjYXRpb24/J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gb3ZlcnRpbWUgbGVhdmU/J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCBtb3JlIHRoYW4gMTYgaG91cnM/J30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nT3ZlcnZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nIG1vbnRobHkgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKEhvdXJzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgb3ZlcnRpbWUgbGVhdmUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gKERheXMpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0aGlzIG1vbnRoKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFpbmluZyB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIExlYXZlIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlIHRha2VuICh0aGlzIG1vbnRoKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlIHRha2VuICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJldmlvdXMgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV4dCBtb250aCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrZGF5J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dvcmtpbmcgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG90YWwgd29ya2VkIGhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXJcJ3MgcHJvamVjdCBvdmVydmlldyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyAobW9udGhseSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKExpZmV0aW1lKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHcmFuZCB0b3RhbCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSByZXBvcnRpbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGggTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBkYXRlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgcmVwb3J0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNb250aGx5IHRvdGFsJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xpZmV0aW1lIHRvdGFsJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gcmVtYWluaW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgcmVwb3J0cyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1Byb2plY3QKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHJlcG9ydGluZyBvdmVydmlldyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDdXJyZW50bHkgb25seSBhY3RpdmUgdXNlcnMgaW4gdGhpcyBwcm9qZWN0IGFyZSBzaG93bi4gVG8gY2hhbmdlIHRoaXMgYmVoYXZpb3IsIHBsZWFzZSB1cGRhdGUgc2V0dGluZzonfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDdXJyZW50bHkgYWxsIHRpbWUgYWNjb3VudGluZyB1c2VycyBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCByZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gdGlja2V0J30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgUHJvamVjdCBTZXR0aW5ncyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgcHJvamVjdCd9ID0gJ0RvZGFqIHByb2pla2F0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzIG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgUHJvamVjdCBTZXR0aW5ncyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgcHJvamVjdCB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCB0YXNrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBhIHVzZXIgdG8gdGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGaWx0ZXIgZm9yIHByb2plY3RzLCB0YXNrcyBvciB1c2Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHBlcmlvZHMgY2FuIG5vdCBiZSBkZWxldGVkLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBUYXNrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGFzayBTZXR0aW5ncyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgdGFzayB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBzZWUgb3ZlcnRpbWVzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIGNyZWF0ZSBwcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyBwcm9qZWN0IGNyZWF0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBza2lwIHRpbWUgYWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyB0aW1lIGFjY291bnRpbmcgc2tpcHBpbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgdGhpcyBvcHRpb24gaXMgc2VsZWN0ZWQsIHRpbWUgYWNjb3VudGluZyBpcyBlZmZlY3RpdmVseSBvcHRpb25hbCBmb3IgdGhlIHVzZXIuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlcmUgd2lsbCBiZSBubyB3YXJuaW5ncyBhYm91dCBtaXNzaW5nIGVudHJpZXMgYW5kIG5vIGVudHJ5IGVuZm9yY2VtZW50Lid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgU3BhbnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEJlZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBFbmQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF5cyBvZiBWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyBwZXIgV2Vlayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBdXRob3JpemVkIE92ZXJ0aW1lJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N0YXJ0IERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGluc2VydCBhIHZhbGlkIGRhdGUuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VuZCBEYXRlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBlbmQgbXVzdCBiZSBhZnRlciBwZXJpb2QgYmVnaW4uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xlYXZlIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2x5IEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIHRpbWUgcGVyaW9kcyBmb3VuZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRpbWUgcGVyaW9kJ30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nVmlldwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldyBUaW1lIFJlY29yZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IG9mICd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcmV2aW91cyBkYXknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV4dCBkYXknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gZGF0YSBmb3VuZCBmb3IgdGhpcyBkYXkuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nRWRpdC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGluc2VydCBXb3JraW5nIFVuaXRzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMYXN0IFByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBzYXZlIHNldHRpbmdzLCBiZWNhdXNlIGEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgZGVsZXRlIFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgRGF0ZSBpcyBvdXQgb2YgbGltaXQsIGJ1dCB5b3UgaGF2ZW5cJ3QgaW5zZXJ0IHRoaXMgZGF5IHlldCwgc28geW91IGdldCBvbmUoISkgY2hhbmNlIHRvIGluc2VydCd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0luY29tcGxldGUgV29ya2luZyBEYXlzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Y2Nlc3NmdWwgaW5zZXJ0ISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFcnJvciB3aGlsZSBpbnNlcnRpbmcgbXVsdGlwbGUgZGF0ZXMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Y2Nlc3NmdWxseSBpbnNlcnRlZCBlbnRyaWVzIGZvciBzZXZlcmFsIGRhdGVzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbnRlcmVkIGRhdGUgd2FzIGludmFsaWQhIERhdGUgd2FzIGNoYW5nZWQgdG8gdG9kYXkuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIHRpbWUgcGVyaW9kIGNvbmZpZ3VyZWQsIG9yIHRoZSBzcGVjaWZpZWQgZGF0ZSBpcyBvdXRzaWRlIG9mIHRoZSBkZWZpbmVkIHRpbWUgcGVyaW9kcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY29udGFjdCB0aGUgdGltZSBhY2NvdW50aW5nIGFkbWluaXN0cmF0b3IgdG8gdXBkYXRlIHlvdXIgdGltZSBwZXJpb2RzISd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgU2VsZWN0ZWQgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsIFByb2plY3RzJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBOZWVkIFByb2plY3RJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmcgUHJvamVjdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmcnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgVGlja2V0SUQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTm8gUHJvamVjdCBmb3IgVGlja2V0IGZvdW5kLid9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byB1cGRhdGUgdXNlciBzZXR0aW5ncyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCB1cGRhdGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZSBVc2VySUQgaXMgbm90IHZhbGlkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IHVzZXIgZGF0YSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIGFkZCB0aW1lIHBlcmlvZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2V0dGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05ldyBVc2VyJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBTdGF0dXMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdWaWV3LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3OiBOZWVkICVzISd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL091dHB1dC9IVE1ML05vdGlmaWNhdGlvbi9UaW1lQWNjb3VudGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGluc2VydCB5b3VyIHdvcmtpbmcgaG91cnMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvVG9vbEJhci9JbmNvbXBsZXRlV29ya2luZ0RheXMucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0luY29tcGxldGUgd29ya2luZyBkYXlzJ30gPSAnJzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50LkVkaXRUaW1lUmVjb3JkcwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhdCBsZWFzdCBvbmUgZGF5ISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXNzIEVudHJ5J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgYSByZWFzb24gZm9yIGFic2VuY2UhJ30gPSAnJzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NvbmZpcm0gaW5zZXJ0J30gPSAnJzsKCiAgICAjIFN5c0NvbmZpZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWN0aXZhdGUgdGhlIHN5bmNocm9uaXNhdGlvbiBvZiBUaWNrZXQtVGltZVVuaXRzIGludG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZ2VudCBpbnRlcmZhY2Ugbm90aWZpY2F0aW9uIG1vZHVsZSB0byBzZWUgdGhlIG51bWJlciBvZiBpbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyBmb3IgdGhlIHVzZXIuJ30gPQogICAgICAgICdNb2R1bCB6YSBvYmF2ZcWhdGF2YW5qZSB1IGludGVyZmVqc3Ugb3BlcmF0ZXJhIGtvamkgcHJpa2F6dWplIGJyb2ogbmVrb21wbGV0bmloIHJhZG5paCBkYW5hIHphIGtvcmlzbmlrYS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxzbyBzeW5jaHJvbmlzZSBjdXN0b21lcnMgYXMgYSBuZXcgcHJvamVjdCBpZiB0aGV5IGhhdmUgbm90IHlldCBiZWVuIGNyZWF0ZWQgaW4gdGhlIGN1c3RvbWVyIGRhdGFiYXNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FzIHNvb24gYXMgdGhlIHN5bmNocm9uaXNhdGlvbiBvZiB0aWNrZXQgVGltZVVuaXRzIGlzIGFjdGl2YXRlZCwgaXQgaXMgcG9zc2libGUgdG8gc2V0IHRoZSBlbnRyaWVzIFJlYWRPbmx5Lid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NyZWF0ZSBhIG5ldyB0aW1lIGFjY291bnRpbmcgZW50cnkgcmVsYXRlZCB0byB0aGUgdGlja2V0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgbmFtZSBmb3IgbmV3IGFjdGlvbnMuJ30gPSAnUG9kcmF6dW1ldmFubyBpbWUgbm92aWggYWtjaWphLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IG5hbWUgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICdQb2RyYXp1bWV2YW5vIGltZSBub3ZpaCBwcm9qZWthdGEuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnUG9kcmF6dW1ldmFubyBwb2RlxaFhdmFuamUgemEgZGF0dW0gemF2csWhZXRrYS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkYXRlIHN0YXJ0Lid9ID0gJ1BvZHJhenVtZXZhbm8gcG9kZcWhYXZhbmplIHphIGRhdHVtIHBvxI1ldGthLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRlc2NyaXB0aW9uLid9ID0gJ1BvZHJhenVtZXZhbm8gcG9kZcWhYXZhbmplIHphIG9waXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgbGVhdmUgZGF5cy4nfSA9ICdQb2RyYXp1bWV2YW5vIHBvZGXFoWF2YW5qZSB6YSBkYW5lIG9kc3VzdHZhLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJ1BvZHJhenVtZXZhbm8gcG9kZcWhYXZhbmplIHphIHByZWtvdnJlbWVuaSByYWQuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgdGhlIHN0YW5kYXJkIHdlZWtseSBob3Vycy4nfSA9ICdQb2RyYXp1bWV2YW5vIHBvZGXFoWF2YW5qZSB6YSBzdGFuZGFyZG51IHJhZG51IG5lZGVsanUuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICdQb2RyYXp1bWV2YW5pIHN0YXR1cyB6YSBub3ZlIGFrY2lqZS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICdQb2RyYXp1bWV2YW5pIHN0YXR1cyB6YSBub3ZlIHByb2pla3RlLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHN0YXR1cyBmb3IgbmV3IHVzZXJzLid9ID0gJ1BvZHJhenVtZXZhbmkgc3RhdHVzIG5vdmloIGtvcmlzbmlrYS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnT2RyZcSRdWplIHByb2pla3RlIHphIGtvamUgamUgbmFwb21lbmEgb2JhdmV6bmEuIEFrbyBzZSBSZWdFeHAgcG9rbG9waSBuYSBwcm9qZWt0dSwgbW9yYXRlIHRla2/EkWUgdW5ldGkgbmFwb21lbnUuIFJlZ0V4cCBrb3Jpc3RpIHNteCBwYXJhbWV0YXIuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICdPZHJlxJF1amUgZGEgbGkgc3RhdGlzdGnEjWtpIG1vZHVsIG1vxb5lIGdlbmVyaXNhdGkgaW5mb3JtYWNpamUgbyBvYnJhxI11bnUgdnJlbWVuYS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnSXptZW5pIHBvZGXFoWF2YW5qYSBvYnJhxI11bmF2YW5qYSB2cmVtZW5hLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IHRpbWUgcmVjb3JkLid9ID0gJ0l6bWVuaSB2cmVtZW5za2kgemFwaXMuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJ1phIGtvbGlrbyBkYW5hIHVuYXphZCBtb8W+ZXRlIHVuZXRpIHJhZG5lIGplZGluaWNlLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICdBa28gamUgYWt0aXZpcmFubywgcHJpa2F6YW5pIHN1IHNhbW8ga29yaXNuaWNpIGtvamkgc3UgZG9kYWxpIHJhZG5vIHZyZW1lIHUgaXphYnJhbmkgcHJvamVrYXQuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBkcm9wZG93biBlbGVtZW50cyBpbiB0aGUgZWRpdCBzY3JlZW4gYXJlIGNoYW5nZWQgdG8gbW9kZXJuaXplZCBhdXRvY29tcGxldGlvbiBmaWVsZHMuJ30gPQogICAgICAgICdBa28gamUgYWt0aXZpcmFubywgcGFkYWp1xIdpIGVsZW1lbnRpIG5hIGVrcmFudSB6YSBpem1lbnUgc2UgbWVuamFqdSB1IG1vZGVybml6b3ZhbmEgc2Ftb2RvdnLFoWF2YWp1xIdhIHBvbGphLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICdBa28gamUgYWt0aXZpcmFubywgZmlsdGVyIHByZXRob2RuaWggcHJvamVrYXRhIHNlIG1vxb5lIGtvcmlzdGl0aSB1bWVzdG8gZHZlIGxpc3RlIHByb2pla2F0YSAocG9zbGVkbmppIGkgc3ZpKS4gTW/FvmUgc2Uga29yaXN0aXRpIHNhbW8gYWtvIGplIFRpbWVBY2NvdW50aW5nOjpFbmFibGVBdXRvQ29tcGxldGlvbiBha3RpdmlyYW5vLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgaXMgYWN0aXZlIGJ5IGRlZmF1bHQgaWYgdGhlcmUgYXJlIHRoZSBwcmV2aW91cyBwcm9qZWN0cy4gSXQgY291bGQgYmUgdXNlZCBvbmx5IGlmIEVuYWJsZUF1dG9Db21wbGV0aW9uIGFuZCBUaW1lQWNjb3VudGluZzo6VXNlRmlsdGVyIGFyZSBlbmFibGVkLid9ID0KICAgICAgICAnQWtvIGplIGFrdGl2aXJhbm8sIGZpbHRlciBwcmV0aG9kbmloIHByb2pla2F0YSBqZSBwb2RyYXp1bWV2YW5vIGFrdGl2YW4gYWtvIGltYSBwcm9qZWthdGEgb2QgcHJlLiBNb8W+ZSBzZSBrb3Jpc3RpdGkgc2FtbyBha28gamUgRW5hYmxlQXV0b0NvbXBsZXRpb24gaSBUaW1lQWNjb3VudGluZzo6VXNlRmlsdGVyIGFrdGl2aXJhbm8uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSB1c2VyIGlzIGFsbG93ZWQgdG8gZW50ZXIgIm9uIHZhY2F0aW9uIGxlYXZlIiwgIm9uIHNpY2sgbGVhdmUiIGFuZCAib24gb3ZlcnRpbWUgbGVhdmUiIHRvIG11bHRpcGxlIGRhdGVzIGF0IG9uY2UuJ30gPQogICAgICAgICdBa28gamUgYWt0aXZpcmFubywga29yaXNuaWt1IGplIGRvenZvbGplbm8gZGEgdW5lc2UgIm5hIG9kbW9ydSIsICJuYSBib2xvdmFuanUiIGkgIm5hIHNsb2JvZG5pbSBkYW5pbWEiIG5hIHZpxaFlIGRhdHVtYSBvZGplZG5vbS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWF4aW11bSBudW1iZXIgb2Ygd29ya2luZyBkYXlzIGFmdGVyIHdoaWNoIHRoZSB3b3JraW5nIHVuaXRzIGhhdmUgdG8gYmUgaW5zZXJ0ZWQuJ30gPQogICAgICAgICdNYWtzaW1hbG5pIGJyb2ogcmFkbmloIGRhbmEgcG9zbGUga29nIHRyZWJhIGRvZGF0aSByYWRuZSBqZWRpbmljZS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWF4aW11bSBudW1iZXIgb2Ygd29ya2luZyBkYXlzIHdpdGhvdXQgd29ya2luZyB1bml0cyBlbnRyeSBhZnRlciB3aGljaCBhIHdhcm5pbmcgd2lsbCBiZSBzaG93bi4nfSA9CiAgICAgICAgJ01ha3NpbWFsbmkgYnJvaiByYWRuaWggZGFuYSBiZXogdW5vc2EgcmFkbmloIGplZGluaWNhIHBvc2xlIGtvZyDEh2UgYml0aSBwcmlrYXphbm8gdXBvem9yZW5qZS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnUHJlZ2xlZC4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCB0aW1lIHJlcG9ydGluZy4nfSA9ICdJenZlxaF0YXZhbmplIG8gdnJlbWVudSBwcm9qZWt0YS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIGFjdGlvbiBsaXN0IGFjY29yZGluZyB0byBzZWxlY3RlZCBwcm9qZWN0LiBLZXkgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9uIGZvciBwcm9qZWN0KHMpLCBjb250ZW50IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGFjdGlvbihzKS4nfSA9CiAgICAgICAgJ1JlZ3VsYXJuaSBpenJhemkgemEgb2dyYW5pxI1hdmFuamUgbGlzdGUgYWtjaWphIHByZW1hIGl6YWJyYW5pbSBwcm9qZWt0aW1hLiBLbGp1xI0gc2FkcsW+aSByZWd1bGFybmkgaXpyYXogemEgcHJvamVrdChlKSwgdSBzYWRyxb5hanUgamUgcmVndWxhcm5pIGl6cmF6IHphIGFrY2lqdShlKS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnUmVndWxhcm5pIGl6cmF6aSB6YSBvZ3JhbmnEjWF2YW5qZSBsaXN0ZSBha2NpamEgcHJlbWEgaXphYnJhbmltIGtvcmlzbmnEjWtpbSBncnVwYW1hLiBLbGp1xI0gc2FkcsW+aSByZWd1bGFybmkgaXpyYXogemEgcHJvamVrdChlKSwgdSBzYWRyxb5hanUgamUgcmVndWxhcm5pIGl6cmF6IHphIGdydXBlLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaG93IGFjY291bnRlZCB0aW1lcyBmb3IgdGhpcyB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3BlY2lmaWVzIGlmIHdvcmtpbmcgaG91cnMgY2FuIGJlIGluc2VydGVkIHdpdGhvdXQgc3RhcnQgYW5kIGVuZCB0aW1lcy4nfSA9CiAgICAgICAgJ09kcmXEkXVqZSBkYSBsaSByYWRuaSBzYXRpIG1vZ3UgZGEgc2UgdW5lc3UgYmV6IHZyZW1lbmEgcG/EjWV0a2EgaSB6YXZyxaFldGthLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTeW5jaHJvbmlzZSBjdXN0b21lcnMgYXMgYSBuZXcgcHJvamVjdCBpZiB0aGV5IGV4aXN0cyBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBtb2R1bGUgZm9yY2VzIGluc2VydHMgaW4gVGltZUFjY291bnRpbmcuJ30gPSAnT3ZhaiBtb2R1bCBuYW1lxIdlIHVub3MgdSBvYnJhxI11biB2cmVtZW5hLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG5vdGlmaWNhdGlvbiBtb2R1bGUgZ2l2ZXMgYSB3YXJuaW5nIGlmIHRoZXJlIGFyZSB0b28gbWFueSBpbmNvbXBsZXRlIHdvcmtpbmcgZGF5cy4nfSA9CiAgICAgICAgJ092YWogbW9kdWwgemEgb2JhdmXFoXRhdmFuamUgZGFqZSB1cG96b3JlbmplIGFrbyBpbWEgcHJldmnFoWUgbmVrb21wbGV0bmloIHJhZG5paCBkYW5hLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgdGltZSByZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBBY2NvdW50aW5nJ30gPSAnT2JyYcSNdW5hdmFuamUgdnJlbWVuYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICdVcmXEkWl2YW5qZSBvYnJhxI11bmF2YW5qYSB2cmVtZW5hLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgb3ZlcnZpZXcuJ30gPSAnUHJlZ2xlZCBvYnJhxI11bmF2YW5qYSB2cmVtZW5hLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJ0l6dmXFoXRhamkgb2JyYcSNdW5hdmFuamEgdnJlbWVuYS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHNldHRpbmdzLid9ID0gJ1BvZGXFoWF2YW5qYSBvYnJhxI11bmF2YW5qYSB2cmVtZW5hLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdGlja2V0IHJlcG9ydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHZpZXcuJ30gPSAnUHJlZ2xlZCBvYnJhxI11bmF2YW5qYSB2cmVtZW5hLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcuJ30gPSAnT2JyYcSNdW5hdmFuamUgdnJlbWVuYS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG8gdXNlIGlmIHNvbWUgYWN0aW9ucyByZWR1Y2VkIHRoZSB3b3JraW5nIGhvdXJzIChmb3IgZXhhbXBsZSwgaWYgb25seSBoYWxmIG9mIHRoZSB0cmF2ZWxpbmcgdGltZSBpcyBwYWlkIEtleSA9PiB0cmF2ZWxpbmc7IENvbnRlbnQgPT4gNTApLid9ID0KICAgICAgICAnWmEgdXBvdHJlYnUgYWtvIG5la2UgYWtjaWplIHNtYW5qdWp1IHJhZG5lIHNhdGUgKG5hIHByaW1lciwgYWtvIHNlIHBsYcSHYSBzYW1vIHBvbGEgdnJlbWVuYSBwdXRvdmFuamEgS2xqdcSNID0+IHB1dG92YW5qZTsgU2FkcsW+YWogPT4gNTApLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2UgU2VydmljZSBhcyBBY3Rpb24uIFBsZWFzZSBhZGQgYXMga2V5IHRoZSB0aW1lYWNvdW50aW5nIGFjdGlvbiBhbmQgdGhlIHNlcnZpY2UgYXMgdmFsdWUuIFJlZ0V4IGFyZSBhbGxvd2VkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIG5lZWQgdG8gc2V0IGEgZGVmYXVsdCBhY3Rpb24gaWQgd2hlbiB3ZSBzeW5jIFRpbWVVbml0cyB0byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIG5lZWQgdG8gc2V0IGEgZGVmYXVsdCBwcm9qZWN0IGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBzYXZlIHRoZSBBcnRpY2xlIFRpbWVVbml0IHRvIGEgRHluYW1pY0ZpZWxkIGZyb20gdHlwZSAiQXJ0aWNsZSIuIFBsZWFzZSBhZGQgaGVyZSB0aGUgbmFtZSBvZiB0aGUgZmllbGQgaWYgdGhlIGluaXRpbmFsIG5hbWUgaXMgY2hhbmdlZC4nfSA9CiAgICAgICAgJyc7CgoKICAgIHB1c2ggQHsgJFNlbGYtPntKYXZhU2NyaXB0U3RyaW5nc30gLy8gW10gfSwgKAogICAgJ0NhbmNlbCcsCiAgICAnQ29uZmlybSBpbnNlcnQnLAogICAgJ0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknLAogICAgJ01hc3MgRW50cnknLAogICAgJ05vJywKICAgICdQbGVhc2UgY2hvb3NlIGEgcmVhc29uIGZvciBhYnNlbmNlIScsCiAgICAnUGxlYXNlIGNob29zZSBhdCBsZWFzdCBvbmUgZGF5IScsCiAgICAnU3VibWl0JywKICAgICdZZXMnLAogICAgKTsKCn0KCjE7Cg==</File>
        <File Location="Kernel/Language/sv_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OnN2X1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJ1VwcGRyYWcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYXJrJ30gPSAnQW5tw6Ryayc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdGFydCB0aW1lJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VuZCB0aW1lJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBtdXN0IGVudGVyIGEgc3RhcnQgYW5kIGFuIGVuZCB0aW1lLCBvciBhIHBvc2l0aXZlIHBlcmlvZCBvZiB1cCB0byAyNCBob3Vycy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgdGltZSBwZXJpb2QgbXVzdCBiZSBnaXZlbiBpbiBob3VycyBhbmQgY2FuIGJlIGEgZGVjaW1hbCBudW1iZXIuJ30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdEZWxldGUKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RvIHlvdSByZWFsbHkgd2FudCB0byBkZWxldGUgdGhlIFRpbWUgQWNjb3VudGluZyBvZiB0aGlzIGRheT8nfSA9CiAgICAgICAgJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ0VkaXQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBSZWNvcmQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3MnfSA9ICdHw6UgdGlsbCBpbnN0w6RsbG5pbmdhcic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXRlIE5hdmlnYXRpb24nfSA9ICdEYXR1bS1uYXZpZ2VyaW5nJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RheXMgd2l0aG91dCBlbnRyaWVzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NlbGVjdCBhbGwgZGF5cyd9ID0gJ1bDpGxqIGFsbGEgZGFnYXInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJ1DDpSBzZW1lc3Rlcic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnU2p1a2xlZGlnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICdQcm9qZWt0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09yaWdpbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgYWRkIGEgcmVtYXJrIHdpdGggbW9yZSB0aGFuIDggY2hhcmFjdGVycyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXJzcHJ1bmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmVnYXRpdmUgdGltZXMgYXJlIG5vdCBhbGxvd2VkLid9ID0gJ05lZ2F0aXZhIHRpZGVyIMOkciBpbnRlIHRpbGzDpXRuYS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBTdGFydCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIGZvcm1hdCEgUGxlYXNlIGVudGVyIGEgdGltZSB3aXRoIHRoZSBmb3JtYXQgSEg6TU0uJ30gPSAnT2dpbHRpZ3QgZm9ybWF0ISBWw6RubGlnZW4gZnlsbCBpIGVuIHRpZCBtZWQgZm9ybWF0ZXQgSEg6TU0uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57JzI0OjAwIGlzIG9ubHkgcGVybWl0dGVkIGFzIGVuZCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHRpbWUhIEEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzLid9ID0gJ09naWx0aWcgdGlkISBFdHQgZHlnbiBoYXIgYmFyYSAyNCB0aW1tYXIuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VuZCB0aW1lIG11c3QgYmUgYWZ0ZXIgc3RhcnQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBFbmQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIEEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBIHZhbGlkIHBlcmlvZCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiB6ZXJvLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgTmVnYXRpdmUgcGVyaW9kcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Ym1pdCBjaGFuZ2VzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBvbmUgcm93J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBjYW4gb25seSBzZWxlY3Qgb25lIGNoZWNrYm94IGVsZW1lbnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gc2ljayBsZWF2ZT8nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiB2YWNhdGlvbj8nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBvdmVydGltZSBsZWF2ZT8nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIG1vcmUgdGhhbiAxNiBob3Vycz8nfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdPdmVydmlldwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSByZXBvcnRpbmcgbW9udGhseSBvdmVydmlldyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAoSG91cnMpJ30gPSAnw5Z2ZXJ0aWQgKFRpbW1hciknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJ1NlbWVzdGVyIChEYWdhciknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIHZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgTGVhdmUgKERheXMpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUgdGFrZW4gKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUgdGFrZW4gKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcmV2aW91cyBtb250aCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IG1vbnRoJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlZWtkYXknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV29ya2luZyBIb3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUb3RhbCB3b3JrZWQgaG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlclwncyBwcm9qZWN0IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChtb250aGx5KSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyAoTGlmZXRpbWUpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dyYW5kIHRvdGFsJ30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNb250aCBOYXZpZ2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIGRhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciByZXBvcnRzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRobHkgdG90YWwnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGlmZXRpbWUgdG90YWwnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgbGVhdmUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiByZW1haW5pbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCByZXBvcnRzJ30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nUHJvamVjdAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCByZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gcmVwb3J0aW5nIG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0N1cnJlbnRseSBvbmx5IGFjdGl2ZSB1c2VycyBpbiB0aGlzIHByb2plY3QgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0N1cnJlbnRseSBhbGwgdGltZSBhY2NvdW50aW5nIHVzZXJzIGFyZSBzaG93bi4gVG8gY2hhbmdlIHRoaXMgYmVoYXZpb3IsIHBsZWFzZSB1cGRhdGUgc2V0dGluZzonfSA9CiAgICAgICAgJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byB0aWNrZXQnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdTZXR0aW5nCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgQWNjb3VudGluZyBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBwcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzIG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgUHJvamVjdCBTZXR0aW5ncyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgcHJvamVjdCB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCB0YXNrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBhIHVzZXIgdG8gdGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGaWx0ZXIgZm9yIHByb2plY3RzLCB0YXNrcyBvciB1c2Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHBlcmlvZHMgY2FuIG5vdCBiZSBkZWxldGVkLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBUYXNrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGFzayBTZXR0aW5ncyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgdGFzayB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBzZWUgb3ZlcnRpbWVzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIGNyZWF0ZSBwcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyBwcm9qZWN0IGNyZWF0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBza2lwIHRpbWUgYWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyB0aW1lIGFjY291bnRpbmcgc2tpcHBpbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgdGhpcyBvcHRpb24gaXMgc2VsZWN0ZWQsIHRpbWUgYWNjb3VudGluZyBpcyBlZmZlY3RpdmVseSBvcHRpb25hbCBmb3IgdGhlIHVzZXIuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlcmUgd2lsbCBiZSBubyB3YXJuaW5ncyBhYm91dCBtaXNzaW5nIGVudHJpZXMgYW5kIG5vIGVudHJ5IGVuZm9yY2VtZW50Lid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgU3BhbnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEJlZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBFbmQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF5cyBvZiBWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyBwZXIgV2Vlayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBdXRob3JpemVkIE92ZXJ0aW1lJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N0YXJ0IERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGluc2VydCBhIHZhbGlkIGRhdGUuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VuZCBEYXRlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBlbmQgbXVzdCBiZSBhZnRlciBwZXJpb2QgYmVnaW4uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xlYXZlIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2x5IEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIHRpbWUgcGVyaW9kcyBmb3VuZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRpbWUgcGVyaW9kJ30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nVmlldwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldyBUaW1lIFJlY29yZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IG9mICd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcmV2aW91cyBkYXknfSA9ICdGw7ZyZWfDpWVuZGUgZGFnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgZGF5J30gPSAnTsOkc3Rrb21tYW5kZSBkYWcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gZGF0YSBmb3VuZCBmb3IgdGhpcyBkYXkuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nRWRpdC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGluc2VydCBXb3JraW5nIFVuaXRzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMYXN0IFByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBzYXZlIHNldHRpbmdzLCBiZWNhdXNlIGEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgZGVsZXRlIFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgRGF0ZSBpcyBvdXQgb2YgbGltaXQsIGJ1dCB5b3UgaGF2ZW5cJ3QgaW5zZXJ0IHRoaXMgZGF5IHlldCwgc28geW91IGdldCBvbmUoISkgY2hhbmNlIHRvIGluc2VydCd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0luY29tcGxldGUgV29ya2luZyBEYXlzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Y2Nlc3NmdWwgaW5zZXJ0ISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFcnJvciB3aGlsZSBpbnNlcnRpbmcgbXVsdGlwbGUgZGF0ZXMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Y2Nlc3NmdWxseSBpbnNlcnRlZCBlbnRyaWVzIGZvciBzZXZlcmFsIGRhdGVzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbnRlcmVkIGRhdGUgd2FzIGludmFsaWQhIERhdGUgd2FzIGNoYW5nZWQgdG8gdG9kYXkuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIHRpbWUgcGVyaW9kIGNvbmZpZ3VyZWQsIG9yIHRoZSBzcGVjaWZpZWQgZGF0ZSBpcyBvdXRzaWRlIG9mIHRoZSBkZWZpbmVkIHRpbWUgcGVyaW9kcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY29udGFjdCB0aGUgdGltZSBhY2NvdW50aW5nIGFkbWluaXN0cmF0b3IgdG8gdXBkYXRlIHlvdXIgdGltZSBwZXJpb2RzISd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgU2VsZWN0ZWQgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsIFByb2plY3RzJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBOZWVkIFByb2plY3RJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmcgUHJvamVjdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmcnfSA9ICdSYXBwb3J0ZXJpbmcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgVGlja2V0SUQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTm8gUHJvamVjdCBmb3IgVGlja2V0IGZvdW5kLid9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byB1cGRhdGUgdXNlciBzZXR0aW5ncyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCB1cGRhdGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZSBVc2VySUQgaXMgbm90IHZhbGlkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IHVzZXIgZGF0YSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIGFkZCB0aW1lIHBlcmlvZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2V0dGluZyd9ID0gJ0luc3TDpGxsbmluZyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05ldyBVc2VyJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBTdGF0dXMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdWaWV3LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3OiBOZWVkICVzISd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL091dHB1dC9IVE1ML05vdGlmaWNhdGlvbi9UaW1lQWNjb3VudGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGluc2VydCB5b3VyIHdvcmtpbmcgaG91cnMhJ30gPSAnVmFyIHbDpG5saWcgZnlsbCBpIGRpbmEgYXJiZXRzdGltbWFyISc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL091dHB1dC9IVE1ML1Rvb2xCYXIvSW5jb21wbGV0ZVdvcmtpbmdEYXlzLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyd9ID0gJyc7CgogICAgIyBKUyBGaWxlOiBUaW1lQWNjb3VudGluZy5BZ2VudC5FZGl0VGltZVJlY29yZHMKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnfSA9ICdWw6RubGlnZW4gdsOkbGogw6V0bWluc3RvbmUgZW4gZGFnISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXNzIEVudHJ5J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgYSByZWFzb24gZm9yIGFic2VuY2UhJ30gPSAnVsOkbmxpZ2VuIHbDpGxqIGVuIGFubGVkbmluZyBmw7ZyIGZyw6VudmFybyEnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICcnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/sw_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OnN3X1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJ0themknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYXJrJ30gPSAnTWFvbmknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICdKZSB1bmF0YWthIGt1ZnV0YSBVaGFzaWJ1IHdhIE11ZGEga3dhIHNpa3UgeWEgbGVvPyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ0VkaXQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBSZWNvcmQnfSA9ICdIYXJpcmkgcmVrb2RpIHlhIG11ZGEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3MnfSA9ICdOZW5kYSBrd2VueWUgbXBhbmdpbGlvJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJ1VhYmlyaSB3YSB0YXJlaGUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF5cyB3aXRob3V0IGVudHJpZXMnfSA9ICdTaWt1IHppc2l6b2t1d2EgbmEgbWFpbmdpem8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2VsZWN0IGFsbCBkYXlzJ30gPSAnQ2hhZ3VhIHNpa3Ugem90ZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXNzIGVudHJ5J30gPSAnSW5naXpvIGxhIHBhbW9qYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJ1RhZmFkaGFsaSBjaGFndWEgc2FiYWJ1IHlhIGt1dG9rdXdlcG8ga3dhIHNpa3UgemlsaXpvIGNoYWd1bGl3YSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJ0thdGlrYSBsaWtpem8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gc2ljayBsZWF2ZSd9ID0gJ0thdGlrYSBydWh1c2EgeWEgd2Fnb25qd2EnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT24gb3ZlcnRpbWUgbGVhdmUnfSA9ICdLYXRpa2EgcnVodXNhIHlhIG11ZGEgd2EgbnlvbmdlemEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVxdWlyZWQgZmllbGRzIGFyZSBtYXJrZWQgd2l0aCBhICIqIi4nfSA9ICdTZWhlbXUgemluYXpvdGFraXdhIHppbmEgYWxhbWEgIioiJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnVW5hdGFraXdhIGt1amF6YSBtdWRhIHdhIGt1YW56YSBuYSBrdW1hbGl6YSBhdSBtdWRhIHVsaW90dW1pa2EuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICdNcmFkaSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPcmlnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGFkZCBhIHJlbWFyayB3aXRoIG1vcmUgdGhhbiA4IGNoYXJhY3RlcnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Vyc3BydW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05lZ2F0aXZlIHRpbWVzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICdNdWRhIGhhc2kgaGF1cnVodXNpd2kuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICdNdWRhIHVsaW9qaXJ1ZGlhIGhhdXJ1aHVzaXdpLiBNdWRhIHdhIGt1YW56YSB1bmFmYW5hbmEgbmEgbXVkYSBtd2luZ2luZS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJ011dW5kbyBiYXRpbGkhIFRhZmFkaGFsaSBpbmdpemEgbXVkYSBuYSBtdXVuZG8gSEg6TU0uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57JzI0OjAwIGlzIG9ubHkgcGVybWl0dGVkIGFzIGVuZCB0aW1lLid9ID0gJzI0OjAwIGluYXJ1aHVzaXdhIGthdGlrYSBtdWRhIHdhIGt1bWFsaXphLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHRpbWUhIEEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzLid9ID0gJ011ZGEgYmF0aWxpISBTaWt1IGluYSBtYXNhYSAyNCB0dS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJ011ZGEgd2Ega3VtYWxpemEgbGF6aW1hIHV3ZSBiYWFkYSB5YSBtdWRhIHdhIGt1YW56YS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBFbmQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICdNYXNhYSB5YWxpeW9qaXJ1ZGlhIGhheWFydWh1c2l3aS4gTXVkYSB3YSBrdW1hbGl6YSB1bmFmYW5hbmEgbXVkYSBtd2luZ2luZS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIEEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzLid9ID0gJ011ZGEgYmF0aWxpISBTaWt1IGluYSBtYXNhYSAyNCB0dS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQSB2YWxpZCBwZXJpb2QgbXVzdCBiZSBncmVhdGVyIHRoYW4gemVyby4nfSA9ICdNdWRhIGhhbGFsaSB1bmEgbWFzYWEgemFpZGkgeWEgc2lmdXJpLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgTmVnYXRpdmUgcGVyaW9kcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnS2lwaW5kaSBiYXRpbGkhIFZpcGluZGkgaGFzaSBoYXZpcnVodXNpd2kuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Ym1pdCBjaGFuZ2VzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBvbmUgcm93J30gPSAnT25nZXphIHNhZnUgbW9qYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgY2FuIG9ubHkgc2VsZWN0IG9uZSBjaGVja2JveCBlbGVtZW50ISd9ID0gJ1VuYXdlemEga3VjaGFndWEgZWxlbWVudGkgbW9qYSBrYXRpa2EgY2hla2kgYm9rc2knOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJ1VuYSB1aGFraWthIHVsaWZhbnlhIGthemkgd2FrYXRpIHVwbyBsaWtpem8geWEgd2Fnb25qd2E/JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gdmFjYXRpb24/J30gPSAnVW5hIHVoYWtpa2EgdWxpZmFueWEga2F6aSB3YWthdGkgdXBvIGxpa2l6bz8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBvdmVydGltZSBsZWF2ZT8nfSA9CiAgICAgICAgJ1VuYSB1aGFraWthIHVsaWZhbnlhIGthemkgd2FrYXRpIHVwbyBsaWtpem8geWEgbXVkYSB3YSBueW9uZ2V6YT8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCBtb3JlIHRoYW4gMTYgaG91cnM/J30gPSAnVW5hIHVoYWtpa2EgdWxpZmFueWEga2F6aSB6YWlkaSB5YSBtYXNhYSAxNj8nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdPdmVydmlldwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSByZXBvcnRpbmcgbW9udGhseSBvdmVydmlldyd9ID0gJ01hcGl0aW8geWEgbXdlemkgeWEgdWFyaWZ1IHdhIG11ZGEgJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICdNdWRhIHdhIG55b2duZXphIChNYXNhYSknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnTXVkYSB3YSBueW9uZ2V6YSAobXdlemkgaHV1KSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAodG90YWwpJ30gPSAnTXVkYSB3YSBueW9uZ2V6YSAoanVtbGEpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFpbmluZyBvdmVydGltZSBsZWF2ZSd9ID0gJ011ZGEgdWxpb2Jha2kgd2EgbGlraXpvIHlhIG11ZGEgd2EgbnlvbmdlemEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gKERheXMpJ30gPSAnTGlraXpvIChzaWt1KSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICdMaWtpem8gaWxpeW9jaHVrdWxpd2EgKG13ZXppIGh1dSknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJ0xpa2l6byBpbGl5b2NodWt1bGl3YSAoanVtbGEpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFpbmluZyB2YWNhdGlvbid9ID0gJ0xpa2l6byBpbGl5b2Jha2knOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICdMaWtpem8geWEgd2Fnb25qd2EgKHNpa3UpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUgdGFrZW4gKHRoaXMgbW9udGgpJ30gPSAnTGlraXpvIHlhIHdhZ29uandhIGlsaXlvY2h1a3VsaXdhIChtd2V6aSBodXUpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUgdGFrZW4gKHRvdGFsKSd9ID0gJ0xpa2l6byB5YSB3YWdvbmp3YSBpbGl5b2NodWt1bGl3YSAoanVtbGEpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnTXdlemkgdWxpb3BpdGEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV4dCBtb250aCd9ID0gJ013ZXppIHVqYW8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJ1Npa3UgemEga2F6aSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnTWFzYWEgeWEga2F6aSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUb3RhbCB3b3JrZWQgaG91cnMnfSA9ICdKdW1sYSB5YSBtYXNhYSB5YSBrYXppJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXJcJ3MgcHJvamVjdCBvdmVydmlldyd9ID0gJ01hcGl0aW8geWEgbXJhZGkgd2EgbXR1bWlhamknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnTWFzYWEgKGt3YSBtd2V6aSknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKExpZmV0aW1lKSd9ID0gJ01hc2FhIChtdWRhIHdvdGUpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dyYW5kIHRvdGFsJ30gPSAnSnVtbGEga3V1JzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyd9ID0gJ1VhcmlmdSB3YSBtdWRhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICdVYWJpcmkgd2EgbXdlemknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJ05lbmRhIHRhcmVoZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICdSaXBvdGkgemEgbXR1bWlhamknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJ0p1bWxhIHlhIG13ZXppJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xpZmV0aW1lIHRvdGFsJ30gPSAnSnVtbGEgeWEgbXVkYSB3b3RlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIGxlYXZlJ30gPSAnTGlraXpvIHlhIG11ZGEgd2EgbnlvbmdlemEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24nfSA9ICdMaWtpem8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSd9ID0gJ0xpa2l6byB5YSB3YWdvbmp3YSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiByZW1haW5pbmcnfSA9ICdMaWtpem8gaWxpeW9iYWtpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgcmVwb3J0cyd9ID0gJ1JpcG90aSB6YSBtcmFkaSc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1Byb2plY3QKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgcmVwb3J0J30gPSAnUmlwb3RpIHlhIG1yYWRpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHJlcG9ydGluZyBvdmVydmlldyd9ID0gJ05lbmRhIGt3ZW55ZSBtYXBpdGlvIHlhIHVhcmlmdSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDdXJyZW50bHkgb25seSBhY3RpdmUgdXNlcnMgaW4gdGhpcyBwcm9qZWN0IGFyZSBzaG93bi4gVG8gY2hhbmdlIHRoaXMgYmVoYXZpb3IsIHBsZWFzZSB1cGRhdGUgc2V0dGluZzonfSA9CiAgICAgICAgJ0t3YSBzYXNhIHdhdHVtaWFqaSBhbWlsaWZ1IHR1IGthdGlrYSBtcmFkaSBodXUgd2F0YW9ueWVzaHdhLiBLdWJhZGlsaXNoYSB0YWJpYSBoaWksIHRhZmFkaGFsaSBzYXNpc2hhIG1wYW5nYWxpby4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnS3dhIHNhc2Egd2F0dW1pYWppIHdvdGUgd2EgbXVkYSB1bGlvaGVzYWJpa2Egd2F0YW9ueWVzaHdhLiBLdWJhZGlsaXNoYSB0YWJpYSBoaWksIHRhZmFkaGFsaSBzYXNpc2hhIG1wYW5nYWxpby4nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCByZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gdGlja2V0J30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgUHJvamVjdCBTZXR0aW5ncyd9ID0gJ0hhcmlyaSBVaGFzaWJ1IHdhIE11ZGEga3dlbnllIG1pcGFuZ2lsaW8geWEgbXJhZGknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICdPbmdlemEgbXJhZGknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICdOZW5kYSBrd2VueWUgbWFwaXRpbyB5YSBtcGFuZ2lpbyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgUHJvamVjdCd9ID0gJ09uZ2V6YSBtcmFkaSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFByb2plY3QgU2V0dGluZ3MnfSA9ICdIYXJpcmkgbWlwYW5naWxpbyB5YSBtcmFkaSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgcHJvamVjdCB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAnVGF5YXJpIGt1bmEgbXJhZGkgd2VueWUgaGlsaSBqaW5hLiBUYWZhZGhhbGksIGNoYWd1YSBqZW5naW5lLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgQWNjb3VudGluZyBTZXR0aW5ncyd9ID0gJ0hhcmlyaSBtaXBhbmdpbGlvIHlhIFVoYXN1YnUgd2EgTXVkYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGFzayd9ID0gJ09uZ2V6YSBrYXppJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBhIHVzZXIgdG8gdGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGaWx0ZXIgZm9yIHByb2plY3RzLCB0YXNrcyBvciB1c2Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHBlcmlvZHMgY2FuIG5vdCBiZSBkZWxldGVkLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IExpc3QnfSA9ICdPcm9kaGEgeWEgbWlyYWRpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgTGlzdCd9ID0gJ09yb2RoYSB5YSBrYXppJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBUYXNrJ30gPSAnT25nZXphIGthemknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnSGFyaXJpIG1pcGFuZ2lsaW8geWEga2F6aSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgdGFzayB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAnVGF5YXJpIGt1bmEga2F6aSB5ZW55ZSBoaWxpIGppbmEuIFRhZmFkaGFsaSBjaGFndWEgamVuZ2luZS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnT3JvZGhhIHlhIG10dW1pYWppJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJ09ueWVzaGEgbXVkYSB3YSBueW9uZ2V6YSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICdSdWh1c3UgdXRlbmdlbmV6YWppIHdhIG1yYWRpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBza2lwIHRpbWUgYWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyB0aW1lIGFjY291bnRpbmcgc2tpcHBpbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgdGhpcyBvcHRpb24gaXMgc2VsZWN0ZWQsIHRpbWUgYWNjb3VudGluZyBpcyBlZmZlY3RpdmVseSBvcHRpb25hbCBmb3IgdGhlIHVzZXIuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlcmUgd2lsbCBiZSBubyB3YXJuaW5ncyBhYm91dCBtaXNzaW5nIGVudHJpZXMgYW5kIG5vIGVudHJ5IGVuZm9yY2VtZW50Lid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgU3BhbnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEJlZ2luJ30gPSAnS3VhbnphIGt3YSBraXBlbmdlbGUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJ0t1aXNoYSBrd2Ega2lwZW5nZWxlJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RheXMgb2YgVmFjYXRpb24nfSA9ICdTaWt1IHphIGxpa2l6byc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyBwZXIgV2Vlayd9ID0gJ01hc2FhIGt3YSB3aWtpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICdNdWRhIHdhIG55b25nZXphIHVsaW9ydWh1c2l3YSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdGFydCBEYXRlJ30gPSAnVGFyZWhlIHlhIGt1YW56YSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICdUYWZhZGhhbGkgaW5naXphIHRhcmVoZSBoYWxhbGknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICdUYXJlaGUgeWEga3VtYWxpemEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICdNd2lzaG8gd2Ega2lwZW5nZWxlIGxhemltYSB1d2UgYmFhZGEgeWEgbXdhbnpvIHdhIGtpcGVuZ2VsZSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMZWF2ZSBEYXlzJ30gPSAnU2lrdSB6YSBsaWtpem8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2x5IEhvdXJzJ30gPSAnTWFzYWEgeWEgd2lraSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSd9ID0gJ011ZGEgd2EgbnlvbmdlemEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJ0hha3VuYSB2aXBlbmdlbGUgdnlhIG11ZGEgdmlsaXZ5b3BhdGlrYW5hJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCB0aW1lIHBlcmlvZCd9ID0gJ09uZ2V6YSBraXBlbmdlbGUgY2hhIG11ZGEnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnT255ZXNoYSBraXBlbmdlbGUgY2hhIG11ZGEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldyBvZiAnfSA9ICdNdW9uZWthbm8gd2EnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJldmlvdXMgZGF5J30gPSAnU2lrdSBpbGl5b3BpdGEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV4dCBkYXknfSA9ICdTaWt1IGluYXlvZndhdGEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gZGF0YSBmb3VuZCBmb3IgdGhpcyBkYXkuJ30gPSAnSGFrdW5hIGRhdGEgemlsaXpvcGF0aWthbmEga3dhIHNpa3UgaGlpJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nRWRpdC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGluc2VydCBXb3JraW5nIFVuaXRzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMYXN0IFByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBzYXZlIHNldHRpbmdzLCBiZWNhdXNlIGEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgZGVsZXRlIFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgRGF0ZSBpcyBvdXQgb2YgbGltaXQsIGJ1dCB5b3UgaGF2ZW5cJ3QgaW5zZXJ0IHRoaXMgZGF5IHlldCwgc28geW91IGdldCBvbmUoISkgY2hhbmNlIHRvIGluc2VydCd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0luY29tcGxldGUgV29ya2luZyBEYXlzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Y2Nlc3NmdWwgaW5zZXJ0ISd9ID0gJ0luZ2l6byBsaW1lZmFuaWtpd2EnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRXJyb3Igd2hpbGUgaW5zZXJ0aW5nIG11bHRpcGxlIGRhdGVzISd9ID0gJ0tvc2Ega2F0aWthIGt1aW5naXphIHRhcmVoZSB6YWlkaSB5YSBtb2phISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWNjZXNzZnVsbHkgaW5zZXJ0ZWQgZW50cmllcyBmb3Igc2V2ZXJhbCBkYXRlcyEnfSA9ICdNYWluZ2l6byB5YWxpeW9mYW5pa2l3YSBrd2EgdGFyZWhlIHphaWRpIHlhIG1vamEhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICdJbmdpem8gbGEgdGFyZWhlIG5pIGJhdGlsaSEgVGFyZWhlIGltZWJhZGlsaXNod2EgbGVvLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyB0aW1lIHBlcmlvZCBjb25maWd1cmVkLCBvciB0aGUgc3BlY2lmaWVkIGRhdGUgaXMgb3V0c2lkZSBvZiB0aGUgZGVmaW5lZCB0aW1lIHBlcmlvZHMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNvbnRhY3QgdGhlIHRpbWUgYWNjb3VudGluZyBhZG1pbmlzdHJhdG9yIHRvIHVwZGF0ZSB5b3VyIHRpbWUgcGVyaW9kcyEnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMYXN0IFNlbGVjdGVkIFByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbCBQcm9qZWN0cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBQcm9qZWN0SUQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nJ30gPSAnVWFyaWZ1JzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBOZWVkIFRpY2tldElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5vIFByb2plY3QgZm9yIFRpY2tldCBmb3VuZC4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdTZXR0aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gdXBkYXRlIHVzZXIgc2V0dGluZ3MhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayB1cGRhdGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgVXNlcklEIGlzIG5vdCB2YWxpZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGluc2VydCB1c2VyIGRhdGEhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byBhZGQgdGltZSBwZXJpb2QhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NldHRpbmcnfSA9ICdNcGFuZ2lsaW8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciB1cGRhdGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXcgVXNlcid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgU3RhdHVzJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nVmlldy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldzogTmVlZCAlcyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ob3RpZmljYXRpb24vVGltZUFjY291bnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBpbnNlcnQgeW91ciB3b3JraW5nIGhvdXJzISd9ID0gJ1RhZmFkaGFsaSBpbmdpemEgbWFzc2FhIHlhIGthemkhJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvVG9vbEJhci9JbmNvbXBsZXRlV29ya2luZ0RheXMucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0luY29tcGxldGUgd29ya2luZyBkYXlzJ30gPSAnJzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50LkVkaXRUaW1lUmVjb3JkcwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhdCBsZWFzdCBvbmUgZGF5ISd9ID0gJ1RhZmFkaGFsaSBjaGFndWEgamFwbyBzaWt1IG1vamEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBFbnRyeSd9ID0gJ0luZ2l6byBsYSBwYW1vamEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICdUYWZhZGhhbGkgY2hhZ3VhIHNhYmFidSB5YSBrdXRvIGt1d2VwbyEnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICdGdXRhIGluZ2l6byBsYSBVaGFzaWJ1IHdhIE11ZGEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICdIYWtpa2kgaW5naXpvJzsKCiAgICAjIFN5c0NvbmZpZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWN0aXZhdGUgdGhlIHN5bmNocm9uaXNhdGlvbiBvZiBUaWNrZXQtVGltZVVuaXRzIGludG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZ2VudCBpbnRlcmZhY2Ugbm90aWZpY2F0aW9uIG1vZHVsZSB0byBzZWUgdGhlIG51bWJlciBvZiBpbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyBmb3IgdGhlIHVzZXIuJ30gPQogICAgICAgICdNb2R1bGkgeWEgdGFhcmlmYSBrd2Ega2lvbGVzdXJhIGNoYSB3YWthbGEga3VvbmEgaWRhZGkgeWEgc2lrdSB6YSBrYXppIHphIG10dW1pYWppIHppc2l6byBrYW1pbGkuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Fsc28gc3luY2hyb25pc2UgY3VzdG9tZXJzIGFzIGEgbmV3IHByb2plY3QgaWYgdGhleSBoYXZlIG5vdCB5ZXQgYmVlbiBjcmVhdGVkIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcyBzb29uIGFzIHRoZSBzeW5jaHJvbmlzYXRpb24gb2YgdGlja2V0IFRpbWVVbml0cyBpcyBhY3RpdmF0ZWQsIGl0IGlzIHBvc3NpYmxlIHRvIHNldCB0aGUgZW50cmllcyBSZWFkT25seS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDcmVhdGUgYSBuZXcgdGltZSBhY2NvdW50aW5nIGVudHJ5IHJlbGF0ZWQgdG8gdGhlIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IG5hbWUgZm9yIG5ldyBhY3Rpb25zLid9ID0gJ0ppbmEgbGEgY2hhZ3VvLW1zaW5naSBrd2Egdml0ZW5kbyB2aXB5YS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnSmluYSBsYSBjaGFndW8tbXNpbmdpIGt3YSBtaXJhZGkgbWlweWEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkYXRlIGVuZC4nfSA9ICdDaGFndW8tbXNpbmdpIGt3YSBtaXBhbmdpbGlvIHlhIHRhcmVoZSB5YSBrdW1hbGl6YSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRhdGUgc3RhcnQuJ30gPSAnQ2hhZ3VvLW1zaW5naSBrd2EgbWlwYW5naWxpbyB5YSB0YXJlaGUgeWEga3VhbnphLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRlc2NyaXB0aW9uLid9ID0gJ0NoYWd1by1tc2luZ2kga3dhIG1pcGFuZ2lsaW8geWEgbWFlbGV6byc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGxlYXZlIGRheXMuJ30gPSAnQ2hhZ3VvLW1zaW5naSBsYSBzaWt1IHphIGxpa2l6byc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJ0NoYWd1by1tc2luZ2kgbGEgbXVkYSB3YSBueW9uZ2V6YSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnQ2hhZ3VvLW1zaW5naSBsYSBtaXBhbmdpbGlvIHlhIHNpa3UgemEga2F3YWlkYSB6YSB3aWtpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICdIYWxpIHlhIGNoYWd1by1tc2luZ2kga3dhIHZpdGVuZG8gdmlweWEuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnSGFsaSB5YSBjaGFndW8tbXNpbmdpIGt3YSBtaXJhZGkgbWlweWEuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgdXNlcnMuJ30gPSAnSGFsaSB5YSBjaGFndW8tbXNpbmdpIGt3YSB3YXR1bWlhamkgd2FweWEuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmluZXMgdGhlIHByb2plY3RzIGZvciB3aGljaCBhIHJlbWFyayBpcyByZXF1aXJlZC4gSWYgdGhlIFJlZ0V4cCBtYXRjaGVzIG9uIHRoZSBwcm9qZWN0LCB5b3UgaGF2ZSB0byBpbnNlcnQgYSByZW1hcmsgdG9vLiBUaGUgUmVnRXhwIHVzZSB0aGUgc214IHBhcmFtZXRlci4nfSA9CiAgICAgICAgJ0luYWZhZmFudWEgbWlyYWRpIGFtYmF5byBtYW9uaSB5YW5haGl0YWppa2EuIEthbWEgUmVnRXhwIGluYWZhbmFuYSBrYXRpa2EgbXJhZGksIHVuYXRha2l3YSBrdXdla2EgbWFvbmkgcGlhLiBSZWdFeHAgaW5hdHVtaWEgcGFyYW1ldGEgeWEgc214JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICdJbmFoYWtpa2kga2FtYSBtb2R1bGkgeWEgdGFrd2ltdSBpbmF3ZXphIGt1dGVuZ2VuZXphIHRhYXJpZmEgeWEgdWhhc2lidSB3YSBtdWRhLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IHRpbWUgYWNjb3VudGluZyBzZXR0aW5ncy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIHJlY29yZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRXZlcnkgdGltZSBhIGFnZW50IGFkZCBUaW1lVW5pdHMgdG8gYSB0aWNrZXQsIHdlIHN5bmMgdGhlIGluZm9ybWF0aW9uIHRvIHRoZSB0aW1lYWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRm9yIGhvdyBtYW55IGRheXMgYWdvIHlvdSBjYW4gaW5zZXJ0IHdvcmtpbmcgdW5pdHMuJ30gPSAnS3dhIHNpa3UgbmdhcGkgemlsaXpvcGl0YSB1bmF3ZXphIGt1aW5naXphIHZpdGVuZ28gdnlhIGthemkuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIG9ubHkgdXNlcnMgdGhhdCBoYXMgYWRkZWQgd29ya2luZyB0aW1lIHRvIHRoZSBzZWxlY3RlZCBwcm9qZWN0IGFyZSBzaG93bi4nfSA9CiAgICAgICAgJ0thbWEgaW1ld2V6ZXNod2EsIHdhdHVtaWFqaSB3YWxpb3dla2EgbXVkYSB3YSBrYXppIGt3YSBtcmFkaSB1bGlvY2hhZ3VsaXdhIG5kaW8gd2F0YW9ueWVzaHdhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBkcm9wZG93biBlbGVtZW50cyBpbiB0aGUgZWRpdCBzY3JlZW4gYXJlIGNoYW5nZWQgdG8gbW9kZXJuaXplZCBhdXRvY29tcGxldGlvbiBmaWVsZHMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGNhbiBiZSB1c2VkIGluc3RlYWQgdHdvIGxpc3Qgb2YgcHJvamVjdHMgKGxhc3QgYW5kIGFsbCBvbmVzKS4gSXQgY291bGQgYmUgdXNlZCBvbmx5IGlmIFRpbWVBY2NvdW50aW5nOjpFbmFibGVBdXRvQ29tcGxldGlvbiBpcyBlbmFibGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBmaWx0ZXIgZm9yIHRoZSBwcmV2aW91cyBwcm9qZWN0cyBpcyBhY3RpdmUgYnkgZGVmYXVsdCBpZiB0aGVyZSBhcmUgdGhlIHByZXZpb3VzIHByb2plY3RzLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgRW5hYmxlQXV0b0NvbXBsZXRpb24gYW5kIFRpbWVBY2NvdW50aW5nOjpVc2VGaWx0ZXIgYXJlIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIHVzZXIgaXMgYWxsb3dlZCB0byBlbnRlciAib24gdmFjYXRpb24gbGVhdmUiLCAib24gc2ljayBsZWF2ZSIgYW5kICJvbiBvdmVydGltZSBsZWF2ZSIgdG8gbXVsdGlwbGUgZGF0ZXMgYXQgb25jZS4nfSA9CiAgICAgICAgJ0thbWEgaW1ld2V6ZXNod2EsIG10dW1pYWppIGFuYXJ1aHVzaXdhIGt1aW5naXphICJrd2VueWUgbGlraXpvIiwgImt3ZW55ZSBsaWtpem8geWEgd2Fnb25qd2EiLCAia3dlbnllIGxpa2l6byB5YSBzaWt1IHphIG55b25nZXphIiBrd2EgdGFyZWhlIHphaWRpIHlhIG1vamEga3dhIG1rdXB1by4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWF4aW11bSBudW1iZXIgb2Ygd29ya2luZyBkYXlzIGFmdGVyIHdoaWNoIHRoZSB3b3JraW5nIHVuaXRzIGhhdmUgdG8gYmUgaW5zZXJ0ZWQuJ30gPQogICAgICAgICdLaW1hIGNoYSBqdXUgY2hhIHNpa3UgemEga2F6aSBiYWFkYSB5YSB2aXRlbmdvIHZ5YSBrYXppIGt1aW5naXp3YS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWF4aW11bSBudW1iZXIgb2Ygd29ya2luZyBkYXlzIHdpdGhvdXQgd29ya2luZyB1bml0cyBlbnRyeSBhZnRlciB3aGljaCBhIHdhcm5pbmcgd2lsbCBiZSBzaG93bi4nfSA9CiAgICAgICAgJ0tpbWEgY2hhIGp1dSBjaGEgc2lrdSB6YSBrYXppIGJpbGEgeWEgdml0ZW5nbyB2eWEga2F6aSBrdWluZ2l6d2EgYW1iYXZ5byAgb255byBsaXRhb255ZXNod2EuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHRpbWUgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZWd1bGFyIGV4cHJlc3Npb25zIGZvciBjb25zdHJhaW5pbmcgYWN0aW9uIGxpc3QgYWNjb3JkaW5nIHRvIHNlbGVjdGVkIHByb2plY3QuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9ucyBmb3IgYWN0aW9uKHMpLid9ID0KICAgICAgICAnTWFuZW5vIHlhIGthd2FpZGEgeWFuYXlvIGt3YW1pc2hhIG9yb2RoYSB5YSB2aXRlbmRvIGt3YSBtcmFkaSB1bGlvY2hhZ3VsaXdhLiBVZnVuZ3VvIHVuYSBtYW5lbm8geWEga2F3YWlkYSB5YSBtcmFkaSAobWlyYWRpKSwgbWF1ZGh1aSB5YW5hIG1hbmVubyB5YSBrYXdhaWRhIHlhIGtpdGVuZG8gKHZpdGVuZG8pLiAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnTWFuZW5vIHlhIGthd2FpZGEgeWEga3V6dWlhIG9yb2RoYSB5YSBtcmFkaSBrdWVuZGFuYSBuYSBtYWt1bmRpIHlhIHdhdHVtaWFqaS4gVWZ1bmd1byB1bmEgbWFuZW5vIHlhIGthd2FpZGEgeWEgbXJhZGkgKG1pcmFkaSksIG1hdWRodWkgeWFuYSBtYWt1bmRpIHlhbGl5b2dhd2FueXdhIGt3YSBhbGFtYSB5YSBta2F0by4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBhY2NvdW50ZWQgdGltZXMgZm9yIHRoaXMgdGlja2V0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NwZWNpZmllcyBpZiB3b3JraW5nIGhvdXJzIGNhbiBiZSBpbnNlcnRlZCB3aXRob3V0IHN0YXJ0IGFuZCBlbmQgdGltZXMuJ30gPQogICAgICAgICdJbmFiYWluaXNoYSBrYW1hIG1hc2FhIHlhIGthemkgeWFuYXdlemEga3VpbmdpendhIGJpbGEgeWEgbXVkYSB3YSBrdWFuemEgbmEga3VtYWxpemEuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICdIaWkgbW9kdWxpIGluYWluZ2l6YSBVaGFzaWJ1IHdhIE11ZGEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICdIaWkgbW9kdWxpIHlhIHRhYXJpZmEgaW5hdG9hIG9ueW8gZW5kYXBvIGt1bmEgc2lrdSBueWluZ2kgemEga2F6aSBhbWJhem8gaGF6aWpha2FtaWxpa2EuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCB0aW1lIHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIEFjY291bnRpbmcnfSA9ICdVaGFzaWJ1IHdhIG11ZGEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBSZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIGVkaXQuJ30gPSAnSGFyaXJpIHVoYXNpYnUgd2EgbXVkYS4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJ01hcGl0aW8geWEgdWhhc2lidSB3YSBtdWRhLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJ1VhcmlmdSB3YSB1aGFzaWJ1IHdhIG11ZGEuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBzZXR0aW5ncy4nfSA9ICdNcGFuZ2lsaW8gd2EgdWhhc2lidSB3YSBtdWRhLic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdGlja2V0IHJlcG9ydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHZpZXcuJ30gPSAnTXVvbmVrYW5vIHdhIHVoYXNpYnUgd2EgbXVkYSAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJ1VoYXNpYnUgd2EgbXVkYSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICdJdGF0dW1pa2Ega2FtYSBiYWFkaGkgeWEgdml0ZW5kbyB2aXRhcHVuZ3V6YSBtdWRhIHdhIGthemkgKG1mYW5vLCBrYW1hIG51c3UgeWEgbXVkYSB3YSBrdXNhZmlyaSB1bWVsaXB3YSBVZm9uZ3VvPT4ga3VzYWZpcmk7IG1hdWRodWk9PiA1MCkuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZSBTZXJ2aWNlIGFzIEFjdGlvbi4gUGxlYXNlIGFkZCBhcyBrZXkgdGhlIHRpbWVhY291bnRpbmcgYWN0aW9uIGFuZCB0aGUgc2VydmljZSBhcyB2YWx1ZS4gUmVnRXggYXJlIGFsbG93ZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2UgbmVlZCB0byBzZXQgYSBkZWZhdWx0IGFjdGlvbiBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2UgbmVlZCB0byBzZXQgYSBkZWZhdWx0IHByb2plY3QgaWQgd2hlbiB3ZSBzeW5jIFRpbWVVbml0cyB0byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIHNhdmUgdGhlIEFydGljbGUgVGltZVVuaXQgdG8gYSBEeW5hbWljRmllbGQgZnJvbSB0eXBlICJBcnRpY2xlIi4gUGxlYXNlIGFkZCBoZXJlIHRoZSBuYW1lIG9mIHRoZSBmaWVsZCBpZiB0aGUgaW5pdGluYWwgbmFtZSBpcyBjaGFuZ2VkLid9ID0KICAgICAgICAnJzsKCgogICAgcHVzaCBAeyAkU2VsZi0+e0phdmFTY3JpcHRTdHJpbmdzfSAvLyBbXSB9LCAoCiAgICAnQ2FuY2VsJywKICAgICdDb25maXJtIGluc2VydCcsCiAgICAnRGVsZXRlIFRpbWUgQWNjb3VudGluZyBFbnRyeScsCiAgICAnTWFzcyBFbnRyeScsCiAgICAnTm8nLAogICAgJ1BsZWFzZSBjaG9vc2UgYSByZWFzb24gZm9yIGFic2VuY2UhJywKICAgICdQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJywKICAgICdTdWJtaXQnLAogICAgJ1llcycsCiAgICApOwoKfQoKMTsK</File>
        <File Location="Kernel/Language/tr_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OnRyX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIEVuZCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2QgY29uZmlndXJlZCwgb3IgdGhlIHNwZWNpZmllZCBkYXRlIGlzIG91dHNpZGUgb2YgdGhlIGRlZmluZWQgdGltZSBwZXJpb2RzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBTZWxlY3RlZCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGwgUHJvamVjdHMnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgUHJvamVjdElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyBQcm9qZWN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldC5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBUaWNrZXRJRCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBObyBQcm9qZWN0IGZvciBUaWNrZXQgZm91bmQuJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIHVwZGF0ZSB1c2VyIHNldHRpbmdzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHVwZGF0ZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgdXNlciBkYXRhISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gYWRkIHRpbWUgcGVyaW9kISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZXR0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICcnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgZWRpdC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIG92ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB0aWNrZXQgcmVwb3J0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUbyB1c2UgaWYgc29tZSBhY3Rpb25zIHJlZHVjZWQgdGhlIHdvcmtpbmcgaG91cnMgKGZvciBleGFtcGxlLCBpZiBvbmx5IGhhbGYgb2YgdGhlIHRyYXZlbGluZyB0aW1lIGlzIHBhaWQgS2V5ID0+IHRyYXZlbGluZzsgQ29udGVudCA9PiA1MCkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlIFNlcnZpY2UgYXMgQWN0aW9uLiBQbGVhc2UgYWRkIGFzIGtleSB0aGUgdGltZWFjb3VudGluZyBhY3Rpb24gYW5kIHRoZSBzZXJ2aWNlIGFzIHZhbHVlLiBSZWdFeCBhcmUgYWxsb3dlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgYWN0aW9uIGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBuZWVkIHRvIHNldCBhIGRlZmF1bHQgcHJvamVjdCBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Ugc2F2ZSB0aGUgQXJ0aWNsZSBUaW1lVW5pdCB0byBhIER5bmFtaWNGaWVsZCBmcm9tIHR5cGUgIkFydGljbGUiLiBQbGVhc2UgYWRkIGhlcmUgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIGlmIHRoZSBpbml0aW5hbCBuYW1lIGlzIGNoYW5nZWQuJ30gPQogICAgICAgICcnOwoKCiAgICBwdXNoIEB7ICRTZWxmLT57SmF2YVNjcmlwdFN0cmluZ3N9IC8vIFtdIH0sICgKICAgICdDYW5jZWwnLAogICAgJ0NvbmZpcm0gaW5zZXJ0JywKICAgICdEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5JywKICAgICdNYXNzIEVudHJ5JywKICAgICdObycsCiAgICAnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnLAogICAgJ1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnLAogICAgJ1N1Ym1pdCcsCiAgICAnWWVzJywKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="Kernel/Language/uk_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OnVrX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIEVuZCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBOZWdhdGl2ZSBwZXJpb2RzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VibWl0IGNoYW5nZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIG9uZSByb3cnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIG92ZXJ0aW1lIGxlYXZlPyd9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgbW9yZSB0aGFuIDE2IGhvdXJzPyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBkZWxldGUgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBEYXRlIGlzIG91dCBvZiBsaW1pdCwgYnV0IHlvdSBoYXZlblwndCBpbnNlcnQgdGhpcyBkYXkgeWV0LCBzbyB5b3UgZ2V0IG9uZSghKSBjaGFuY2UgdG8gaW5zZXJ0J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSBXb3JraW5nIERheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bCBpbnNlcnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICfQn9C+0LzQuNC70LrQsCDQv9GA0Lgg0LLRgdGC0LDQstGG0ZYg0LTQtdC60ZbQu9GM0LrQvtGFINC00LDRgtC4ISc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWNjZXNzZnVsbHkgaW5zZXJ0ZWQgZW50cmllcyBmb3Igc2V2ZXJhbCBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW50ZXJlZCBkYXRlIHdhcyBpbnZhbGlkISBEYXRlIHdhcyBjaGFuZ2VkIHRvIHRvZGF5Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyB0aW1lIHBlcmlvZCBjb25maWd1cmVkLCBvciB0aGUgc3BlY2lmaWVkIGRhdGUgaXMgb3V0c2lkZSBvZiB0aGUgZGVmaW5lZCB0aW1lIHBlcmlvZHMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNvbnRhY3QgdGhlIHRpbWUgYWNjb3VudGluZyBhZG1pbmlzdHJhdG9yIHRvIHVwZGF0ZSB5b3VyIHRpbWUgcGVyaW9kcyEnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMYXN0IFNlbGVjdGVkIFByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbCBQcm9qZWN0cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBQcm9qZWN0SUQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBOZWVkIFRpY2tldElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5vIFByb2plY3QgZm9yIFRpY2tldCBmb3VuZC4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdTZXR0aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gdXBkYXRlIHVzZXIgc2V0dGluZ3MhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayB1cGRhdGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgVXNlcklEIGlzIG5vdCB2YWxpZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGluc2VydCB1c2VyIGRhdGEhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byBhZGQgdGltZSBwZXJpb2QhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NldHRpbmcnfSA9ICfQn9Cw0YDQsNC80LXRgtGAJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICcnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICcnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyBhZnRlciB3aGljaCB0aGUgd29ya2luZyB1bml0cyBoYXZlIHRvIGJlIGluc2VydGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01heGltdW0gbnVtYmVyIG9mIHdvcmtpbmcgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkgYWZ0ZXIgd2hpY2ggYSB3YXJuaW5nIHdpbGwgYmUgc2hvd24uJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdGltZSByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBhY3Rpb24gbGlzdCBhY2NvcmRpbmcgdG8gc2VsZWN0ZWQgcHJvamVjdC4gS2V5IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgcHJvamVjdChzKSwgY29udGVudCBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBhY3Rpb24ocykuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIHByb2plY3QgbGlzdCBhY2NvcmRpbmcgdG8gdXNlciBncm91cHMuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXBzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgYWNjb3VudGVkIHRpbWVzIGZvciB0aGlzIHRpY2tldCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTcGVjaWZpZXMgaWYgd29ya2luZyBob3VycyBjYW4gYmUgaW5zZXJ0ZWQgd2l0aG91dCBzdGFydCBhbmQgZW5kIHRpbWVzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBkYXRhYmFzZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIG1vZHVsZSBmb3JjZXMgaW5zZXJ0cyBpbiBUaW1lQWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBub3RpZmljYXRpb24gbW9kdWxlIGdpdmVzIGEgd2FybmluZyBpZiB0aGVyZSBhcmUgdG9vIG1hbnkgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHRpbWUgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgQWNjb3VudGluZyd9ID0gJ9Ce0LHQu9GW0Log0YfQsNGB0YMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBSZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIGVkaXQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBvdmVydmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHJlcG9ydGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHNldHRpbmdzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdGlja2V0IHJlcG9ydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG8gdXNlIGlmIHNvbWUgYWN0aW9ucyByZWR1Y2VkIHRoZSB3b3JraW5nIGhvdXJzIChmb3IgZXhhbXBsZSwgaWYgb25seSBoYWxmIG9mIHRoZSB0cmF2ZWxpbmcgdGltZSBpcyBwYWlkIEtleSA9PiB0cmF2ZWxpbmc7IENvbnRlbnQgPT4gNTApLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZSBTZXJ2aWNlIGFzIEFjdGlvbi4gUGxlYXNlIGFkZCBhcyBrZXkgdGhlIHRpbWVhY291bnRpbmcgYWN0aW9uIGFuZCB0aGUgc2VydmljZSBhcyB2YWx1ZS4gUmVnRXggYXJlIGFsbG93ZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2UgbmVlZCB0byBzZXQgYSBkZWZhdWx0IGFjdGlvbiBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2UgbmVlZCB0byBzZXQgYSBkZWZhdWx0IHByb2plY3QgaWQgd2hlbiB3ZSBzeW5jIFRpbWVVbml0cyB0byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIHNhdmUgdGhlIEFydGljbGUgVGltZVVuaXQgdG8gYSBEeW5hbWljRmllbGQgZnJvbSB0eXBlICJBcnRpY2xlIi4gUGxlYXNlIGFkZCBoZXJlIHRoZSBuYW1lIG9mIHRoZSBmaWVsZCBpZiB0aGUgaW5pdGluYWwgbmFtZSBpcyBjaGFuZ2VkLid9ID0KICAgICAgICAnJzsKCgogICAgcHVzaCBAeyAkU2VsZi0+e0phdmFTY3JpcHRTdHJpbmdzfSAvLyBbXSB9LCAoCiAgICAnQ2FuY2VsJywKICAgICdDb25maXJtIGluc2VydCcsCiAgICAnRGVsZXRlIFRpbWUgQWNjb3VudGluZyBFbnRyeScsCiAgICAnTWFzcyBFbnRyeScsCiAgICAnTm8nLAogICAgJ1BsZWFzZSBjaG9vc2UgYSByZWFzb24gZm9yIGFic2VuY2UhJywKICAgICdQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJywKICAgICdTdWJtaXQnLAogICAgJ1llcycsCiAgICApOwoKfQoKMTsK</File>
        <File Location="Kernel/Language/vi_VN_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OnZpX1ZOX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICdE4buxIMOhbic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPcmlnaW4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGFkZCBhIHJlbWFyayB3aXRoIG1vcmUgdGhhbiA4IGNoYXJhY3RlcnMhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Vyc3BydW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05lZ2F0aXZlIHRpbWVzIGFyZSBub3QgYWxsb3dlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBTdGFydCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIGZvcm1hdCEgUGxlYXNlIGVudGVyIGEgdGltZSB3aXRoIHRoZSBmb3JtYXQgSEg6TU0uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57JzI0OjAwIGlzIG9ubHkgcGVybWl0dGVkIGFzIGVuZCB0aW1lLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHRpbWUhIEEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSBtdXN0IGJlIGFmdGVyIHN0YXJ0IHRpbWUuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gRW5kIHRpbWUgbWF0Y2hlcyBhbm90aGVyIGludGVydmFsLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgcGVyaW9kISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQSB2YWxpZCBwZXJpb2QgbXVzdCBiZSBncmVhdGVyIHRoYW4gemVyby4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIE5lZ2F0aXZlIHBlcmlvZHMgYXJlIG5vdCBhbGxvd2VkLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWJtaXQgY2hhbmdlcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgb25lIHJvdyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgY2FuIG9ubHkgc2VsZWN0IG9uZSBjaGVja2JveCBlbGVtZW50ISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHNpY2sgbGVhdmU/J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gdmFjYXRpb24/J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gb3ZlcnRpbWUgbGVhdmU/J30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCBtb3JlIHRoYW4gMTYgaG91cnM/J30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nT3ZlcnZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nIG1vbnRobHkgb3ZlcnZpZXcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKEhvdXJzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAodGhpcyBtb250aCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRvdGFsKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgb3ZlcnRpbWUgbGVhdmUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gKERheXMpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0aGlzIG1vbnRoKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodG90YWwpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFpbmluZyB2YWNhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIExlYXZlIChEYXlzKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlIHRha2VuICh0aGlzIG1vbnRoKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlIHRha2VuICh0b3RhbCknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJldmlvdXMgbW9udGgnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV4dCBtb250aCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrZGF5J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dvcmtpbmcgSG91cnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG90YWwgd29ya2VkIGhvdXJzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXJcJ3MgcHJvamVjdCBvdmVydmlldyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyAobW9udGhseSknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKExpZmV0aW1lKSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHcmFuZCB0b3RhbCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSByZXBvcnRpbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGggTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBkYXRlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgcmVwb3J0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNb250aGx5IHRvdGFsJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xpZmV0aW1lIHRvdGFsJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIGxlYXZlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gcmVtYWluaW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgcmVwb3J0cyd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1Byb2plY3QKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHJlcG9ydGluZyBvdmVydmlldyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDdXJyZW50bHkgb25seSBhY3RpdmUgdXNlcnMgaW4gdGhpcyBwcm9qZWN0IGFyZSBzaG93bi4gVG8gY2hhbmdlIHRoaXMgYmVoYXZpb3IsIHBsZWFzZSB1cGRhdGUgc2V0dGluZzonfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDdXJyZW50bHkgYWxsIHRpbWUgYWNjb3VudGluZyB1c2VycyBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCByZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gdGlja2V0J30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgUHJvamVjdCBTZXR0aW5ncyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgcHJvamVjdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byBzZXR0aW5ncyBvdmVydmlldyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgUHJvamVjdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFByb2plY3QgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlcmUgaXMgYWxyZWFkeSBhIHByb2plY3Qgd2l0aCB0aGlzIG5hbWUuIFBsZWFzZSwgY2hvb3NlIGEgZGlmZmVyZW50IG9uZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgQWNjb3VudGluZyBTZXR0aW5ncyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgYSB1c2VyIHRvIHRpbWUgYWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRmlsdGVyIGZvciBwcm9qZWN0cywgdGFza3Mgb3IgdXNlcnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBwZXJpb2RzIGNhbiBub3QgYmUgZGVsZXRlZC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCBMaXN0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Rhc2sgTGlzdCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgVGFzayd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRhc2sgU2V0dGluZ3MnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlcmUgaXMgYWxyZWFkeSBhIHRhc2sgd2l0aCB0aGlzIG5hbWUuIFBsZWFzZSwgY2hvb3NlIGEgZGlmZmVyZW50IG9uZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIExpc3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBTZXR0aW5ncyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gc2VlIG92ZXJ0aW1lcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaG93IE92ZXJ0aW1lJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBjcmVhdGUgcHJvamVjdHMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsb3cgcHJvamVjdCBjcmVhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gc2tpcCB0aW1lIGFjY291bnRpbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxsb3cgdGltZSBhY2NvdW50aW5nIHNraXBwaW5nJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIHRoaXMgb3B0aW9uIGlzIHNlbGVjdGVkLCB0aW1lIGFjY291bnRpbmcgaXMgZWZmZWN0aXZlbHkgb3B0aW9uYWwgZm9yIHRoZSB1c2VyLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIHdpbGwgYmUgbm8gd2FybmluZ3MgYWJvdXQgbWlzc2luZyBlbnRyaWVzIGFuZCBubyBlbnRyeSBlbmZvcmNlbWVudC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIFNwYW5zJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBCZWdpbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgRW5kJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RheXMgb2YgVmFjYXRpb24nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgcGVyIFdlZWsnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXV0aG9yaXplZCBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdGFydCBEYXRlJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBpbnNlcnQgYSB2YWxpZCBkYXRlLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgRGF0ZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgZW5kIG11c3QgYmUgYWZ0ZXIgcGVyaW9kIGJlZ2luLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMZWF2ZSBEYXlzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlZWtseSBIb3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyB0aW1lIHBlcmlvZHMgZm91bmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCB0aW1lIHBlcmlvZCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgVGltZSBSZWNvcmQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldyBvZiAnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJldmlvdXMgZGF5J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgZGF5J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIGRhdGEgZm91bmQgZm9yIHRoaXMgZGF5Lid9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ0VkaXQucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBQcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3Qgc2F2ZSBzZXR0aW5ncywgYmVjYXVzZSBhIGRheSBoYXMgb25seSAyNCBob3VycyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGRlbGV0ZSBXb3JraW5nIFVuaXRzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIERhdGUgaXMgb3V0IG9mIGxpbWl0LCBidXQgeW91IGhhdmVuXCd0IGluc2VydCB0aGlzIGRheSB5ZXQsIHNvIHlvdSBnZXQgb25lKCEpIGNoYW5jZSB0byBpbnNlcnQnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIFdvcmtpbmcgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWNjZXNzZnVsIGluc2VydCEnfSA9ICdOaOG6rXAgdGjDoG5oIGPDtG5nJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0Vycm9yIHdoaWxlIGluc2VydGluZyBtdWx0aXBsZSBkYXRlcyEnfSA9ICdM4buXaSBraGkgbmjhuq1wIG5oaeG7gXUgbmfDoHknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJ30gPSAnTmjhuq1wIHRow6BuaCBjw7RuZyAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW50ZXJlZCBkYXRlIHdhcyBpbnZhbGlkISBEYXRlIHdhcyBjaGFuZ2VkIHRvIHRvZGF5Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyB0aW1lIHBlcmlvZCBjb25maWd1cmVkLCBvciB0aGUgc3BlY2lmaWVkIGRhdGUgaXMgb3V0c2lkZSBvZiB0aGUgZGVmaW5lZCB0aW1lIHBlcmlvZHMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNvbnRhY3QgdGhlIHRpbWUgYWNjb3VudGluZyBhZG1pbmlzdHJhdG9yIHRvIHVwZGF0ZSB5b3VyIHRpbWUgcGVyaW9kcyEnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMYXN0IFNlbGVjdGVkIFByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbCBQcm9qZWN0cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBQcm9qZWN0SUQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nJ30gPSAnQsOhbyBjw6FvJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBOZWVkIFRpY2tldElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5vIFByb2plY3QgZm9yIFRpY2tldCBmb3VuZC4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdTZXR0aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gdXBkYXRlIHVzZXIgc2V0dGluZ3MhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayB1cGRhdGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgVXNlcklEIGlzIG5vdCB2YWxpZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGluc2VydCB1c2VyIGRhdGEhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byBhZGQgdGltZSBwZXJpb2QhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NldHRpbmcnfSA9ICdUaGnhur90IGzhuq1wJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmV3IFVzZXInfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIFN0YXR1cyd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXc6IE5lZWQgJXMhJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICdYaW4gbmjhuq1wIHRo4budaSBnaWFuIGzDoG0gdmnhu4djJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvVG9vbEJhci9JbmNvbXBsZXRlV29ya2luZ0RheXMucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0luY29tcGxldGUgd29ya2luZyBkYXlzJ30gPSAnJzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50LkVkaXRUaW1lUmVjb3JkcwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhdCBsZWFzdCBvbmUgZGF5ISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXNzIEVudHJ5J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgYSByZWFzb24gZm9yIGFic2VuY2UhJ30gPSAnJzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NvbmZpcm0gaW5zZXJ0J30gPSAnJzsKCiAgICAjIFN5c0NvbmZpZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWN0aXZhdGUgdGhlIHN5bmNocm9uaXNhdGlvbiBvZiBUaWNrZXQtVGltZVVuaXRzIGludG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZ2VudCBpbnRlcmZhY2Ugbm90aWZpY2F0aW9uIG1vZHVsZSB0byBzZWUgdGhlIG51bWJlciBvZiBpbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyBmb3IgdGhlIHVzZXIuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxzbyBzeW5jaHJvbmlzZSBjdXN0b21lcnMgYXMgYSBuZXcgcHJvamVjdCBpZiB0aGV5IGhhdmUgbm90IHlldCBiZWVuIGNyZWF0ZWQgaW4gdGhlIGN1c3RvbWVyIGRhdGFiYXNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FzIHNvb24gYXMgdGhlIHN5bmNocm9uaXNhdGlvbiBvZiB0aWNrZXQgVGltZVVuaXRzIGlzIGFjdGl2YXRlZCwgaXQgaXMgcG9zc2libGUgdG8gc2V0IHRoZSBlbnRyaWVzIFJlYWRPbmx5Lid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NyZWF0ZSBhIG5ldyB0aW1lIGFjY291bnRpbmcgZW50cnkgcmVsYXRlZCB0byB0aGUgdGlja2V0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgbmFtZSBmb3IgbmV3IGFjdGlvbnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgbmFtZSBmb3IgbmV3IHByb2plY3RzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRhdGUgZW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRhdGUgc3RhcnQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGVzY3JpcHRpb24uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgbGVhdmUgZGF5cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBvdmVydGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciB0aGUgc3RhbmRhcmQgd2Vla2x5IGhvdXJzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHN0YXR1cyBmb3IgbmV3IGFjdGlvbnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgdXNlcnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmluZXMgdGhlIHByb2plY3RzIGZvciB3aGljaCBhIHJlbWFyayBpcyByZXF1aXJlZC4gSWYgdGhlIFJlZ0V4cCBtYXRjaGVzIG9uIHRoZSBwcm9qZWN0LCB5b3UgaGF2ZSB0byBpbnNlcnQgYSByZW1hcmsgdG9vLiBUaGUgUmVnRXhwIHVzZSB0aGUgc214IHBhcmFtZXRlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZXRlcm1pbmVzIGlmIHRoZSBzdGF0aXN0aWNzIG1vZHVsZSBtYXkgZ2VuZXJhdGUgdGltZSBhY2NvdW50aW5nIGluZm9ybWF0aW9uLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSBhY2NvdW50aW5nIHNldHRpbmdzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IHRpbWUgcmVjb3JkLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFdmVyeSB0aW1lIGEgYWdlbnQgYWRkIFRpbWVVbml0cyB0byBhIHRpY2tldCwgd2Ugc3luYyB0aGUgaW5mb3JtYXRpb24gdG8gdGhlIHRpbWVhY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGb3IgaG93IG1hbnkgZGF5cyBhZ28geW91IGNhbiBpbnNlcnQgd29ya2luZyB1bml0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgb25seSB1c2VycyB0aGF0IGhhcyBhZGRlZCB3b3JraW5nIHRpbWUgdG8gdGhlIHNlbGVjdGVkIHByb2plY3QgYXJlIHNob3duLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBkcm9wZG93biBlbGVtZW50cyBpbiB0aGUgZWRpdCBzY3JlZW4gYXJlIGNoYW5nZWQgdG8gbW9kZXJuaXplZCBhdXRvY29tcGxldGlvbiBmaWVsZHMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGNhbiBiZSB1c2VkIGluc3RlYWQgdHdvIGxpc3Qgb2YgcHJvamVjdHMgKGxhc3QgYW5kIGFsbCBvbmVzKS4gSXQgY291bGQgYmUgdXNlZCBvbmx5IGlmIFRpbWVBY2NvdW50aW5nOjpFbmFibGVBdXRvQ29tcGxldGlvbiBpcyBlbmFibGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBmaWx0ZXIgZm9yIHRoZSBwcmV2aW91cyBwcm9qZWN0cyBpcyBhY3RpdmUgYnkgZGVmYXVsdCBpZiB0aGVyZSBhcmUgdGhlIHByZXZpb3VzIHByb2plY3RzLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgRW5hYmxlQXV0b0NvbXBsZXRpb24gYW5kIFRpbWVBY2NvdW50aW5nOjpVc2VGaWx0ZXIgYXJlIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIHVzZXIgaXMgYWxsb3dlZCB0byBlbnRlciAib24gdmFjYXRpb24gbGVhdmUiLCAib24gc2ljayBsZWF2ZSIgYW5kICJvbiBvdmVydGltZSBsZWF2ZSIgdG8gbXVsdGlwbGUgZGF0ZXMgYXQgb25jZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXhpbXVtIG51bWJlciBvZiB3b3JraW5nIGRheXMgYWZ0ZXIgd2hpY2ggdGhlIHdvcmtpbmcgdW5pdHMgaGF2ZSB0byBiZSBpbnNlcnRlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXhpbXVtIG51bWJlciBvZiB3b3JraW5nIGRheXMgd2l0aG91dCB3b3JraW5nIHVuaXRzIGVudHJ5IGFmdGVyIHdoaWNoIGEgd2FybmluZyB3aWxsIGJlIHNob3duLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHRpbWUgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZWd1bGFyIGV4cHJlc3Npb25zIGZvciBjb25zdHJhaW5pbmcgYWN0aW9uIGxpc3QgYWNjb3JkaW5nIHRvIHNlbGVjdGVkIHByb2plY3QuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9ucyBmb3IgYWN0aW9uKHMpLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBwcm9qZWN0IGxpc3QgYWNjb3JkaW5nIHRvIHVzZXIgZ3JvdXBzLiBLZXkgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9uIGZvciBwcm9qZWN0KHMpLCBjb250ZW50IGNvbnRhaW5zIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIGdyb3Vwcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaG93IGFjY291bnRlZCB0aW1lcyBmb3IgdGhpcyB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3BlY2lmaWVzIGlmIHdvcmtpbmcgaG91cnMgY2FuIGJlIGluc2VydGVkIHdpdGhvdXQgc3RhcnQgYW5kIGVuZCB0aW1lcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTeW5jaHJvbmlzZSBjdXN0b21lcnMgYXMgYSBuZXcgcHJvamVjdCBpZiB0aGV5IGV4aXN0cyBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBtb2R1bGUgZm9yY2VzIGluc2VydHMgaW4gVGltZUFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgbm90aWZpY2F0aW9uIG1vZHVsZSBnaXZlcyBhIHdhcm5pbmcgaWYgdGhlcmUgYXJlIHRvbyBtYW55IGluY29tcGxldGUgd29ya2luZyBkYXlzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCB0aW1lIHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIEFjY291bnRpbmcnfSA9ICdRdeG6o24gbMO9IHRo4budaSBnaWFuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgUmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBlZGl0Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgb3ZlcnZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyByZXBvcnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBzZXR0aW5ncy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHRpY2tldCByZXBvcnQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyB2aWV3Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvIHVzZSBpZiBzb21lIGFjdGlvbnMgcmVkdWNlZCB0aGUgd29ya2luZyBob3VycyAoZm9yIGV4YW1wbGUsIGlmIG9ubHkgaGFsZiBvZiB0aGUgdHJhdmVsaW5nIHRpbWUgaXMgcGFpZCBLZXkgPT4gdHJhdmVsaW5nOyBDb250ZW50ID0+IDUwKS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2UgU2VydmljZSBhcyBBY3Rpb24uIFBsZWFzZSBhZGQgYXMga2V5IHRoZSB0aW1lYWNvdW50aW5nIGFjdGlvbiBhbmQgdGhlIHNlcnZpY2UgYXMgdmFsdWUuIFJlZ0V4IGFyZSBhbGxvd2VkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIG5lZWQgdG8gc2V0IGEgZGVmYXVsdCBhY3Rpb24gaWQgd2hlbiB3ZSBzeW5jIFRpbWVVbml0cyB0byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIG5lZWQgdG8gc2V0IGEgZGVmYXVsdCBwcm9qZWN0IGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBzYXZlIHRoZSBBcnRpY2xlIFRpbWVVbml0IHRvIGEgRHluYW1pY0ZpZWxkIGZyb20gdHlwZSAiQXJ0aWNsZSIuIFBsZWFzZSBhZGQgaGVyZSB0aGUgbmFtZSBvZiB0aGUgZmllbGQgaWYgdGhlIGluaXRpbmFsIG5hbWUgaXMgY2hhbmdlZC4nfSA9CiAgICAgICAgJyc7CgoKICAgIHB1c2ggQHsgJFNlbGYtPntKYXZhU2NyaXB0U3RyaW5nc30gLy8gW10gfSwgKAogICAgJ0NhbmNlbCcsCiAgICAnQ29uZmlybSBpbnNlcnQnLAogICAgJ0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknLAogICAgJ01hc3MgRW50cnknLAogICAgJ05vJywKICAgICdQbGVhc2UgY2hvb3NlIGEgcmVhc29uIGZvciBhYnNlbmNlIScsCiAgICAnUGxlYXNlIGNob29zZSBhdCBsZWFzdCBvbmUgZGF5IScsCiAgICAnU3VibWl0JywKICAgICdZZXMnLAogICAgKTsKCn0KCjE7Cg==</File>
        <File Location="Kernel/Language/zh_CN_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OnpoX0NOX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJ+S7u+WKoSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICflpIfms6gnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICfor7fnoa7orqTkvaDnnJ/nmoTluIzmnJvliKDpmaTov5nkuIDlpKnnmoTlt6Xml7bnrqHnkIborrDlvZXvvJ8nOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAn57yW6L6R5pe26Ze06K6w5b2VJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAn6L+b5YWl6K6+572uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJ+aXpeacn+a1j+iniCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJ+ayoeacieiusOW9leeahOW3peaXpSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICfpgInmi6nmiYDmnInlt6Xml6XjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJ+Wkp+mHj+iusOW9lSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJ+ivt+S4uuaJgOmAieaXtumXtOmAieaLqee8uuWLpOWOn+WboOOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJ+S8keWBhyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAn55eF5YGHJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAn5Yqg54+t6LCD5LyRJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAn5qCH6K6wIioi55qE5a2X5q615Li65b+F5aGr44CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAn5L2g6ZyA6KaB5aGr5YaZ5byA5aeL5ZKM57uT5p2f5pe26Ze05oiW6ICF5pe26Ze05q6144CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICfpobnnm64nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJ+ivt+a3u+WKoOS4gOS4qui2hei/hzjkuKrlrZfnrKbnmoTlpIfms6jvvIEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXJzcHJ1bmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTmVnYXRpdmUgdGltZXMgYXJlIG5vdCBhbGxvd2VkLid9ID0gJ+aXtumXtOS4jeWFgeiuuOS4uui0n+OAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIFN0YXJ0IHRpbWUgbWF0Y2hlcyBhbm90aGVyIGludGVydmFsLid9ID0KICAgICAgICAn5LiN5YWB6K646YeN5aSN55qE5bel5L2c5pe26Ze044CC5byA5aeL5pe26Ze05bey5Yy56YWN5YW25LuW5a2Y5Zyo55qE5pe25q6144CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ludmFsaWQgZm9ybWF0ISBQbGVhc2UgZW50ZXIgYSB0aW1lIHdpdGggdGhlIGZvcm1hdCBISDpNTS4nfSA9ICfmoLzlvI/ml6DmlYjvvIHor7fmjIlISDpNTeagvOW8j+i+k+WFpeaXtumXtOOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcyNDowMOWPquWFgeiuuOiuvue9ruS4uue7k+adn+aXtumXtOOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHRpbWUhIEEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzLid9ID0gJ+aXtumXtOaXoOaViO+8geS4gOWkqeWPquaciTI05bCP5pe244CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VuZCB0aW1lIG11c3QgYmUgYWZ0ZXIgc3RhcnQgdGltZS4nfSA9ICfnu5PmnZ/ml7bpl7TlupTlpKfkuo7lvIDlp4vml7bpl7TjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBFbmQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICfkuI3lhYHorrjph43lpI3nmoTlt6XkvZzml7bpl7TjgILnu5PmnZ/ml7bpl7Tlt7LljLnphY3lhbbku5blrZjlnKjnmoTml7bmrrXjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIEEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzLid9ID0gJ+aXoOaViOeahOaXtuaute+8geS4gOWkqeWPquaciTI05bCP5pe244CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0EgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uJ30gPSAn5pyJ5pWI5pe25q615pe26ZW/5bqU5aSn5LqOMOOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgTmVnYXRpdmUgcGVyaW9kcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAn5peg5pWI5pe25q6177yB5pe25q615pe26ZW/5LiN5YWB6K645Li66LSf44CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Ym1pdCBjaGFuZ2VzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBvbmUgcm93J30gPSAn5aKe5Yqg5LiA6KGMJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBjYW4gb25seSBzZWxlY3Qgb25lIGNoZWNrYm94IGVsZW1lbnQhJ30gPSAn5Y+q6IO96YCJ5oup5LiA5Liq5aSN6YCJ5qGG5YWD57Sg44CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gc2ljayBsZWF2ZT8nfSA9ICfkvaDnoa7lrprkvaDlnKjnl4XlgYfmnJ/pl7Tku43lnKjlt6XkvZzlkJfvvJ8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiB2YWNhdGlvbj8nfSA9ICfkvaDnoa7lrprkvaDlnKjkvJHlgYfmnJ/pl7Tku43lnKjlt6XkvZzlkJfvvJ8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBvdmVydGltZSBsZWF2ZT8nfSA9CiAgICAgICAgJ+S9oOehruWumuS9oOWcqOWKoOePreiwg+S8keacn+mXtOS7jeWcqOW3peS9nOWQl++8nyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIG1vcmUgdGhhbiAxNiBob3Vycz8nfSA9ICfkvaDnoa7lrprkvaDlt6XkvZzotoXov4cxNuWwj+aXtuS6huWQl++8nyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3J30gPSAn5bel5pe25oql5ZGK5pyI5bqm5qaC6KeIJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lIChIb3VycyknfSA9ICfliqDnj63vvIjlsI/ml7bvvIknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgKHRoaXMgbW9udGgpJ30gPSAn5Yqg54+t77yI5pys5pyI77yJJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0b3RhbCknfSA9ICfliqDnj63vvIjlkIjorqHvvIknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIG92ZXJ0aW1lIGxlYXZlJ30gPSAn5Ymp5L2Z55qE5Yqg54+t6LCD5LyRJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIChEYXlzKSd9ID0gJ+S8keWBh++8iOWkqe+8iSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCknfSA9ICflt7LkvJHlgYfvvIjmnKzmnIjvvIknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRvdGFsKSd9ID0gJ+W3suS8keWBh++8iOWQiOiuoe+8iSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1haW5pbmcgdmFjYXRpb24nfSA9ICfliankvZnnmoTlgYfmnJ8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBMZWF2ZSAoRGF5cyknfSA9ICfnl4XlgYfvvIjlpKnvvIknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodGhpcyBtb250aCknfSA9ICflt7LkvJHnl4XlgYfvvIjmnKzmnIjvvIknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpJ30gPSAn5bey5LyR55eF5YGH77yI5ZCI6K6h77yJJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIG1vbnRoJ30gPSAn5LiK5LiA5pyIJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgbW9udGgnfSA9ICfkuIvkuIDmnIgnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2Vla2RheSd9ID0gJ+W3peS9nOaXpSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXb3JraW5nIEhvdXJzJ30gPSAn5bel5L2c5pe26Ze0JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RvdGFsIHdvcmtlZCBob3Vycyd9ID0gJ+W3peS9nOaXtumXtOWQiOiuoSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyXCdzIHByb2plY3Qgb3ZlcnZpZXcnfSA9ICfnlKjmiLfnmoTpobnnm67mpoLop4gnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSG91cnMgKG1vbnRobHkpJ30gPSAn5bCP5pe277yI5oyJ5pyI77yJJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChMaWZldGltZSknfSA9ICflsI/ml7bvvIjoh6rlhaXogYzorqHnrpfvvIknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR3JhbmQgdG90YWwnfSA9ICfmgLvorqEnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcmVwb3J0aW5nJ30gPSAn5pe26Ze05oql5ZGKJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRoIE5hdmlnYXRpb24nfSA9ICfmjInmnIjmtY/op4gnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gZGF0ZSd9ID0gJ+i3s+i9rOWIsOaXpeacnyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHJlcG9ydHMnfSA9ICfnlKjmiLfmiqXlkYonOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTW9udGhseSB0b3RhbCd9ID0gJ+aMieaciOWQiOiuoSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMaWZldGltZSB0b3RhbCd9ID0gJ+iHquWFpeiBjOiuoeeul+WQiOiuoSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSBsZWF2ZSd9ID0gJ+WKoOePreiwg+S8kSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbid9ID0gJ+S8keWBhyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaWNrIGxlYXZlJ30gPSAn55eF5YGHJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHJlbWFpbmluZyd9ID0gJ+WJqeS9meWBh+acnyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydHMnfSA9ICfpobnnm67miqXlkYonOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHJlcG9ydCd9ID0gJ+mhueebruaKpeWRiic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byByZXBvcnRpbmcgb3ZlcnZpZXcnfSA9ICfov5vlhaXmiqXlkYrmpoLop4gnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IG9ubHkgYWN0aXZlIHVzZXJzIGluIHRoaXMgcHJvamVjdCBhcmUgc2hvd24uIFRvIGNoYW5nZSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgdXBkYXRlIHNldHRpbmc6J30gPQogICAgICAgICflvZPliY3ku4XmmL7npLrpobnnm67kuK3nmoTmv4DmtLvnlKjmiLfjgILlpoLopoHosIPmlbTmmL7npLrlsZ7mgKfvvIzor7fmm7TmlrDorr7nva7vvJonOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAn5b2T5YmN5pi+56S65omA5pyJ55qE5bel5pe2566h55CG55So5oi344CC5aaC6KaB6LCD5pW05pi+56S65bGe5oCn77yM6K+35pu05paw6K6+572u77yaJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaWNrZXQgcmVwb3J0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHRpY2tldCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MnfSA9ICfnvJbovpHlt6Xml7bnrqHnkIbpobnnm67orr7nva4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHByb2plY3QnfSA9ICfmlrDlu7rpobnnm64nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gc2V0dGluZ3Mgb3ZlcnZpZXcnfSA9ICfov5vlhaXorr7nva7mpoLop4gnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFByb2plY3QnfSA9ICfmlrDlu7rpobnnm64nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBQcm9qZWN0IFNldHRpbmdzJ30gPSAn57yW6L6R6aG555uu6K6+572uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICflt7LlrZjlnKjlkIzlkI3nmoTpobnnm67vvIzor7fpgInmi6nkuI3lkIznmoTlkI3lrZfjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MnfSA9ICfnvJbovpHlt6Xml7bnrqHnkIborr7nva4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIHRhc2snfSA9ICfmt7vliqDku7vliqEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIGEgdXNlciB0byB0aW1lIGFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZpbHRlciBmb3IgcHJvamVjdHMsIHRhc2tzIG9yIHVzZXJzJ30gPSAn5oyJ6aG555uu44CB5Lu75Yqh5oiW55So5oi36L+H5rukJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuJ30gPSAn5peg5rOV5Yig6Zmk5bel5pe25ZGo5pyf44CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgTGlzdCd9ID0gJ+mhueebruWIl+ihqCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIExpc3QnfSA9ICfku7vliqHliJfooagnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRhc2snfSA9ICfmt7vliqDku7vliqEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCBUYXNrIFNldHRpbmdzJ30gPSAn57yW6L6R5Lu75Yqh6K6+572uJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZXJlIGlzIGFscmVhZHkgYSB0YXNrIHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuJ30gPQogICAgICAgICflt7LlrZjlnKjlkIzlkI3nmoTku7vliqHvvIzor7fpgInmi6nkuI3lkIznmoTlkI3lrZfjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBMaXN0J30gPSAn55So5oi35YiX6KGoJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgU2V0dGluZ3MnfSA9ICfnlKjmiLforr7nva4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMnfSA9ICflhYHorrjnlKjmiLfnnIvliLDliqDnj63ml7bpl7QnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2hvdyBPdmVydGltZSd9ID0gJ+aYvuekuuWKoOePrSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzJ30gPSAn5YWB6K6455So5oi35Yib5bu66aG555uuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHByb2plY3QgY3JlYXRpb24nfSA9ICflhYHorrjliJvlu7rpobnnm64nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIHNraXAgdGltZSBhY2NvdW50aW5nJ30gPSAn5YWB6K6455So5oi36Lez6L+H5bel5pe2566h55CGJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbG93IHRpbWUgYWNjb3VudGluZyBza2lwcGluZyd9ID0gJ+WFgeiuuOi3s+i/h+W3peaXtueuoeeQhic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiB0aGlzIG9wdGlvbiBpcyBzZWxlY3RlZCwgdGltZSBhY2NvdW50aW5nIGlzIGVmZmVjdGl2ZWx5IG9wdGlvbmFsIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJ+WmguaenOmAieaLqeatpOmAiemhue+8jOWImeW3peaXtueuoeeQhuWvueeUqOaIt+adpeivtOWunumZheS4iuaYr+WPr+mAieeahOOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSB3aWxsIGJlIG5vIHdhcm5pbmdzIGFib3V0IG1pc3NpbmcgZW50cmllcyBhbmQgbm8gZW50cnkgZW5mb3JjZW1lbnQuJ30gPQogICAgICAgICfmsqHmnInlhbPkuo7nvLrlsJHmnaHnm67nmoTorablkYrvvIzkuZ/msqHmnInov5vlhaXlvLrliLbmiafooYznmoTorablkYrjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBTcGFucyd9ID0gJ+aXtumXtOi3qOW6pic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgQmVnaW4nfSA9ICfml7bmrrXlvIDlp4snOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEVuZCd9ID0gJ+aXtuautee7k+adnyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIG9mIFZhY2F0aW9uJ30gPSAn5LyR5YGH5aSp5pWwJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIHBlciBXZWVrJ30gPSAn5q+P5ZGo5bCP5pe25pWwJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0F1dGhvcml6ZWQgT3ZlcnRpbWUnfSA9ICfmibnlh4bnmoTliqDnj60nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgRGF0ZSd9ID0gJ+W8gOWni+aXpeacnyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4nfSA9ICfor7fmj5LlhaXmnInmlYjml6XmnJ/jgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW5kIERhdGUnfSA9ICfnu5PmnZ/ml6XmnJ8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIGVuZCBtdXN0IGJlIGFmdGVyIHBlcmlvZCBiZWdpbi4nfSA9ICfml7bmrrXnu5PmnZ/ml7bpl7TlupTlpKfkuo7ml7bmrrXlvIDlp4vml7bpl7TjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGVhdmUgRGF5cyd9ID0gJ+e8uuWLpOWkqeaVsCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZWVrbHkgSG91cnMnfSA9ICfmr4/lkajlt6XkvZzlsI/ml7bmlbAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUnfSA9ICfliqDnj60nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTm8gdGltZSBwZXJpb2RzIGZvdW5kLid9ID0gJ+ayoeacieaJvuWIsOaXtuauteOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZGQgdGltZSBwZXJpb2QnfSA9ICflop7liqDml7bmrrUnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdWaWV3CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3IFRpbWUgUmVjb3JkJ30gPSAn5p+l55yL5bel5pe26K6w5b2VJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgb2YgJ30gPSAn5bGV56S6JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ByZXZpb3VzIGRheSd9ID0gJ+WJjeS4gOWkqSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IGRheSd9ID0gJ+WQjuS4gOWkqSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyBkYXRhIGZvdW5kIGZvciB0aGlzIGRheS4nfSA9ICfmsqHmnInmib7liLDov5nkuIDlpKnnmoTmlbDmja7jgIInOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdFZGl0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IFdvcmtpbmcgVW5pdHMhJ30gPSAn5peg5rOV5o+S5YWl5bel5L2c5Y2V5L2N77yBJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0xhc3QgUHJvamVjdHMnfSA9ICfmnIDov5HnmoTpobnnm64nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJ30gPSAn5peg5rOV5L+d5a2Y6K6+572u77yM5Zug5Li65LiA5aSp5Y+q5pyJMjTlsI/ml7bvvIEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGRlbGV0ZSBXb3JraW5nIFVuaXRzISd9ID0gJ+aXoOazleWIoOmZpOW3peS9nOWNleS9je+8gSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIERhdGUgaXMgb3V0IG9mIGxpbWl0LCBidXQgeW91IGhhdmVuXCd0IGluc2VydCB0aGlzIGRheSB5ZXQsIHNvIHlvdSBnZXQgb25lKCEpIGNoYW5jZSB0byBpbnNlcnQnfSA9CiAgICAgICAgJ+i/meS4quaXpeacn+S4jeWPl+mZkOWItu+8jOS9huaYr+S9oOi/mOayoeacieaPkuWFpei/meS4gOWkqe+8jOaJgOS7peS9oOiOt+W+l+S6huS4gOS4qu+8iO+8ge+8ieacuuS8muadpeaPkuWFpSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIFdvcmtpbmcgRGF5cyd9ID0gJ+S4jeWujOaVtOeahOW3peS9nOaXpSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWNjZXNzZnVsIGluc2VydCEnfSA9ICfmj5LlhaXmiJDlip/vvIEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRXJyb3Igd2hpbGUgaW5zZXJ0aW5nIG11bHRpcGxlIGRhdGVzISd9ID0gJ+aPkuWFpeWkmuS4quaXtumXtOaXtuWHuueOsOmUmeivr++8gSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWNjZXNzZnVsbHkgaW5zZXJ0ZWQgZW50cmllcyBmb3Igc2V2ZXJhbCBkYXRlcyEnfSA9ICfmiJDlip/mj5LlhaXorrDlvZXjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW50ZXJlZCBkYXRlIHdhcyBpbnZhbGlkISBEYXRlIHdhcyBjaGFuZ2VkIHRvIHRvZGF5Lid9ID0gJ+i+k+WFpeaXtumXtOaXoOaViO+8geaXpeacn+aUueS4uuW9k+WJjeaXpeacn+OAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyB0aW1lIHBlcmlvZCBjb25maWd1cmVkLCBvciB0aGUgc3BlY2lmaWVkIGRhdGUgaXMgb3V0c2lkZSBvZiB0aGUgZGVmaW5lZCB0aW1lIHBlcmlvZHMuJ30gPQogICAgICAgICfmsqHmnInphY3nva7ml7bpl7TmrrXvvIzmiJbmjIflrprnmoTml6XmnJ/kuI3lnKjlrprkuYnnmoTml7bpl7TmrrXlhoXjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNvbnRhY3QgdGhlIHRpbWUgYWNjb3VudGluZyBhZG1pbmlzdHJhdG9yIHRvIHVwZGF0ZSB5b3VyIHRpbWUgcGVyaW9kcyEnfSA9CiAgICAgICAgJ+ivt+iBlOezu+W3peaXtueuoeeQhuWRmOabtOaWsOaCqOeahOaXtumXtOaute+8gSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMYXN0IFNlbGVjdGVkIFByb2plY3RzJ30gPSAn5pyA5ZCO6KKr6YCJ5Lit55qE6aG555uuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbCBQcm9qZWN0cyd9ID0gJ+aJgOaciemhueebric7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBQcm9qZWN0SUQnfSA9ICfpobnnm67miqXlkYrvvJrpnIDopoHpobnnm65JRCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmcgUHJvamVjdCd9ID0gJ+mhueebruaKpeWRiic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmcnfSA9ICfmiqXlkYonOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdUaWNrZXQucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgVGlja2V0SUQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTm8gUHJvamVjdCBmb3IgVGlja2V0IGZvdW5kLid9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byB1cGRhdGUgdXNlciBzZXR0aW5ncyEnfSA9ICfml6Dms5Xmm7TmlrDnlKjmiLforr7nva7vvIEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCBhZGRlZCEnfSA9ICfpobnnm67lt7Lmt7vliqDvvIEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCB1cGRhdGVkISd9ID0gJ+mhueebruW3suabtOaWsO+8gSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIGFkZGVkISd9ID0gJ+S7u+WKoeW3sua3u+WKoO+8gSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUYXNrIHVwZGF0ZWQhJ30gPSAn5Lu75Yqh5bey5pu05paw77yBJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoZSBVc2VySUQgaXMgbm90IHZhbGlkISd9ID0gJ1VzZXJJROaXoOaViO+8gSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3QgaW5zZXJ0IHVzZXIgZGF0YSEnfSA9ICfml6Dms5Xmj5LlhaXnlKjmiLfmlbDmja7vvIEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVW5hYmxlIHRvIGFkZCB0aW1lIHBlcmlvZCEnfSA9ICfml6Dms5Xmt7vliqDml7bpl7TmrrXvvIEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2V0dGluZyd9ID0gJ+iuvue9ric7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIHVwZGF0ZWQhJ30gPSAn55So5oi35bey5pu05paw77yBJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgYWRkZWQhJ30gPSAn55So5oi35bey5re75Yqg77yBJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05ldyBVc2VyJ30gPSAn5re75Yqg55So5oi3JzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBTdGF0dXMnfSA9ICfml7bmrrXnirbmgIEnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdWaWV3LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWaWV3OiBOZWVkICVzISd9ID0gJ+inhuWbvu+8mumcgOimgSVz77yBJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvT3V0cHV0L0hUTUwvTm90aWZpY2F0aW9uL1RpbWVBY2NvdW50aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgaW5zZXJ0IHlvdXIgd29ya2luZyBob3VycyEnfSA9ICfor7fmj5LlhaXlt6XkvZzml7bpl7QnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ub29sQmFyL0luY29tcGxldGVXb3JraW5nRGF5cy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW5jb21wbGV0ZSB3b3JraW5nIGRheXMnfSA9ICfkuI3lrozmlbTnmoTlt6XkvZzml6UnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJ30gPSAn6K+36Iez5bCR6YCJ5oup5LiA5aSp77yBJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICflpKfph4/orrDlvZUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICfor7fpgInmi6nnvLrluK3ljp/lm6DvvIEnOwoKICAgICMgSlMgRmlsZTogVGltZUFjY291bnRpbmcuQWdlbnQKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknfSA9ICfliKDpmaTlt6Xml7bnrqHnkIborrDlvZUnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ29uZmlybSBpbnNlcnQnfSA9ICfnoa7orqTmj5LlhaUnOwoKICAgICMgU3lzQ29uZmlnCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBY3RpdmF0ZSB0aGUgc3luY2hyb25pc2F0aW9uIG9mIFRpY2tldC1UaW1lVW5pdHMgaW50byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FnZW50IGludGVyZmFjZSBub3RpZmljYXRpb24gbW9kdWxlIHRvIHNlZSB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzIGZvciB0aGUgdXNlci4nfSA9CiAgICAgICAgJ+acjeWKoeS6uuWRmOeVjOmdoumAmuefpeaooeWdl++8jOaYvuekuueUqOaIt+S4jeWujOaVtOeahOW3peS9nOaXpeaVsOaNruOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbHNvIHN5bmNocm9uaXNlIGN1c3RvbWVycyBhcyBhIG5ldyBwcm9qZWN0IGlmIHRoZXkgaGF2ZSBub3QgeWV0IGJlZW4gY3JlYXRlZCBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXMgc29vbiBhcyB0aGUgc3luY2hyb25pc2F0aW9uIG9mIHRpY2tldCBUaW1lVW5pdHMgaXMgYWN0aXZhdGVkLCBpdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhlIGVudHJpZXMgUmVhZE9ubHkuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ3JlYXRlIGEgbmV3IHRpbWUgYWNjb3VudGluZyBlbnRyeSByZWxhdGVkIHRvIHRoZSB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgYWN0aW9ucy4nfSA9ICfmlrDmtLvliqjnmoTpu5jorqTlkI3np7DjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBuYW1lIGZvciBuZXcgcHJvamVjdHMuJ30gPSAn5paw6aG555uu55qE6buY6K6k5ZCN56ew44CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBlbmQuJ30gPSAn57uT5p2f5pel5pyf55qE6buY6K6k6K6+572u44CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGF0ZSBzdGFydC4nfSA9ICflvIDlp4vml6XmnJ/nmoTpu5jorqTorr7nva7jgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBkZXNjcmlwdGlvbi4nfSA9ICfmj4/ov7DnmoTpu5jorqTorr7nva7jgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBsZWF2ZSBkYXlzLid9ID0gJ+S8keWBh+aXpeeahOm7mOiupOiuvue9ruOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIG92ZXJ0aW1lLid9ID0gJ+WKoOePreeahOm7mOiupOiuvue9ruOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIHRoZSBzdGFuZGFyZCB3ZWVrbHkgaG91cnMuJ30gPSAn5ZGo5qCH5YeG5bel5L2c5pe26Ze055qE6buY6K6k6K6+572u44CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgYWN0aW9ucy4nfSA9ICfmlrDmtLvliqjnmoTpu5jorqTnirbmgIHjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyBwcm9qZWN0cy4nfSA9ICfmlrDpobnnm67nmoTpu5jorqTnirbmgIHjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyB1c2Vycy4nfSA9ICfmlrDnlKjmiLfnmoTpu5jorqTnirbmgIHjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmaW5lcyB0aGUgcHJvamVjdHMgZm9yIHdoaWNoIGEgcmVtYXJrIGlzIHJlcXVpcmVkLiBJZiB0aGUgUmVnRXhwIG1hdGNoZXMgb24gdGhlIHByb2plY3QsIHlvdSBoYXZlIHRvIGluc2VydCBhIHJlbWFyayB0b28uIFRoZSBSZWdFeHAgdXNlIHRoZSBzbXggcGFyYW1ldGVyLid9ID0KICAgICAgICAn5oyH5a6a5aSH5rOo5b+F5aGr55qE6aG555uu44CC5aaC5p6cUmVnRXhw5Yy56YWN6aG555uu77yM5L2g5Lmf6ZyA6KaB5re75Yqg5aSH5rOo44CCUmVnRXhw5L2/55Soc2145Y+C5pWw44CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RldGVybWluZXMgaWYgdGhlIHN0YXRpc3RpY3MgbW9kdWxlIG1heSBnZW5lcmF0ZSB0aW1lIGFjY291bnRpbmcgaW5mb3JtYXRpb24uJ30gPQogICAgICAgICfnoa7lrprnu5/orqHmqKHlnZfmmK/lkKbopoHnlJ/miJDlt6Xml7bnrqHnkIbkv6Hmga/jgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRWRpdCB0aW1lIGFjY291bnRpbmcgc2V0dGluZ3MuJ30gPSAn57yW6L6R5bel5pe2566h55CG6K6+572u44CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSByZWNvcmQuJ30gPSAn57yW6L6R5bel5pe26K6w5b2V44CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0V2ZXJ5IHRpbWUgYSBhZ2VudCBhZGQgVGltZVVuaXRzIHRvIGEgdGlja2V0LCB3ZSBzeW5jIHRoZSBpbmZvcm1hdGlvbiB0byB0aGUgdGltZWFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0ZvciBob3cgbWFueSBkYXlzIGFnbyB5b3UgY2FuIGluc2VydCB3b3JraW5nIHVuaXRzLid9ID0gJ+S9oOWPr+S7peaPkuWFpeWkmuS5heS7peWJjeeahOW3peS9nOaVsOaNruOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCBvbmx5IHVzZXJzIHRoYXQgaGFzIGFkZGVkIHdvcmtpbmcgdGltZSB0byB0aGUgc2VsZWN0ZWQgcHJvamVjdCBhcmUgc2hvd24uJ30gPQogICAgICAgICflpoLmnpzlkK/nlKjvvIzliJnku4XmmL7npLrlnKjpgInlrprpobnnm67kuK3mnInlt6Xml7bmlbDmja7nmoTnlKjmiLfjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGRyb3Bkb3duIGVsZW1lbnRzIGluIHRoZSBlZGl0IHNjcmVlbiBhcmUgY2hhbmdlZCB0byBtb2Rlcm5pemVkIGF1dG9jb21wbGV0aW9uIGZpZWxkcy4nfSA9CiAgICAgICAgJ+WmguaenOWQr+eUqO+8jOWImee8lui+keinhuWbvuS4reeahOS4i+aLieWIl+ihqOWFg+e0oOWwhuS8muS/ruaUueS4uuiHquWKqOWujOaIkOWtl+auteOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCB0d28gbGlzdCBvZiBwcm9qZWN0cyAobGFzdCBhbmQgYWxsIG9uZXMpLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgVGltZUFjY291bnRpbmc6OkVuYWJsZUF1dG9Db21wbGV0aW9uIGlzIGVuYWJsZWQuJ30gPQogICAgICAgICflpoLmnpzlkK/nlKjvvIzliJnlj6/ku6Xkvb/nlKjkuYvliY3pobnnm67nmoTov4fmu6TlmajvvIjnlKjkuo7mm7/ku6PmnIDlkI7lkozlhajpg6jpobnnm67liJfooajvvInjgILku4XlnKhUaW1lQWNjb3VudGluZzo6RW5hYmxlQXV0b0NvbXBsZXRpb27lkK/nlKjml7bvvIzlj6/ku6XlkK/nlKjor6Xlj4LmlbDjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGlzIGFjdGl2ZSBieSBkZWZhdWx0IGlmIHRoZXJlIGFyZSB0aGUgcHJldmlvdXMgcHJvamVjdHMuIEl0IGNvdWxkIGJlIHVzZWQgb25seSBpZiBFbmFibGVBdXRvQ29tcGxldGlvbiBhbmQgVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciBhcmUgZW5hYmxlZC4nfSA9CiAgICAgICAgJ+WmguaenOWQr+eUqO+8jOWImeWmguaenOWtmOWcqOS5i+WJjeeahOmhueebru+8jOWImeS5i+WJjemhueebrui/h+a7pOWZqOWwhuiiq+m7mOiupOa/gOa0u+OAguS7heWcqEVuYWJsZUF1dG9Db21wbGV0aW9u5ZKMVGltZUFjY291bnRpbmc6OlVzZUZpbHRlcuWQr+eUqOaXtu+8jOWPr+S7peWQr+eUqOivpeWPguaVsOOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJZiBlbmFibGVkLCB0aGUgdXNlciBpcyBhbGxvd2VkIHRvIGVudGVyICJvbiB2YWNhdGlvbiBsZWF2ZSIsICJvbiBzaWNrIGxlYXZlIiBhbmQgIm9uIG92ZXJ0aW1lIGxlYXZlIiB0byBtdWx0aXBsZSBkYXRlcyBhdCBvbmNlLid9ID0KICAgICAgICAn5aaC5p6c5ZCv55So77yM5YiZ55So5oi35Y+v5Lul5LiA5qyh5Zyo5aSa5Liq5pel5pyf5Lit6L6T5YWl4oCc5LyR5YGH4oCd77yM4oCc55eF5YGH4oCd77yMIuWKoOePreiwg+S8kSLjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWF4aW11bSBudW1iZXIgb2Ygd29ya2luZyBkYXlzIGFmdGVyIHdoaWNoIHRoZSB3b3JraW5nIHVuaXRzIGhhdmUgdG8gYmUgaW5zZXJ0ZWQuJ30gPQogICAgICAgICflt6XkvZzmlbDmja7mt7vliqDlkI7lhYHorrjnmoTmnIDlpKflt6Xml6XjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWF4aW11bSBudW1iZXIgb2Ygd29ya2luZyBkYXlzIHdpdGhvdXQgd29ya2luZyB1bml0cyBlbnRyeSBhZnRlciB3aGljaCBhIHdhcm5pbmcgd2lsbCBiZSBzaG93bi4nfSA9CiAgICAgICAgJ+ayoeacieW3peS9nOaVsOaNruiusOW9leeahOW3peS9nOaXpeeahOacgOWkp+aVsOmHj++8iOWmguaenOi2hei/h++8jOWImeS8muaYvuekuuitpuWRiu+8ieOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydmlldy4nfSA9ICfmpoLop4jjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCB0aW1lIHJlcG9ydGluZy4nfSA9ICfpobnnm67lt6Xml7bmiqXlkYrjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVndWxhciBleHByZXNzaW9ucyBmb3IgY29uc3RyYWluaW5nIGFjdGlvbiBsaXN0IGFjY29yZGluZyB0byBzZWxlY3RlZCBwcm9qZWN0LiBLZXkgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9uIGZvciBwcm9qZWN0KHMpLCBjb250ZW50IGNvbnRhaW5zIHJlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGFjdGlvbihzKS4nfSA9CiAgICAgICAgJ+mAieWumumhueebrueahOmZkOWItua0u+WKqOa4heWNleS9v+eUqOeahOato+WImeihqOi+vuW8j+OAgumUruWMheWQq+S6humhueebru+8iFByb2plY3Rz77yJ55qE5q2j5YiZ6KGo6L6+5byP77yM5YC85YyF5ZCr5LqG5rS75Yqo77yIQWN0aW9u77yJ55qE5q2j5YiZ6KGo6L6+5byP44CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBwcm9qZWN0IGxpc3QgYWNjb3JkaW5nIHRvIHVzZXIgZ3JvdXBzLiBLZXkgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9uIGZvciBwcm9qZWN0KHMpLCBjb250ZW50IGNvbnRhaW5zIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIGdyb3Vwcy4nfSA9CiAgICAgICAgJ+eUqOaIt+e7hOeahOmZkOWItumhueebrua4heWNleS9v+eUqOeahOato+WImeihqOi+vuW8j+OAgktleeWMheWQq+S6humhueebru+8iFByb2plY3Rz77yJ55qE5q2j5YiZ6KGo6L6+5byP77yMQ29udGVudOWMheWQq+S6humAl+WPt+WIhumalOeahOe7hOa4heWNleOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaG93IGFjY291bnRlZCB0aW1lcyBmb3IgdGhpcyB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3BlY2lmaWVzIGlmIHdvcmtpbmcgaG91cnMgY2FuIGJlIGluc2VydGVkIHdpdGhvdXQgc3RhcnQgYW5kIGVuZCB0aW1lcy4nfSA9CiAgICAgICAgJ+aMh+WumuWcqOayoeacieW8gOWni+WSjOe7k+adn+aXtumXtOeahOaDheWGteS4i+aYr+WQpuWPr+S7peaPkuWFpeW3peaXtuaVsOaNruOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTeW5jaHJvbmlzZSBjdXN0b21lcnMgYXMgYSBuZXcgcHJvamVjdCBpZiB0aGV5IGV4aXN0cyBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBtb2R1bGUgZm9yY2VzIGluc2VydHMgaW4gVGltZUFjY291bnRpbmcuJ30gPSAn5pys5qih5Z2X5Yqf6IO95o+S5YWl5Yiw5bel5pe2566h55CG5Lit44CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgbm90aWZpY2F0aW9uIG1vZHVsZSBnaXZlcyBhIHdhcm5pbmcgaWYgdGhlcmUgYXJlIHRvbyBtYW55IGluY29tcGxldGUgd29ya2luZyBkYXlzLid9ID0KICAgICAgICAn5aaC5pyJ5pyJ5aSq5aSa5LiN5a6M5pW055qE5bel5pel77yM6K+l6YCa55+l5qih5Z2X5Lya5Y+R5Ye65ZGK6K2m44CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCB0aW1lIHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIEFjY291bnRpbmcnfSA9ICflt6Xml7bnrqHnkIYnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBSZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIGVkaXQuJ30gPSAn5bel5pe2566h55CG57yW6L6R44CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBvdmVydmlldy4nfSA9ICflt6Xml7bnrqHnkIbmpoLop4jjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHJlcG9ydGluZy4nfSA9ICflt6Xml7bnrqHnkIbmiqXlkYrjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHNldHRpbmdzLid9ID0gJ+W3peaXtueuoeeQhuiuvue9ruOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdGlja2V0IHJlcG9ydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHZpZXcuJ30gPSAn5bel5pe2566h55CG5p+l55yL44CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZy4nfSA9ICflt6Xml7bnrqHnkIbjgIInOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG8gdXNlIGlmIHNvbWUgYWN0aW9ucyByZWR1Y2VkIHRoZSB3b3JraW5nIGhvdXJzIChmb3IgZXhhbXBsZSwgaWYgb25seSBoYWxmIG9mIHRoZSB0cmF2ZWxpbmcgdGltZSBpcyBwYWlkIEtleSA9PiB0cmF2ZWxpbmc7IENvbnRlbnQgPT4gNTApLid9ID0KICAgICAgICAn5Zyo5LiA5Lqb5rS75Yqo5YeP5bCR5bel5L2c5bCP5pe25pWw55qE5pe25YCZ5L2/55So77yI5aaC77ya5Y+q6Iqx6LS55LqG5LiA5Y2K55qE5beu5peF5pe26Ze077yM5YiZS2V5PT7lt67ml4XvvJtDb250ZW50PT41MO+8ieOAgic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2UgU2VydmljZSBhcyBBY3Rpb24uIFBsZWFzZSBhZGQgYXMga2V5IHRoZSB0aW1lYWNvdW50aW5nIGFjdGlvbiBhbmQgdGhlIHNlcnZpY2UgYXMgdmFsdWUuIFJlZ0V4IGFyZSBhbGxvd2VkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIG5lZWQgdG8gc2V0IGEgZGVmYXVsdCBhY3Rpb24gaWQgd2hlbiB3ZSBzeW5jIFRpbWVVbml0cyB0byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIG5lZWQgdG8gc2V0IGEgZGVmYXVsdCBwcm9qZWN0IGlkIHdoZW4gd2Ugc3luYyBUaW1lVW5pdHMgdG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydXZSBzYXZlIHRoZSBBcnRpY2xlIFRpbWVVbml0IHRvIGEgRHluYW1pY0ZpZWxkIGZyb20gdHlwZSAiQXJ0aWNsZSIuIFBsZWFzZSBhZGQgaGVyZSB0aGUgbmFtZSBvZiB0aGUgZmllbGQgaWYgdGhlIGluaXRpbmFsIG5hbWUgaXMgY2hhbmdlZC4nfSA9CiAgICAgICAgJyc7CgoKICAgIHB1c2ggQHsgJFNlbGYtPntKYXZhU2NyaXB0U3RyaW5nc30gLy8gW10gfSwgKAogICAgJ0NhbmNlbCcsCiAgICAnQ29uZmlybSBpbnNlcnQnLAogICAgJ0RlbGV0ZSBUaW1lIEFjY291bnRpbmcgRW50cnknLAogICAgJ01hc3MgRW50cnknLAogICAgJ05vJywKICAgICdQbGVhc2UgY2hvb3NlIGEgcmVhc29uIGZvciBhYnNlbmNlIScsCiAgICAnUGxlYXNlIGNob29zZSBhdCBsZWFzdCBvbmUgZGF5IScsCiAgICAnU3VibWl0JywKICAgICdZZXMnLAogICAgKTsKCn0KCjE7Cg==</File>
        <File Location="Kernel/Language/zh_TW_TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TGFuZ3VhZ2U6OnpoX1RXX1RpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgdXRmODsKCnN1YiBEYXRhIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaWNrZXRBY2NvdW50VGltZQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWRkIFRpbWUgQWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayd9ID0gJ+W3peS9nCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZW1hcmsnfSA9ICflgpnoqLsnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3RhcnQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgdGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlIHRpbWUgcGVyaW9kIG11c3QgYmUgZ2l2ZW4gaW4gaG91cnMgYW5kIGNhbiBiZSBhIGRlY2ltYWwgbnVtYmVyLid9ID0KICAgICAgICAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEbyB5b3UgcmVhbGx5IHdhbnQgdG8gZGVsZXRlIHRoZSBUaW1lIEFjY291bnRpbmcgb2YgdGhpcyBkYXk/J30gPQogICAgICAgICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdFZGl0CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgUmVjb3JkJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzJ30gPSAn5YmN5b6A6Kit5a6aJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RhdGUgTmF2aWdhdGlvbid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEYXlzIHdpdGhvdXQgZW50cmllcyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTZWxlY3QgYWxsIGRheXMnfSA9ICfpgbjlj5bmiYDmnInml6XlrZAnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTWFzcyBlbnRyeSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQbGVhc2UgY2hvb3NlIHRoZSByZWFzb24gZm9yIHlvdXIgYWJzZW5jZSBmb3IgdGhlIHNlbGVjdGVkIGRheXMnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiB2YWNhdGlvbid9ID0gJ+S8keWBhyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPbiBzaWNrIGxlYXZlJ30gPSAn55eF5YGHJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J09uIG92ZXJ0aW1lIGxlYXZlJ30gPSAn6LaF5pmC5bel5L2c6KOc5YGHJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSAiKiIuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBoYXZlIHRvIGZpbGwgaW4gc3RhcnQgYW5kIGVuZCB0aW1lIG9yIGEgdGltZSBwZXJpb2QuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QnfSA9ICfpoIXnm64nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3JpZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVcnNwcnVuZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcGVhdGVkIGhvdXJzIGFyZSBub3QgYWxsb3dlZC4gU3RhcnQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eycyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4nfSA9ICcyNDowMCDlj6rlrrnoqLHmlrzoqK3lrprntZDmnZ/mmYLplpMnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCB0aW1lISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4nfSA9ICfnhKHmlYjnmoTmmYLplpMhIOS4gOaXpeWPquaciTI05bCP5pmC44CCJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VuZCB0aW1lIG11c3QgYmUgYWZ0ZXIgc3RhcnQgdGltZS4nfSA9ICfntZDmnZ/mmYLplpPlv4XpoIjlnKjplovlp4vmmYLplpPkuYvlvownOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBFbmQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSW52YWxpZCBwZXJpb2QhIEEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBIHZhbGlkIHBlcmlvZCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiB6ZXJvLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbnZhbGlkIHBlcmlvZCEgTmVnYXRpdmUgcGVyaW9kcyBhcmUgbm90IGFsbG93ZWQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1N1Ym1pdCBjaGFuZ2VzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBvbmUgcm93J30gPSAn5re75Yqg5LiA6KGMJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1lvdSBjYW4gb25seSBzZWxlY3Qgb25lIGNoZWNrYm94IGVsZW1lbnQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gc2ljayBsZWF2ZT8nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiB2YWNhdGlvbj8nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBvdmVydGltZSBsZWF2ZT8nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIG1vcmUgdGhhbiAxNiBob3Vycz8nfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdPdmVydmlldwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSByZXBvcnRpbmcgbW9udGhseSBvdmVydmlldyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAoSG91cnMpJ30gPSAn6LaF5pmCICjlsI/mmYIpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ0aW1lICh0aGlzIG1vbnRoKSd9ID0gJ+i2heaZgiAo5q2k5pyIKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSAodG90YWwpJ30gPSAn6LaF5pmCICjnuL3oqIgpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlbWFpbmluZyBvdmVydGltZSBsZWF2ZSd9ID0gJ+mkmOS4i+eahOi2heaZguW3peS9nOijnOWBhyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiAoRGF5cyknfSA9ICfkvJHlgYcgKOaXpSknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24gdGFrZW4gKHRoaXMgbW9udGgpJ30gPSAn5bey5o+Q5Lqk55qE5LyR5YGHICjmraTmnIgpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZhY2F0aW9uIHRha2VuICh0b3RhbCknfSA9ICflt7Lmj5DkuqTnmoTkvJHlgYcgKOe4veioiCknOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVtYWluaW5nIHZhY2F0aW9uJ30gPSAn6aSY5LiL55qE5LyR5YGHJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgTGVhdmUgKERheXMpJ30gPSAn55eF5YGHICjml6UpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUgdGFrZW4gKHRoaXMgbW9udGgpJ30gPSAn5bey5pS+55qE55eF5YGHICjmraTmnIgpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NpY2sgbGVhdmUgdGFrZW4gKHRvdGFsKSd9ID0gJ+W3suaUvueahOeXheWBhyAo57i96KiIKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcmV2aW91cyBtb250aCd9ID0gJ+S4iuaciCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXh0IG1vbnRoJ30gPSAn5LiL5pyIJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlZWtkYXknfSA9ICflubPml6UnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV29ya2luZyBIb3Vycyd9ID0gJ+W3peS9nOaZgumWkyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUb3RhbCB3b3JrZWQgaG91cnMnfSA9ICflt6XkvZzmmYLplpPnuL3oqIgnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlclwncyBwcm9qZWN0IG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0hvdXJzIChtb250aGx5KSd9ID0gJ+Wwj+aZgiAo5q+P5pyIKSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyAoTGlmZXRpbWUpJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dyYW5kIHRvdGFsJ30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHJlcG9ydGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNb250aCBOYXZpZ2F0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIGRhdGUnfSA9ICfliY3lvoDml6XmnJ8nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciByZXBvcnRzJ30gPSAn55So5oi25aCx5ZGKJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01vbnRobHkgdG90YWwnfSA9ICfmr4/mnIjnuL3oqIgnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGlmZXRpbWUgdG90YWwnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnT3ZlcnRpbWUgbGVhdmUnfSA9ICfotoXmmYLlt6XkvZzoo5zlgYcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmFjYXRpb24nfSA9ICfkvJHlgYcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU2ljayBsZWF2ZSd9ID0gJ+eXheWBhyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydWYWNhdGlvbiByZW1haW5pbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCByZXBvcnRzJ30gPSAnJzsKCiAgICAjIFRlbXBsYXRlOiBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nUHJvamVjdAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJvamVjdCByZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnR28gdG8gcmVwb3J0aW5nIG92ZXJ2aWV3J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0N1cnJlbnRseSBvbmx5IGFjdGl2ZSB1c2VycyBpbiB0aGlzIHByb2plY3QgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0N1cnJlbnRseSBhbGwgdGltZSBhY2NvdW50aW5nIHVzZXJzIGFyZSBzaG93bi4gVG8gY2hhbmdlIHRoaXMgYmVoYXZpb3IsIHBsZWFzZSB1cGRhdGUgc2V0dGluZzonfSA9CiAgICAgICAgJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldAogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGlja2V0IHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydHbyB0byB0aWNrZXQnfSA9ICcnOwoKICAgICMgVGVtcGxhdGU6IEFnZW50VGltZUFjY291bnRpbmdTZXR0aW5nCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IFRpbWUgQWNjb3VudGluZyBQcm9qZWN0IFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBwcm9qZWN0J30gPSAn5re75Yqg6aCF55uuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0dvIHRvIHNldHRpbmdzIG92ZXJ2aWV3J30gPSAn5YmN5b6A6Kit5a6a5qaC5rOBJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBQcm9qZWN0J30gPSAn5re75Yqg6aCF55uuJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgUHJvamVjdCBTZXR0aW5ncyd9ID0gJ+e3qOi8r+mgheebruioreWumic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgcHJvamVjdCB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGltZSBBY2NvdW50aW5nIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCB0YXNrJ30gPSAn5re75Yqg5bel5L2cJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBhIHVzZXIgdG8gdGltZSBhY2NvdW50aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGaWx0ZXIgZm9yIHByb2plY3RzLCB0YXNrcyBvciB1c2Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIHBlcmlvZHMgY2FuIG5vdCBiZSBkZWxldGVkLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IExpc3QnfSA9ICfpoIXnm67liJfooagnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayBMaXN0J30gPSAn5bel5L2c5YiX6KGoJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCBUYXNrJ30gPSAn5re75Yqg5bel5L2cJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgVGFzayBTZXR0aW5ncyd9ID0gJ+e3qOi8r+W3peS9nOioreWumic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGVyZSBpcyBhbHJlYWR5IGEgdGFzayB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgTGlzdCd9ID0gJ+eUqOaItuWIl+ihqCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIFNldHRpbmdzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBzZWUgb3ZlcnRpbWVzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Nob3cgT3ZlcnRpbWUnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciBpcyBhbGxvd2VkIHRvIGNyZWF0ZSBwcm9qZWN0cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyBwcm9qZWN0IGNyZWF0aW9uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZXIgaXMgYWxsb3dlZCB0byBza2lwIHRpbWUgYWNjb3VudGluZyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBbGxvdyB0aW1lIGFjY291bnRpbmcgc2tpcHBpbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgdGhpcyBvcHRpb24gaXMgc2VsZWN0ZWQsIHRpbWUgYWNjb3VudGluZyBpcyBlZmZlY3RpdmVseSBvcHRpb25hbCBmb3IgdGhlIHVzZXIuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhlcmUgd2lsbCBiZSBubyB3YXJuaW5ncyBhYm91dCBtaXNzaW5nIGVudHJpZXMgYW5kIG5vIGVudHJ5IGVuZm9yY2VtZW50Lid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgU3BhbnMnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGVyaW9kIEJlZ2luJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BlcmlvZCBFbmQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGF5cyBvZiBWYWNhdGlvbid9ID0gJ+S8keWBh+aXpeaVuCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydIb3VycyBwZXIgV2Vlayd9ID0gJ+Wwj+aZgi/mr4/pgLEnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQXV0aG9yaXplZCBPdmVydGltZSd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdGFydCBEYXRlJ30gPSAn6ZaL5aeL5pmC6ZaTJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBpbnNlcnQgYSB2YWxpZCBkYXRlLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFbmQgRGF0ZSd9ID0gJ+e1kOadn+aZgumWkyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgZW5kIG11c3QgYmUgYWZ0ZXIgcGVyaW9kIGJlZ2luLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMZWF2ZSBEYXlzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlZWtseSBIb3Vycyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydPdmVydGltZSd9ID0gJ+i2heaZguW3peS9nCc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyB0aW1lIHBlcmlvZHMgZm91bmQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FkZCB0aW1lIHBlcmlvZCd9ID0gJyc7CgogICAgIyBUZW1wbGF0ZTogQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1ZpZXcgVGltZSBSZWNvcmQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldyBvZiAnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUHJldmlvdXMgZGF5J30gPSAn5YmN5LiA5aSpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05leHQgZGF5J30gPSAn5LiL5LiA5aSpJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J05vIGRhdGEgZm91bmQgZm9yIHRoaXMgZGF5Lid9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ0VkaXQucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NhblwndCBpbnNlcnQgV29ya2luZyBVbml0cyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnTGFzdCBQcm9qZWN0cyd9ID0gJ+acgOW+jOeahOmgheebric7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydDYW5cJ3Qgc2F2ZSBzZXR0aW5ncywgYmVjYXVzZSBhIGRheSBoYXMgb25seSAyNCBob3VycyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGRlbGV0ZSBXb3JraW5nIFVuaXRzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGlzIERhdGUgaXMgb3V0IG9mIGxpbWl0LCBidXQgeW91IGhhdmVuXCd0IGluc2VydCB0aGlzIGRheSB5ZXQsIHNvIHlvdSBnZXQgb25lKCEpIGNoYW5jZSB0byBpbnNlcnQnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIFdvcmtpbmcgRGF5cyd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWNjZXNzZnVsIGluc2VydCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRXJyb3Igd2hpbGUgaW5zZXJ0aW5nIG11bHRpcGxlIGRhdGVzISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTdWNjZXNzZnVsbHkgaW5zZXJ0ZWQgZW50cmllcyBmb3Igc2V2ZXJhbCBkYXRlcyEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRW50ZXJlZCBkYXRlIHdhcyBpbnZhbGlkISBEYXRlIHdhcyBjaGFuZ2VkIHRvIHRvZGF5Lid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydObyB0aW1lIHBlcmlvZCBjb25maWd1cmVkLCBvciB0aGUgc3BlY2lmaWVkIGRhdGUgaXMgb3V0c2lkZSBvZiB0aGUgZGVmaW5lZCB0aW1lIHBlcmlvZHMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNvbnRhY3QgdGhlIHRpbWUgYWNjb3VudGluZyBhZG1pbmlzdHJhdG9yIHRvIHVwZGF0ZSB5b3VyIHRpbWUgcGVyaW9kcyEnfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydMYXN0IFNlbGVjdGVkIFByb2plY3RzJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FsbCBQcm9qZWN0cyd9ID0gJ+aJgOaciemgheebric7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL01vZHVsZXMvQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nUHJvamVjdDogTmVlZCBQcm9qZWN0SUQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nIFByb2plY3QnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUmVwb3J0aW5nJ30gPSAn5aCx5ZGKJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0LnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZXBvcnRpbmdQcm9qZWN0OiBOZWVkIFRpY2tldElEJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlcG9ydGluZ1Byb2plY3Q6IE5vIFByb2plY3QgZm9yIFRpY2tldCBmb3VuZC4nfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9Nb2R1bGVzL0FnZW50VGltZUFjY291bnRpbmdTZXR0aW5nLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVbmFibGUgdG8gdXBkYXRlIHVzZXIgc2V0dGluZ3MhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgYWRkZWQhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1Byb2plY3QgdXBkYXRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayBhZGRlZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGFzayB1cGRhdGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaGUgVXNlcklEIGlzIG5vdCB2YWxpZCEnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQ2FuXCd0IGluc2VydCB1c2VyIGRhdGEhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VuYWJsZSB0byBhZGQgdGltZSBwZXJpb2QhJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1NldHRpbmcnfSA9ICfoqK3nva4nOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVXNlciB1cGRhdGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydVc2VyIGFkZGVkISd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydOZXcgVXNlcid9ID0gJ+aWsOeUqOaItic7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQZXJpb2QgU3RhdHVzJ30gPSAnJzsKCiAgICAjIFBlcmwgTW9kdWxlOiBLZXJuZWwvTW9kdWxlcy9BZ2VudFRpbWVBY2NvdW50aW5nVmlldy5wbQogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVmlldzogTmVlZCAlcyEnfSA9ICcnOwoKICAgICMgUGVybCBNb2R1bGU6IEtlcm5lbC9PdXRwdXQvSFRNTC9Ob3RpZmljYXRpb24vVGltZUFjY291bnRpbmcucG0KICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBpbnNlcnQgeW91ciB3b3JraW5nIGhvdXJzISd9ID0gJyc7CgogICAgIyBQZXJsIE1vZHVsZTogS2VybmVsL091dHB1dC9IVE1ML1Rvb2xCYXIvSW5jb21wbGV0ZVdvcmtpbmdEYXlzLnBtCiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydJbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyd9ID0gJyc7CgogICAgIyBKUyBGaWxlOiBUaW1lQWNjb3VudGluZy5BZ2VudC5FZGl0VGltZVJlY29yZHMKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1BsZWFzZSBjaG9vc2UgYXQgbGVhc3Qgb25lIGRheSEnfSA9ICfoq4vpgbjlj5boh7PlsJHkuIDlpKkhJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J01hc3MgRW50cnknfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnUGxlYXNlIGNob29zZSBhIHJlYXNvbiBmb3IgYWJzZW5jZSEnfSA9ICfoq4vpgbjmk4fnvLrluK3ljp/lm6AhJzsKCiAgICAjIEpTIEZpbGU6IFRpbWVBY2NvdW50aW5nLkFnZW50CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWxldGUgVGltZSBBY2NvdW50aW5nIEVudHJ5J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NvbmZpcm0gaW5zZXJ0J30gPSAn56K66KqN5o+S5YWlJzsKCiAgICAjIFN5c0NvbmZpZwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWN0aXZhdGUgdGhlIHN5bmNocm9uaXNhdGlvbiBvZiBUaWNrZXQtVGltZVVuaXRzIGludG8gdGhlIFRpbWVBY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydBZ2VudCBpbnRlcmZhY2Ugbm90aWZpY2F0aW9uIG1vZHVsZSB0byBzZWUgdGhlIG51bWJlciBvZiBpbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyBmb3IgdGhlIHVzZXIuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnQWxzbyBzeW5jaHJvbmlzZSBjdXN0b21lcnMgYXMgYSBuZXcgcHJvamVjdCBpZiB0aGV5IGhhdmUgbm90IHlldCBiZWVuIGNyZWF0ZWQgaW4gdGhlIGN1c3RvbWVyIGRhdGFiYXNlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0FzIHNvb24gYXMgdGhlIHN5bmNocm9uaXNhdGlvbiBvZiB0aWNrZXQgVGltZVVuaXRzIGlzIGFjdGl2YXRlZCwgaXQgaXMgcG9zc2libGUgdG8gc2V0IHRoZSBlbnRyaWVzIFJlYWRPbmx5Lid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0NyZWF0ZSBhIG5ldyB0aW1lIGFjY291bnRpbmcgZW50cnkgcmVsYXRlZCB0byB0aGUgdGlja2V0J30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgbmFtZSBmb3IgbmV3IGFjdGlvbnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgbmFtZSBmb3IgbmV3IHByb2plY3RzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRhdGUgZW5kLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHNldHRpbmcgZm9yIGRhdGUgc3RhcnQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgZGVzY3JpcHRpb24uJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc2V0dGluZyBmb3IgbGVhdmUgZGF5cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciBvdmVydGltZS4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnRGVmYXVsdCBzZXR0aW5nIGZvciB0aGUgc3RhbmRhcmQgd2Vla2x5IGhvdXJzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZWZhdWx0IHN0YXR1cyBmb3IgbmV3IGFjdGlvbnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgcHJvamVjdHMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgdXNlcnMuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0RlZmluZXMgdGhlIHByb2plY3RzIGZvciB3aGljaCBhIHJlbWFyayBpcyByZXF1aXJlZC4gSWYgdGhlIFJlZ0V4cCBtYXRjaGVzIG9uIHRoZSBwcm9qZWN0LCB5b3UgaGF2ZSB0byBpbnNlcnQgYSByZW1hcmsgdG9vLiBUaGUgUmVnRXhwIHVzZSB0aGUgc214IHBhcmFtZXRlci4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydEZXRlcm1pbmVzIGlmIHRoZSBzdGF0aXN0aWNzIG1vZHVsZSBtYXkgZ2VuZXJhdGUgdGltZSBhY2NvdW50aW5nIGluZm9ybWF0aW9uLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0VkaXQgdGltZSBhY2NvdW50aW5nIHNldHRpbmdzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFZGl0IHRpbWUgcmVjb3JkLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydFdmVyeSB0aW1lIGEgYWdlbnQgYWRkIFRpbWVVbml0cyB0byBhIHRpY2tldCwgd2Ugc3luYyB0aGUgaW5mb3JtYXRpb24gdG8gdGhlIHRpbWVhY2NvdW50aW5nIG1vZHVsZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydGb3IgaG93IG1hbnkgZGF5cyBhZ28geW91IGNhbiBpbnNlcnQgd29ya2luZyB1bml0cy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgb25seSB1c2VycyB0aGF0IGhhcyBhZGRlZCB3b3JraW5nIHRpbWUgdG8gdGhlIHNlbGVjdGVkIHByb2plY3QgYXJlIHNob3duLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBkcm9wZG93biBlbGVtZW50cyBpbiB0aGUgZWRpdCBzY3JlZW4gYXJlIGNoYW5nZWQgdG8gbW9kZXJuaXplZCBhdXRvY29tcGxldGlvbiBmaWVsZHMuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIGZpbHRlciBmb3IgdGhlIHByZXZpb3VzIHByb2plY3RzIGNhbiBiZSB1c2VkIGluc3RlYWQgdHdvIGxpc3Qgb2YgcHJvamVjdHMgKGxhc3QgYW5kIGFsbCBvbmVzKS4gSXQgY291bGQgYmUgdXNlZCBvbmx5IGlmIFRpbWVBY2NvdW50aW5nOjpFbmFibGVBdXRvQ29tcGxldGlvbiBpcyBlbmFibGVkLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J0lmIGVuYWJsZWQsIHRoZSBmaWx0ZXIgZm9yIHRoZSBwcmV2aW91cyBwcm9qZWN0cyBpcyBhY3RpdmUgYnkgZGVmYXVsdCBpZiB0aGVyZSBhcmUgdGhlIHByZXZpb3VzIHByb2plY3RzLiBJdCBjb3VsZCBiZSB1c2VkIG9ubHkgaWYgRW5hYmxlQXV0b0NvbXBsZXRpb24gYW5kIFRpbWVBY2NvdW50aW5nOjpVc2VGaWx0ZXIgYXJlIGVuYWJsZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnSWYgZW5hYmxlZCwgdGhlIHVzZXIgaXMgYWxsb3dlZCB0byBlbnRlciAib24gdmFjYXRpb24gbGVhdmUiLCAib24gc2ljayBsZWF2ZSIgYW5kICJvbiBvdmVydGltZSBsZWF2ZSIgdG8gbXVsdGlwbGUgZGF0ZXMgYXQgb25jZS4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXhpbXVtIG51bWJlciBvZiB3b3JraW5nIGRheXMgYWZ0ZXIgd2hpY2ggdGhlIHdvcmtpbmcgdW5pdHMgaGF2ZSB0byBiZSBpbnNlcnRlZC4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydNYXhpbXVtIG51bWJlciBvZiB3b3JraW5nIGRheXMgd2l0aG91dCB3b3JraW5nIHVuaXRzIGVudHJ5IGFmdGVyIHdoaWNoIGEgd2FybmluZyB3aWxsIGJlIHNob3duLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J092ZXJ2aWV3Lid9ID0gJ+amguazgSc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydQcm9qZWN0IHRpbWUgcmVwb3J0aW5nLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydSZWd1bGFyIGV4cHJlc3Npb25zIGZvciBjb25zdHJhaW5pbmcgYWN0aW9uIGxpc3QgYWNjb3JkaW5nIHRvIHNlbGVjdGVkIHByb2plY3QuIEtleSBjb250YWlucyByZWd1bGFyIGV4cHJlc3Npb24gZm9yIHByb2plY3QocyksIGNvbnRlbnQgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9ucyBmb3IgYWN0aW9uKHMpLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1JlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGNvbnN0cmFpbmluZyBwcm9qZWN0IGxpc3QgYWNjb3JkaW5nIHRvIHVzZXIgZ3JvdXBzLiBLZXkgY29udGFpbnMgcmVndWxhciBleHByZXNzaW9uIGZvciBwcm9qZWN0KHMpLCBjb250ZW50IGNvbnRhaW5zIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIGdyb3Vwcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTaG93IGFjY291bnRlZCB0aW1lcyBmb3IgdGhpcyB0aWNrZXQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnU3BlY2lmaWVzIGlmIHdvcmtpbmcgaG91cnMgY2FuIGJlIGluc2VydGVkIHdpdGhvdXQgc3RhcnQgYW5kIGVuZCB0aW1lcy4nfSA9CiAgICAgICAgJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydTeW5jaHJvbmlzZSBjdXN0b21lcnMgYXMgYSBuZXcgcHJvamVjdCBpZiB0aGV5IGV4aXN0cyBpbiB0aGUgY3VzdG9tZXIgZGF0YWJhc2UuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGhpcyBtb2R1bGUgZm9yY2VzIGluc2VydHMgaW4gVGltZUFjY291bnRpbmcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RoaXMgbm90aWZpY2F0aW9uIG1vZHVsZSBnaXZlcyBhIHdhcm5pbmcgaWYgdGhlcmUgYXJlIHRvbyBtYW55IGluY29tcGxldGUgd29ya2luZyBkYXlzLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpY2tldCB0aW1lIHJlcG9ydCd9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIEFjY291bnRpbmcnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBSZXBvcnQnfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIGVkaXQuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZyBvdmVydmlldy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHJlcG9ydGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHNldHRpbmdzLid9ID0gJyc7CiAgICAkU2VsZi0+e1RyYW5zbGF0aW9ufS0+eydUaW1lIGFjY291bnRpbmcgdGlja2V0IHJlcG9ydC4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVGltZSBhY2NvdW50aW5nIHZpZXcuJ30gPSAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1RpbWUgYWNjb3VudGluZy4nfSA9ICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnVG8gdXNlIGlmIHNvbWUgYWN0aW9ucyByZWR1Y2VkIHRoZSB3b3JraW5nIGhvdXJzIChmb3IgZXhhbXBsZSwgaWYgb25seSBoYWxmIG9mIHRoZSB0cmF2ZWxpbmcgdGltZSBpcyBwYWlkIEtleSA9PiB0cmF2ZWxpbmc7IENvbnRlbnQgPT4gNTApLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1VzZSBTZXJ2aWNlIGFzIEFjdGlvbi4gUGxlYXNlIGFkZCBhcyBrZXkgdGhlIHRpbWVhY291bnRpbmcgYWN0aW9uIGFuZCB0aGUgc2VydmljZSBhcyB2YWx1ZS4gUmVnRXggYXJlIGFsbG93ZWQuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2UgbmVlZCB0byBzZXQgYSBkZWZhdWx0IGFjdGlvbiBpZCB3aGVuIHdlIHN5bmMgVGltZVVuaXRzIHRvIHRoZSBUaW1lQWNjb3VudGluZyBtb2R1bGUuJ30gPQogICAgICAgICcnOwogICAgJFNlbGYtPntUcmFuc2xhdGlvbn0tPnsnV2UgbmVlZCB0byBzZXQgYSBkZWZhdWx0IHByb2plY3QgaWQgd2hlbiB3ZSBzeW5jIFRpbWVVbml0cyB0byB0aGUgVGltZUFjY291bnRpbmcgbW9kdWxlLid9ID0KICAgICAgICAnJzsKICAgICRTZWxmLT57VHJhbnNsYXRpb259LT57J1dlIHNhdmUgdGhlIEFydGljbGUgVGltZVVuaXQgdG8gYSBEeW5hbWljRmllbGQgZnJvbSB0eXBlICJBcnRpY2xlIi4gUGxlYXNlIGFkZCBoZXJlIHRoZSBuYW1lIG9mIHRoZSBmaWVsZCBpZiB0aGUgaW5pdGluYWwgbmFtZSBpcyBjaGFuZ2VkLid9ID0KICAgICAgICAnJzsKCgogICAgcHVzaCBAeyAkU2VsZi0+e0phdmFTY3JpcHRTdHJpbmdzfSAvLyBbXSB9LCAoCiAgICAnQ2FuY2VsJywKICAgICdDb25maXJtIGluc2VydCcsCiAgICAnRGVsZXRlIFRpbWUgQWNjb3VudGluZyBFbnRyeScsCiAgICAnTWFzcyBFbnRyeScsCiAgICAnTm8nLAogICAgJ1BsZWFzZSBjaG9vc2UgYSByZWFzb24gZm9yIGFic2VuY2UhJywKICAgICdQbGVhc2UgY2hvb3NlIGF0IGxlYXN0IG9uZSBkYXkhJywKICAgICdTdWJtaXQnLAogICAgJ1llcycsCiAgICApOwoKfQoKMTsK</File>
        <File Location="Kernel/Modules/AgentTicketAccountTime.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TW9kdWxlczo6QWdlbnRUaWNrZXRBY2NvdW50VGltZTsKCnVzZSBzdHJpY3Q7CnVzZSB3YXJuaW5nczsKCnVzZSBNYWlsOjpBZGRyZXNzOwoKdXNlIEtlcm5lbDo6U3lzdGVtOjpWYXJpYWJsZUNoZWNrIHF3KDphbGwpOwp1c2UgS2VybmVsOjpMYW5ndWFnZSAgICAgICAgICAgICAgcXcoVHJhbnNsYXRhYmxlKTsKCm91ciAkT2JqZWN0TWFuYWdlckRpc2FibGVkID0gMTsKCnN1YiBuZXcgewogICAgbXkgKCAkVHlwZSwgJVBhcmFtICkgPSBAXzsKCiAgICAjIGFsbG9jYXRlIG5ldyBoYXNoIGZvciBvYmplY3QKICAgIG15ICRTZWxmID0geyVQYXJhbX07CiAgICBibGVzcyggJFNlbGYsICRUeXBlICk7CgogICAgcmV0dXJuICRTZWxmOwp9CgpzdWIgUnVuIHsKICAgIG15ICggJFNlbGYsICVQYXJhbSApID0gQF87CgogICAgbXkgJENvbmZpZ09iamVjdCAgICAgICAgID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpDb25maWcnKTsKICAgIG15ICRMYXlvdXRPYmplY3QgICAgICAgICA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6T3V0cHV0OjpIVE1MOjpMYXlvdXQnKTsKICAgIG15ICRUaW1lQWNjb3VudGluZ09iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycpOwogICAgbXkgJFBhcmFtT2JqZWN0ICAgICAgICAgID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OldlYjo6UmVxdWVzdCcpOwogICAgbXkgJFRpY2tldE9iamVjdCAgICAgICAgID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlRpY2tldCcpOwoKICAgIG15ICRUaWNrZXRJRCA9ICRQYXJhbU9iamVjdC0+R2V0UGFyYW0oCiAgICAgICAgUGFyYW0gPT4gJ1RpY2tldElEJywKICAgICk7CgogICAgIyBnZXQgaW50cmluc2ljIFByb2plY3RJRCBhbmQgUHJvamVjdE5hbWUKICAgIG15ICRQcm9qZWN0SUQ7CgogICAgIyBGaXJzdCBvZiBhbGwsIHdlIGNoZWNrIGlmIHRoZSBwcm9qZWN0IChjdXN0b21lcl9pZCkgYWxyZWFkeSBleGlzdHMgb3IgbmVlZCB0byBjcmVhdGUKICAgIG15ICVUaWNrZXQgPSAkVGlja2V0T2JqZWN0LT5UaWNrZXRHZXQoCiAgICAgICAgVGlja2V0SUQgPT4gJFRpY2tldElELAogICAgICAgIFVzZXJJRCAgID0+IDEsCiAgICApOwoKICAgIG15ICRQcm9qZWN0TmFtZSA9ICRTZWxmLT5fQ2hlY2tQcm9qZWN0TmFtZSgKICAgICAgICBQcm9qZWN0TmFtZSA9PiAkVGlja2V0e0N1c3RvbWVySUR9IHx8ICcnLAogICAgKTsKCiAgICBteSAlUHJvamVjdERhdGEgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlByb2plY3RHZXQoCiAgICAgICAgUHJvamVjdCA9PiAkUHJvamVjdE5hbWUKICAgICk7CgogICAgIyBjcmVhdGUgdGhlIHByb2plY3QgaWYgaXQgbm90IGV4aXN0LgoKICAgICMgc3BsaXQgdGhlIGRhdGUgdG8geWVhciBtb250aCBkYXkKICAgIG15ICRZZWFyOwogICAgbXkgJE1vbnRoOwogICAgbXkgJERheTsKICAgIGlmICggJFRpY2tldHtDcmVhdGVkfSA9fiAvXihcZFxkXGRcZClcLShcZFxkKVwtKFxkXGQpLiokLyApIHsKICAgICAgICAkWWVhciAgPSAkMTsKICAgICAgICAkTW9udGggPSAkMjsKICAgICAgICAkRGF5ICAgPSAkMzsKICAgIH0KCiAgICBpZiAoICFJc0hhc2hSZWZXaXRoRGF0YSggXCVQcm9qZWN0RGF0YSApICkgewogICAgICAgICRQcm9qZWN0SUQgPSAkU2VsZi0+X0NyZWF0ZVByb2plY3QoCiAgICAgICAgICAgIFByb2plY3ROYW1lID0+ICRQcm9qZWN0TmFtZSwKICAgICAgICAgICAgWWVhciAgICAgICAgPT4gJFllYXIsCiAgICAgICAgICAgIE1vbnRoICAgICAgID0+ICRNb250aCwKICAgICAgICAgICAgRGF5ICAgICAgICAgPT4gJERheSwKICAgICAgICApOwogICAgfQogICAgZWxzZSB7CiAgICAgICAgJFByb2plY3RJRCA9ICRQcm9qZWN0RGF0YXtJRH07CiAgICB9CgogICAgIyBhY3Rpb24gc3RyaW5nCiAgICBteSAlQWN0aW9uTGlzdCAgICAgICAgICAgID0gJFNlbGYtPl9BY3Rpb25MaXN0KCk7CiAgICBteSAkQWN0aW9uTGlzdENvbnN0cmFpbnRzID0gJENvbmZpZ09iamVjdC0+R2V0KCdUaW1lQWNjb3VudGluZzo6QWN0aW9uTGlzdENvbnN0cmFpbnRzJyk7CgogICAgIyBhY3Rpb24gbGlzdCBpbml0aWFsbHkgb25seSBjb250YWlucyBlbXB0eSBhbmQgc2VsZWN0ZWQgZWxlbWVudCBhcyB3ZWxsIGFzIGVsZW1lbnRzCiAgICAjIGNvbmZpZ3VyZWQgZm9yIHNlbGVjdGVkIHByb2plY3QKICAgICMgaWYgbm8gY29uc3RyYWludHMgYXJlIGNvbmZpZ3VyZWQsIGFsbCBhY3Rpb25zIHdpbGwgYmUgZGlzcGxheWVkCiAgICBteSAkQWN0aW9uQ29uc3RyYWluZWRMaXN0ID0gJFNlbGYtPl9BY3Rpb25MaXN0Q29uc3RyYWludHMoCiAgICAgICAgUHJvamVjdE5hbWUgICAgICAgICAgID0+ICRQcm9qZWN0TmFtZSwKICAgICAgICBBY3Rpb25MaXN0ICAgICAgICAgICAgPT4gXCVBY3Rpb25MaXN0LAogICAgICAgIEFjdGlvbkxpc3RDb25zdHJhaW50cyA9PiAkQWN0aW9uTGlzdENvbnN0cmFpbnRzLAogICAgKTsKCiAgICBpZiAoICRTZWxmLT57U3ViYWN0aW9ufSBlcSAnU3RvcmVOZXcnICkgewoKICAgICAgICAjIGdldCBwYXJhbXMKICAgICAgICBteSAlR2V0UGFyYW07CiAgICAgICAgZm9yIG15ICRLZXkgKHF3KERheSBNb250aCBZZWFyIFRhc2tJRCBSZW1hcmsgU3RhcnRUaW1lIEVuZFRpbWUgUGVyaW9kIFRpY2tldElEIFByb2plY3RJRCkpIHsKICAgICAgICAgICAgJEdldFBhcmFteyRLZXl9ID0gJFBhcmFtT2JqZWN0LT5HZXRQYXJhbSgKICAgICAgICAgICAgICAgIFBhcmFtID0+ICRLZXksCiAgICAgICAgICAgICk7CiAgICAgICAgfQogICAgICAgICRHZXRQYXJhbXtQZXJpb2R9ID1+IHMvLC8uLzsKICAgICAgICBteSAlRXJyb3JzID0gJFNlbGYtPl9WYWxpZGF0ZSgKICAgICAgICAgICAgJUdldFBhcmFtLAogICAgICAgICk7CiAgICAgICAgaWYgKCVFcnJvcnMpIHsKCiAgICAgICAgICAgICMgZGF0ZSBzdHJpbmcKICAgICAgICAgICAgbXkgJERhdGVTdHJpbmcgPSAkTGF5b3V0T2JqZWN0LT5CdWlsZERhdGVTZWxlY3Rpb24oCiAgICAgICAgICAgICAgICBZZWFyUGVyaW9kRnV0dXJlICAgICAgICA9PiAwLAogICAgICAgICAgICAgICAgWWVhciAgICAgICAgICAgICAgICAgICAgPT4gJEdldFBhcmFte1llYXJ9LAogICAgICAgICAgICAgICAgTW9udGggICAgICAgICAgICAgICAgICAgPT4gJEdldFBhcmFte01vbnRofSwKICAgICAgICAgICAgICAgIERheSAgICAgICAgICAgICAgICAgICAgID0+ICRHZXRQYXJhbXtEYXl9LAogICAgICAgICAgICAgICAgQ2xhc3MgICAgICAgICAgICAgICAgICAgPT4gJ1ZhbGlkYXRlX1JlcXVpcmVkICcgLiAkRXJyb3Jze0RhdGVFcnJvcn0sCiAgICAgICAgICAgICAgICBWYWxpZGF0ZURhdGVOb3RJbkZ1dHVyZSA9PiAxLAoKICAgICAgICAgICAgICAgICNWYWxpZGF0ZSA9PiAxLAogICAgICAgICAgICApOwoKICAgICAgICAgICAgbXkgJEFjdGlvbklEU3RyaW5nID0gJExheW91dE9iamVjdC0+QnVpbGRTZWxlY3Rpb24oCiAgICAgICAgICAgICAgICBEYXRhICAgICAgICAgPT4gJEFjdGlvbkNvbnN0cmFpbmVkTGlzdCwKICAgICAgICAgICAgICAgIE5hbWUgICAgICAgICA9PiAnVGFza0lEJywKICAgICAgICAgICAgICAgIENsYXNzICAgICAgICA9PiAnTW9kZXJuaXplIFZhbGlkYXRlX1JlcXVpcmVkICcgLiAkRXJyb3Jze1Rhc2tJREVycm9yfSwKICAgICAgICAgICAgICAgIFNlbGVjdGVkSUQgICA9PiAkR2V0UGFyYW17VGFza0lEfSwKICAgICAgICAgICAgICAgIFBvc3NpYmxlTm9uZSA9PiAxLAogICAgICAgICAgICApOwoKICAgICAgICAgICAgbXkgJE91dHB1dCA9IGpvaW4gJycsCiAgICAgICAgICAgICAgICAkTGF5b3V0T2JqZWN0LT5IZWFkZXIoCgogICAgICAgICAgICAgICAgICAgICNWYWx1ZSAgICAgPT4gJFRpY2tldHtUaWNrZXROdW1iZXJ9LAogICAgICAgICAgICAgICAgICAgIFR5cGUgICAgICA9PiAnU21hbGwnLAogICAgICAgICAgICAgICAgICAgIEJvZHlDbGFzcyA9PiAnUG9wdXAnLAogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5PdXRwdXQoCiAgICAgICAgICAgICAgICBUZW1wbGF0ZUZpbGUgPT4gJ0FnZW50VGlja2V0QWNjb3VudFRpbWUnLAogICAgICAgICAgICAgICAgRGF0YSAgICAgICAgID0+IHsKICAgICAgICAgICAgICAgICAgICBEYXRlU3RyaW5nICAgPT4gJERhdGVTdHJpbmcsCiAgICAgICAgICAgICAgICAgICAgVGFza0lEU3RyaW5nID0+ICRBY3Rpb25JRFN0cmluZywKICAgICAgICAgICAgICAgICAgICAlR2V0UGFyYW0sCiAgICAgICAgICAgICAgICAgICAgJUVycm9ycywKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICk7CiAgICAgICAgICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+Rm9vdGVyKCk7CgogICAgICAgICAgICByZXR1cm4gJE91dHB1dDsKICAgICAgICB9CiAgICAgICAgbXkgJFN1Y2Nlc3MgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPldvcmtpbmdVbml0c0luc2VydCgKICAgICAgICAgICAgWWVhciAgICAgICAgID0+ICRHZXRQYXJhbXtZZWFyfSwKICAgICAgICAgICAgTW9udGggICAgICAgID0+ICRHZXRQYXJhbXtNb250aH0sCiAgICAgICAgICAgIERheSAgICAgICAgICA9PiAkR2V0UGFyYW17RGF5fSwKICAgICAgICAgICAgTGVhdmVEYXkgICAgID0+IDAsCiAgICAgICAgICAgIFNpY2sgICAgICAgICA9PiAwLAogICAgICAgICAgICBPdmVydGltZSAgICAgPT4gMCwKICAgICAgICAgICAgV29ya2luZ1VuaXRzID0+IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBQcm9qZWN0SUQgID0+ICRHZXRQYXJhbXtQcm9qZWN0SUR9LAogICAgICAgICAgICAgICAgICAgIEFjdGlvbklEICAgPT4gJEdldFBhcmFte1Rhc2tJRH0sCiAgICAgICAgICAgICAgICAgICAgUmVtYXJrICAgICA9PiAkR2V0UGFyYW17UmVtYXJrfSwKICAgICAgICAgICAgICAgICAgICBUaWNrZXRJRCAgID0+ICRHZXRQYXJhbXtUaWNrZXRJRH0sCiAgICAgICAgICAgICAgICAgICAgU3RhcnRUaW1lICA9PiAkR2V0UGFyYW17U3RhcnRUaW1lfSwKICAgICAgICAgICAgICAgICAgICBFbmRUaW1lICAgID0+ICRHZXRQYXJhbXtFbmRUaW1lfSwKICAgICAgICAgICAgICAgICAgICBQZXJpb2QgICAgID0+ICRHZXRQYXJhbXtQZXJpb2R9LAogICAgICAgICAgICAgICAgICAgIEJhc2VNb2R1bGUgPT4gJ1RpY2tldCcsCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICBdLAogICAgICAgICAgICBVc2VySUQgICAgICAgICA9PiAkU2VsZi0+e1VzZXJJRH0sCiAgICAgICAgICAgIEV4dGVybmFsSW5zZXJ0ID0+IDEsCiAgICAgICAgKTsKICAgICAgICBpZiAoICEkU3VjY2VzcyApIHsKICAgICAgICAgICAgJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkxvZycpLT5Mb2coCiAgICAgICAgICAgICAgICBQcmlvcml0eSA9PiAnZXJyb3InLAogICAgICAgICAgICAgICAgTWVzc2FnZSAgPT4gIkNvdWxkIG5vdCBpbnNlcnQgd29ya2luZyB1bml0cyAoIiAuICRQYXJhbU9iamVjdC0+R2V0UGFyYW0oIFBhcmFtID0+ICdQZXJpb2QnICkKICAgICAgICAgICAgICAgICAgICAuICIpIG9mIHRpY2tldCAoVGlja2V0SUQ6ICIgLiAkUGFyYW1PYmplY3QtPkdldFBhcmFtKCBQYXJhbSA9PiAnVGlja2V0SUQnICkKICAgICAgICAgICAgICAgICAgICAuICIpIGZvciBVc2VySUQgJFNlbGYtPntVc2VySUR9LiIKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgIG15ICRDb25maWcgPSAkQ29uZmlnT2JqZWN0LT5HZXQoJ1RpY2tldDo6RnJvbnRlbmQ6OkFnZW50VGlja2V0QWNjb3VudFRpbWUnKSAvLyB7fTsKCiAgICAgICAgIyBjaGFsbGVuZ2UgdG9rZW4gY2hlY2sgZm9yIHdyaXRlIGFjdGlvbgogICAgICAgICRMYXlvdXRPYmplY3QtPkNoYWxsZW5nZVRva2VuQ2hlY2soKTsKICAgICAgICByZXR1cm4gJExheW91dE9iamVjdC0+UG9wdXBDbG9zZSgKICAgICAgICAgICAgVVJMID0+ICJBY3Rpb249QWdlbnRUaWNrZXRab29tO1RpY2tldElEPSRUaWNrZXRJRCIsCgogICAgICAgICAgICAjUmVsb2FkID0+IDEsCiAgICAgICAgKTsKICAgIH0KCiAgICAjIGRhdGUgc3RyaW5nCiAgICBteSAkRGF0ZVN0cmluZyA9ICRMYXlvdXRPYmplY3QtPkJ1aWxkRGF0ZVNlbGVjdGlvbigKICAgICAgICBZZWFyUGVyaW9kRnV0dXJlICAgICAgICA9PiAwLAogICAgICAgIENsYXNzICAgICAgICAgICAgICAgICAgID0+ICdWYWxpZGF0ZV9SZXF1aXJlZCcsCiAgICAgICAgVmFsaWRhdGVEYXRlTm90SW5GdXR1cmUgPT4gMSwKCiAgICAgICAgI1ZhbGlkYXRlID0+IDEsCiAgICApOwoKICAgICMgZ2V0IHRoZSBwcmVzZWxlY3RlZCBBY3Rpb25JRCBpZiBhbnkgaXMgZWxlZ2libGUKICAgIG15ICRBY3Rpb25JRDsKCiAgICAjIGlmIHRoZXJlIGlzIG9ubHkgb25lIGFjdGlvbiBhdmFpbGFibGUsIHRoYXQgb25lIHNob3VsZCBiZSBwcmVzZWxlY3RlZAogICAgbXkgQEFjdGlvbklETGlzdCA9IGtleXMgJSRBY3Rpb25Db25zdHJhaW5lZExpc3Q7CiAgICBpZiAoIHNjYWxhciBAQWN0aW9uSURMaXN0ID09IDEgKSB7CiAgICAgICAgJEFjdGlvbklEID0gJEFjdGlvbklETGlzdFswXTsKICAgIH0KICAgIGVsc2UgewoKICAgICAgICAjIG90aGVyd2lzZSBwcmVzZWxlY3QgdGhlIGFjdGlvbiBhc3NvY2lhdGVkIHRvIHRoZSB0aWNrZXQgc2VydmljZSwgaWYgc3VjaCBhc3NvY2lhdGlvbiBpcyBkZWZpbmVkIGFuZCB0aGUgYWN0aW9uIGlzIHdpdGhpbiBjb25zdHJhaW50cwogICAgICAgIG15ICRTZXJ2aWNlVG9BY3Rpb25IYXNoUmVmID0gJENvbmZpZ09iamVjdC0+R2V0KCdUaW1lQWNjb3VudGluZzo6VGlja2V0U3luYzo6U2VydmljZVRvQWN0aW9uJyk7CiAgICAgICAgaWYgKCBJc0hhc2hSZWZXaXRoRGF0YSgkU2VydmljZVRvQWN0aW9uSGFzaFJlZikgKSB7CgogICAgICAgICAgICBBQ1RJT046CiAgICAgICAgICAgIGZvciBteSAkQWN0aW9uICgga2V5cyAlJFNlcnZpY2VUb0FjdGlvbkhhc2hSZWYgKSB7CiAgICAgICAgICAgICAgICBteSAkU2VydmljZUFycmF5UmVmID0gJFNlcnZpY2VUb0FjdGlvbkhhc2hSZWYtPnskQWN0aW9ufTsKCiAgICAgICAgICAgICAgICBTRVJWSUNFOgogICAgICAgICAgICAgICAgZm9yIG15ICRTZXJ2aWNlIChAJFNlcnZpY2VBcnJheVJlZikgewogICAgICAgICAgICAgICAgICAgIG5leHQgU0VSVklDRSBpZiAkVGlja2V0e1NlcnZpY2V9ICF+IC8kU2VydmljZS9pOwoKICAgICAgICAgICAgICAgICAgICAjIGhhdmluZyB0aGUgcmlnaHQgc2VydmljZSBhbmQgYWN0aW9uLCBnZXQgdGhlIElEIGFuZCBjaGVjayBpZiBpdCBiZWxvbmdzIHRvIHRoZSBmaW5hbCBjb25zdHJhaW5lZCBhY3Rpdml0aWVzIGxpc3QKICAgICAgICAgICAgICAgICAgICBteSAlQWN0aW9uRGF0YSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+QWN0aW9uR2V0KAogICAgICAgICAgICAgICAgICAgICAgICBBY3Rpb24gPT4gJEFjdGlvbgogICAgICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICAgICAgaWYgKCAkQWN0aW9uQ29uc3RyYWluZWRMaXN0LT57ICRBY3Rpb25EYXRhe0lEfSB9ICkgewogICAgICAgICAgICAgICAgICAgICAgICAkQWN0aW9uSUQgPSAkQWN0aW9uRGF0YXtJRH07CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGxhc3QgQUNUSU9OOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIG15ICRBY3Rpb25JRFN0cmluZyA9ICRMYXlvdXRPYmplY3QtPkJ1aWxkU2VsZWN0aW9uKAogICAgICAgIERhdGEgICAgICAgICA9PiAkQWN0aW9uQ29uc3RyYWluZWRMaXN0LAogICAgICAgIE5hbWUgICAgICAgICA9PiAnVGFza0lEJywKICAgICAgICBDbGFzcyAgICAgICAgPT4gJ01vZGVybml6ZSBWYWxpZGF0ZV9SZXF1aXJlZCcsCiAgICAgICAgU2VsZWN0ZWRJRCAgID0+ICRBY3Rpb25JRCwKICAgICAgICBQb3NzaWJsZU5vbmUgPT4gMSwKICAgICk7CgogICAgbXkgJE91dHB1dCA9IGpvaW4gJycsCiAgICAgICAgJExheW91dE9iamVjdC0+SGVhZGVyKAogICAgICAgICAgICBWYWx1ZSAgICAgPT4gJFRpY2tldHtUaWNrZXROdW1iZXJ9LAogICAgICAgICAgICBUeXBlICAgICAgPT4gJ1NtYWxsJywKICAgICAgICAgICAgQm9keUNsYXNzID0+ICdQb3B1cCcsCiAgICAgICAgKTsKICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+T3V0cHV0KAogICAgICAgIFRlbXBsYXRlRmlsZSA9PiAnQWdlbnRUaWNrZXRBY2NvdW50VGltZScsCiAgICAgICAgRGF0YSAgICAgICAgID0+IHsKICAgICAgICAgICAgRGF0ZVN0cmluZyAgID0+ICREYXRlU3RyaW5nLAogICAgICAgICAgICBUYXNrSURTdHJpbmcgPT4gJEFjdGlvbklEU3RyaW5nLAogICAgICAgICAgICBUaWNrZXRJRCAgICAgPT4gJFRpY2tldElELAogICAgICAgICAgICBQcm9qZWN0SUQgICAgPT4gJFByb2plY3RJRCwKICAgICAgICB9LAogICAgKTsKICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+Rm9vdGVyKCk7CgogICAgcmV0dXJuICRPdXRwdXQ7Cn0KCnN1YiBfQWN0aW9uTGlzdCB7CiAgICBteSAkU2VsZiA9IHNoaWZ0OwoKICAgIG15ICVBY3Rpb25MaXN0OwogICAgbXkgJUFjdGlvbiA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycpLT5BY3Rpb25TZXR0aW5nc0dldCgpOwoKICAgICMgZ2V0IGFjdGlvbiBzZXR0aW5ncwogICAgQUNUSU9OSUQ6CiAgICBmb3IgbXkgJEFjdGlvbklEICggc29ydCBrZXlzICVBY3Rpb24gKSB7CiAgICAgICAgbmV4dCBBQ1RJT05JRCBpZiAhJEFjdGlvbnskQWN0aW9uSUR9e0FjdGlvblN0YXR1c307CiAgICAgICAgbmV4dCBBQ1RJT05JRCBpZiAhJEFjdGlvbnskQWN0aW9uSUR9e0FjdGlvbn07CiAgICAgICAgJEFjdGlvbkxpc3R7JEFjdGlvbklEfSA9ICRBY3Rpb257JEFjdGlvbklEfXtBY3Rpb259OwogICAgfQogICAgJEFjdGlvbkxpc3R7Jyd9ID0gJyc7CgogICAgcmV0dXJuICVBY3Rpb25MaXN0Owp9CgpzdWIgX0FjdGlvbkxpc3RDb25zdHJhaW50cyB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgIG15ICVMaXN0OwogICAgaWYgKCAkUGFyYW17UHJvamVjdE5hbWV9ICYmIGtleXMgJXsgJFBhcmFte0FjdGlvbkxpc3RDb25zdHJhaW50c30gfSApIHsKCiAgICAgICAgIyBsb29wIG92ZXIgYWN0aW9ucyB0byBmaW5kIG1hdGNoZXMgZm9yIGNvbmZpZ3VyZWQgcHJvamVjdAogICAgICAgICMgYW5kIGFjdGlvbiByZWctZXhwIHBhaXJzCiAgICAgICAgZm9yIG15ICRBY3Rpb25JRCAoIHNvcnQga2V5cyAleyAkUGFyYW17QWN0aW9uTGlzdH0gfSApIHsKCiAgICAgICAgICAgIG15ICRBY3Rpb25OYW1lID0gJFBhcmFte0FjdGlvbkxpc3R9eyRBY3Rpb25JRH07CgogICAgICAgICAgICBQUk9KRUNUTkFNRVJFR0VYUDoKICAgICAgICAgICAgZm9yIG15ICRQcm9qZWN0TmFtZVJlZ0V4cCAoIHNvcnQga2V5cyAleyAkUGFyYW17QWN0aW9uTGlzdENvbnN0cmFpbnRzfSB9ICkgewogICAgICAgICAgICAgICAgbXkgJEFjdGlvbk5hbWVSZWdFeHAgPSAkUGFyYW17QWN0aW9uTGlzdENvbnN0cmFpbnRzfXskUHJvamVjdE5hbWVSZWdFeHB9OwogICAgICAgICAgICAgICAgaWYgKAogICAgICAgICAgICAgICAgICAgICRQYXJhbXtQcm9qZWN0TmFtZX0gPX4gbXskUHJvamVjdE5hbWVSZWdFeHB9c214CiAgICAgICAgICAgICAgICAgICAgJiYgJEFjdGlvbk5hbWUgPX4gbXskQWN0aW9uTmFtZVJlZ0V4cH1zbXgKICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgJExpc3R7JEFjdGlvbklEfSA9ICRBY3Rpb25OYW1lOwogICAgICAgICAgICAgICAgICAgIGxhc3QgUFJPSkVDVE5BTUVSRUdFWFA7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgIyBhbGwgYXZhaWxhYmxlIGFjdGlvbnMgd2lsbCBiZSBhZGRlZCBpZiBubyBhY3Rpb24gd2FzIGFkZGVkIGFib3ZlIChwb3NzaWJsZSBtaXNjb25maWd1cmF0aW9uKQogICAgaWYgKCAha2V5cyAlTGlzdCApIHsKICAgICAgICBmb3IgbXkgJEFjdGlvbklEICggc29ydCBrZXlzICV7ICRQYXJhbXtBY3Rpb25MaXN0fSB9ICkgewogICAgICAgICAgICBteSAkQWN0aW9uTmFtZSA9ICRQYXJhbXtBY3Rpb25MaXN0fXskQWN0aW9uSUR9OwogICAgICAgICAgICAkTGlzdHskQWN0aW9uSUR9ID0gJEFjdGlvbk5hbWU7CiAgICAgICAgfQogICAgfQoKICAgIHJldHVybiBcJUxpc3Q7Cn0KCnN1YiBfQ2hlY2tQcm9qZWN0TmFtZSB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgIG15ICRUaW1lQWNjb3VudGluZ09iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycpOwogICAgbXkgJENvbmZpZ09iamVjdCAgICAgICAgID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpDb25maWcnKTsKCiAgICBteSAkRGVmYXVsdFByb2plY3RJRCA9ICRDb25maWdPYmplY3QtPkdldCgnVGltZUFjY291bnRpbmc6OlRpY2tldFN5bmM6OkRlZmF1bHRQcm9qZWN0SUQnKTsKICAgIG15ICVEZWZhdWx0UHJvamVjdCAgID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Qcm9qZWN0R2V0KCBJRCA9PiAkRGVmYXVsdFByb2plY3RJRCApOwogICAgbXkgJERlZmF1bHROYW1lICAgICAgPSAkRGVmYXVsdFByb2plY3R7UHJvamVjdH07CgogICAgIyBjaGVjayBuZWVkZWQgc3R1ZmYKICAgIGlmICggISRQYXJhbXtQcm9qZWN0TmFtZX0gKSB7CiAgICAgICAgcmV0dXJuICREZWZhdWx0TmFtZTsKICAgIH0KCiAgICAjIElmIHRoaXMgb3B0aW9uIGlzIGRpc2FibGVkLCByZXR1cm4uIFdlIGRvIG5vdCBjcmVhdGUgYSBwcm9qZWN0LgogICAgaWYgKCAhJENvbmZpZ09iamVjdC0+R2V0KCdUaW1lQWNjb3VudGluZzo6VGlja2V0U3luYzo6Q3JlYXRlUHJvamVjdEZyb21DdXN0b21lcklEJykgKSB7CiAgICAgICAgcmV0dXJuICREZWZhdWx0TmFtZTsKICAgIH0KCiAgICAjIE5vdyB3ZSBuZWVkIHRvIGNoZWNrIGlmIHRoZSBjdXN0b21lciBjb21wYW55IGV4aXN0cyBhbHJlYWR5IGV4aXN0cyBpbnNpZGUgdGhlIGRhdGFiYXNlCiAgICBteSAkQ3VzdG9tZXJDb21wYW55T2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkN1c3RvbWVyQ29tcGFueScpOwoKICAgICMgQ2hlY2sgaWYgYSBjdXN0b21lciBjb21wYW55IGFscmVhZHkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBjb21wYW55IGRhdGFiYXNlCiAgICBteSAlQ3VzdG9tZXJDb21wYW55ID0gJEN1c3RvbWVyQ29tcGFueU9iamVjdC0+Q3VzdG9tZXJDb21wYW55R2V0KAogICAgICAgIEN1c3RvbWVySUQgPT4gJFBhcmFte1Byb2plY3ROYW1lfSwKICAgICk7CgogICAgIyBSZXR1cm4gcmVndWxhciBwcm9qZWN0IGNhdXNlIGN1c3RvbWVyY29tcGFueSBleGlzdHMKICAgIGlmICggSXNIYXNoUmVmV2l0aERhdGEoIFwlQ3VzdG9tZXJDb21wYW55ICkgKSB7CiAgICAgICAgbXkgJVByb2plY3REYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Qcm9qZWN0R2V0KCBQcm9qZWN0ID0+ICRQYXJhbXtQcm9qZWN0TmFtZX0gKTsKCiAgICAgICAgaWYgKCBJc0hhc2hSZWZXaXRoRGF0YSggXCVQcm9qZWN0RGF0YSApICkgewogICAgICAgICAgICByZXR1cm4gJFByb2plY3REYXRhe1Byb2plY3R9OwogICAgICAgIH0KICAgICAgICByZXR1cm4gJFBhcmFte1Byb2plY3ROYW1lfTsKICAgIH0KCiAgICAjIEN1c3RvbWVyIGNvbXBhbnkgbm90IGV4aXN0LCBzbyB3ZSBuZWVkIHRvIGNoZWNrIGlmIHdlIGNyZWF0ZSBwcm9qZWN0cyBmcm9tIHRtcCBjdXN0b21lcnMuCiAgICBpZiAoICEkQ29uZmlnT2JqZWN0LT5HZXQoJ1RpbWVBY2NvdW50aW5nOjpUaWNrZXRTeW5jOjpDcmVhdGVQcm9qZWN0RnJvbVRNUEN1c3RvbWVySUQnKSApIHsKICAgICAgICByZXR1cm4gJERlZmF1bHROYW1lOwogICAgfQoKICAgICMgTm93IHdlIG5vdyB0aGF0IHdlIG5lZWQgdG8gY3JlYXRlIHRoZSBwcm9qZWN0IGlmIGl0IG5vdCBleGlzdAogICAgbXkgKCAkVXNlciwgJERvbWFpbiApID0gc3BsaXQoIC9ALywgJFBhcmFte1Byb2plY3ROYW1lfSApOwogICAgbXkgJVByb2plY3REYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Qcm9qZWN0R2V0KCBQcm9qZWN0ID0+ICREb21haW4gKTsKCiAgICBpZiAoIElzSGFzaFJlZldpdGhEYXRhKCBcJVByb2plY3REYXRhICkgKSB7CiAgICAgICAgcmV0dXJuICRQcm9qZWN0RGF0YXtQcm9qZWN0fTsKICAgIH0KICAgIGVsc2UgewoKICAgICAgICByZXR1cm4gJERvbWFpbjsKICAgIH0KICAgIHJldHVybiAkRGVmYXVsdE5hbWU7Cn0KCnN1YiBfQ3JlYXRlUHJvamVjdCB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgICMgY2hlY2sgbmVlZGVkIHN0dWZmCiAgICBpZiAoICEkUGFyYW17UHJvamVjdE5hbWV9ICYmICEkUGFyYW17WWVhcn0gJiYgISRQYXJhbXtNb250aH0gJiYgISRQYXJhbXtEYXl9ICkgewogICAgICAgICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpMb2cnKS0+TG9nKAogICAgICAgICAgICBQcmlvcml0eSA9PiAnZXJyb3InLAogICAgICAgICAgICBNZXNzYWdlICA9PiAnTmVlZCBOYW1lIScsCiAgICAgICAgKTsKICAgICAgICByZXR1cm47CiAgICB9CgogICAgbXkgJFRpbWVBY2NvdW50aW5nT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlRpbWVBY2NvdW50aW5nJyk7CgogICAgbXkgJFByb2plY3RJRCA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+UHJvamVjdFNldHRpbmdzSW5zZXJ0KAogICAgICAgIFByb2plY3QgICAgICAgICAgICA9PiAkUGFyYW17UHJvamVjdE5hbWV9LAogICAgICAgIFByb2plY3REZXNjcmlwdGlvbiA9PiAiQ3JlYXRlIFRpbWU6ICRQYXJhbXtZZWFyfS0kUGFyYW17TW9udGh9LSRQYXJhbXtEYXl9IiwKICAgICAgICBQcm9qZWN0U3RhdHVzICAgICAgPT4gMSwKICAgICk7CgogICAgaWYgKCRQcm9qZWN0SUQpIHsKICAgICAgICByZXR1cm4gJFByb2plY3RJRDsKICAgIH0KfQoKc3ViIF9WYWxpZGF0ZSB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgIG15ICRJc1ZhbGlkRGF0ZSA9ICRTZWxmLT5fSXNWYWxpZERhdGUoCiAgICAgICAgWWVhciAgPT4gJFBhcmFte1llYXJ9LAogICAgICAgIE1vbnRoID0+ICRQYXJhbXtNb250aH0sCiAgICAgICAgRGF5ICAgPT4gJFBhcmFte0RheX0sCiAgICApOwogICAgaWYgKCAhJElzVmFsaWREYXRlICkgewoKICAgICAgICByZXR1cm4gKAogICAgICAgICAgICBEYXRlRXJyb3IgPT4gJ1NlcnZlckVycm9yJywKICAgICAgICApOwogICAgfQogICAgbXkgJElzVmFsaWRQZXJpb2QgPSAkU2VsZi0+X0lzVmFsaWRQZXJpb2QoCiAgICAgICAgUGVyaW9kID0+ICRQYXJhbXtQZXJpb2R9LAogICAgKTsKICAgIGlmICggISRJc1ZhbGlkUGVyaW9kICkgewoKICAgICAgICByZXR1cm4gKAogICAgICAgICAgICBQZXJpb2RFcnJvciA9PiAnU2VydmVyRXJyb3InLAogICAgICAgICk7CiAgICB9CiAgICBteSAkSXNWYWxpZFRhc2tJRCA9ICRTZWxmLT5fSXNWYWxpZFRhc2tJRCgKICAgICAgICBUYXNrSUQgPT4gJFBhcmFte1Rhc2tJRH0sCiAgICApOwogICAgaWYgKCAhJElzVmFsaWRUYXNrSUQgKSB7CgogICAgICAgIHJldHVybiAoCiAgICAgICAgICAgIFRhc2tJREVycm9yID0+ICdTZXJ2ZXJFcnJvcicsCiAgICAgICAgKTsKICAgIH0KCiAgICByZXR1cm47Cn0KCnN1YiBfSXNWYWxpZERhdGUgewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICByZXR1cm4gaWYgISRQYXJhbXtEYXl9IHx8ICEkUGFyYW17TW9udGh9IHx8ICEkUGFyYW17WWVhcn07CgogICAgbXkgJERhdGVUaW1lT2JqZWN0UGFyYW0gPSAkS2VybmVsOjpPTS0+Q3JlYXRlKCdLZXJuZWw6OlN5c3RlbTo6RGF0ZVRpbWUnKTsKICAgIG15ICRUaW1lWm9uZSAgICAgICAgICAgID0gJFNlbGYtPntVc2VyVGltZVpvbmV9IHx8ICREYXRlVGltZU9iamVjdFBhcmFtLT5PVE9CT1RpbWVab25lR2V0KCk7CiAgICBteSAkSXNWYWxpZERhdGUgICAgICAgICA9ICREYXRlVGltZU9iamVjdFBhcmFtLT5WYWxpZGF0ZSgKICAgICAgICBZZWFyICAgICA9PiAkUGFyYW17WWVhcn0sCiAgICAgICAgTW9udGggICAgPT4gJFBhcmFte01vbnRofSwKICAgICAgICBEYXkgICAgICA9PiAkUGFyYW17RGF5fSwKICAgICAgICBIb3VyICAgICA9PiAwLAogICAgICAgIE1pbnV0ZSAgID0+IDAsCiAgICAgICAgU2Vjb25kICAgPT4gMCwKICAgICAgICBUaW1lWm9uZSA9PiAkVGltZVpvbmUsCiAgICApOwoKICAgIHJldHVybiBpZiAhJElzVmFsaWREYXRlOwoKICAgICREYXRlVGltZU9iamVjdFBhcmFtLT5TZXQoCiAgICAgICAgWWVhciAgICAgPT4gJFBhcmFte1llYXJ9LAogICAgICAgIE1vbnRoICAgID0+ICRQYXJhbXtNb250aH0sCiAgICAgICAgRGF5ICAgICAgPT4gJFBhcmFte0RheX0sCiAgICAgICAgSG91ciAgICAgPT4gMCwKICAgICAgICBNaW51dGUgICA9PiAwLAogICAgICAgIFNlY29uZCAgID0+IDAsCiAgICAgICAgVGltZVpvbmUgPT4gJFRpbWVab25lLAogICAgKTsKICAgIG15ICREYXRlVGltZU9iamVjdE5vdyA9ICRLZXJuZWw6Ok9NLT5DcmVhdGUoJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScpOwogICAgbXkgJENvbXBhcmUgICAgICAgICAgID0gJERhdGVUaW1lT2JqZWN0UGFyYW0tPkNvbXBhcmUoCiAgICAgICAgRGF0ZVRpbWVPYmplY3QgPT4gJERhdGVUaW1lT2JqZWN0Tm93LAogICAgKTsKCiAgICByZXR1cm4gaWYgJENvbXBhcmUgPT0gMTsKCiAgICByZXR1cm4gMTsKfQoKc3ViIF9Jc1ZhbGlkUGVyaW9kIHsKICAgIG15ICggJFNlbGYsICVQYXJhbSApID0gQF87CgogICAgcmV0dXJuIGlmICEkUGFyYW17UGVyaW9kfTsKCiAgICByZXR1cm4gaWYgJFBhcmFte1BlcmlvZH0gIX4gLy0/XGQrXC5cZCovOwoKICAgIHJldHVybiBpZiAkUGFyYW17UGVyaW9kfSA8PSAwIHx8ICRQYXJhbXtQZXJpb2R9ID4gMjQ7CgogICAgcmV0dXJuIDE7Cn0KCnN1YiBfSXNWYWxpZFRhc2tJRCB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgIHJldHVybiBpZiAhJFBhcmFte1Rhc2tJRH07CgogICAgcmV0dXJuIDE7Cn0KCjE7Cg==</File>
        <File Location="Kernel/Modules/AgentTimeAccountingEdit.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TW9kdWxlczo6QWdlbnRUaW1lQWNjb3VudGluZ0VkaXQ7Cgp1c2Ugc3RyaWN0Owp1c2Ugd2FybmluZ3M7Cgp1c2UgS2VybmVsOjpTeXN0ZW06OlZhcmlhYmxlQ2hlY2sgcXcoSXNBcnJheVJlZldpdGhEYXRhKTsKdXNlIEtlcm5lbDo6TGFuZ3VhZ2UgICAgICAgICAgICAgIHF3KFRyYW5zbGF0YWJsZSk7CgpvdXIgJE9iamVjdE1hbmFnZXJEaXNhYmxlZCA9IDE7CgpzdWIgbmV3IHsKICAgIG15ICggJFR5cGUsICVQYXJhbSApID0gQF87CgogICAgIyBhbGxvY2F0ZSBuZXcgaGFzaCBmb3Igb2JqZWN0CiAgICBteSAkU2VsZiA9IHslUGFyYW19OwogICAgYmxlc3MoICRTZWxmLCAkVHlwZSApOwoKICAgIG15ICREYXRlVGltZU9iamVjdCA9ICRLZXJuZWw6Ok9NLT5DcmVhdGUoJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScpOwoKICAgICRTZWxmLT57VGltZVpvbmV9ID0gJFBhcmFte1RpbWVab25lfQogICAgICAgIHx8ICRQYXJhbXtVc2VyVGltZVpvbmV9CiAgICAgICAgfHwgJERhdGVUaW1lT2JqZWN0LT5PVE9CT1RpbWVab25lR2V0KCk7CgogICAgcmV0dXJuICRTZWxmOwp9CgpzdWIgUHJlUnVuIHsKICAgIG15ICggJFNlbGYsICVQYXJhbSApID0gQF87CgogICAgIyBwZXJtaXNzaW9uIGNoZWNrCiAgICByZXR1cm4gMSBpZiAhJFNlbGYtPntBY2Nlc3NSb307CgogICAgbXkgJERhdGVUaW1lT2JqZWN0Q3VycmVudCA9ICRLZXJuZWw6Ok9NLT5DcmVhdGUoJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScpOwogICAgbXkgJFRpbWVBY2NvdW50aW5nT2JqZWN0ICA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycpOwoKICAgIG15ICggJFNlYywgJE1pbiwgJEhvdXIsICREYXksICRNb250aCwgJFllYXIgKSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+U3lzdGVtVGltZTJEYXRlKAogICAgICAgIFN5c3RlbVRpbWUgPT4gJERhdGVUaW1lT2JqZWN0Q3VycmVudC0+VG9FcG9jaCgpLAogICAgKTsKCiAgICBteSAlVXNlciA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+VXNlckN1cnJlbnRQZXJpb2RHZXQoCiAgICAgICAgWWVhciAgPT4gJFllYXIsCiAgICAgICAgTW9udGggPT4gJE1vbnRoLAogICAgICAgIERheSAgID0+ICREYXksCiAgICApOwoKICAgIHJldHVybiBpZiAhJFVzZXJ7ICRTZWxmLT57VXNlcklEfSB9OwoKICAgIG15ICVJbmNvbXBsZXRlV29ya2luZ0RheXMgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPldvcmtpbmdVbml0c0NvbXBsZXRuZXNzQ2hlY2soCiAgICAgICAgVXNlcklEID0+ICRTZWxmLT57VXNlcklEfSwKICAgICk7CgogICAgIyByZWRpcmVjdCBpZiBpbmNvbXBsZXRlIHdvcmtpbmcgZGF5IGFyZSBvdXQgb2YgcmFuZ2UKICAgIGlmICgKICAgICAgICAkSW5jb21wbGV0ZVdvcmtpbmdEYXlze0VuZm9yY2VJbnNlcnR9CiAgICAgICAgJiYgJFNlbGYtPntBY3Rpb259IG5lICdBZ2VudFRpbWVBY2NvdW50aW5nRWRpdCcKICAgICAgICAmJiAkU2VsZi0+e0FjdGlvbn0gIX4gL0FnZW50VGltZUFjY291bnRpbmcvCiAgICAgICAgKQogICAgewoKICAgICAgICByZXR1cm4gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpPdXRwdXQ6OkhUTUw6OkxheW91dCcpLT5SZWRpcmVjdCgKICAgICAgICAgICAgT1AgPT4gJ0FjdGlvbj1BZ2VudFRpbWVBY2NvdW50aW5nRWRpdCcsCiAgICAgICAgKTsKICAgIH0KCiAgICByZXR1cm47Cn0KCnN1YiBSdW4gewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICBteSBATW9udGhBcnJheSA9ICgKICAgICAgICAnJywgICAgICdKYW51YXJ5JywgJ0ZlYnJ1YXJ5JywgJ01hcmNoJywgICAgICdBcHJpbCcsICAgJ01heScsCiAgICAgICAgJ0p1bmUnLCAnSnVseScsICAgICdBdWd1c3QnLCAgICdTZXB0ZW1iZXInLCAnT2N0b2JlcicsICdOb3ZlbWJlcicsCiAgICAgICAgJ0RlY2VtYmVyJywKICAgICk7CiAgICBteSBAV2Vla2RheUFycmF5ID0gKCAnTW9uJywgJ1R1ZScsICdXZWQnLCAnVGh1JywgJ0ZyaScsICdTYXQnLCAnU3VuJywgKTsKCiAgICAjIGdldCBuZWVkZWQgb2JqZWN0cwogICAgbXkgJFBhcmFtT2JqZWN0ICAgICAgICAgICA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpXZWI6OlJlcXVlc3QnKTsKICAgIG15ICRMYXlvdXRPYmplY3QgICAgICAgICAgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6Ok91dHB1dDo6SFRNTDo6TGF5b3V0Jyk7CiAgICBteSAkVGltZUFjY291bnRpbmdPYmplY3QgID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlRpbWVBY2NvdW50aW5nJyk7CiAgICBteSAkRGF0ZVRpbWVPYmplY3RDdXJyZW50ID0gJEtlcm5lbDo6T00tPkNyZWF0ZSgnS2VybmVsOjpTeXN0ZW06OkRhdGVUaW1lJyk7CgogICAgIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKICAgICMgc2hvdyBjb25maXJtYXRpb24gZGlhbG9nIHRvIGRlbGV0ZSB0aGUgZW50cnkgb2YgdGhpcyBkYXkKICAgICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCiAgICBpZiAoICRQYXJhbU9iamVjdC0+R2V0UGFyYW0oIFBhcmFtID0+ICdEZWxldGVEaWFsb2cnICkgKSB7CgogICAgICAgIG15ICggJFNlYywgJE1pbiwgJEhvdXIsICREYXksICRNb250aCwgJFllYXIgKSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+U3lzdGVtVGltZTJEYXRlKAogICAgICAgICAgICBTeXN0ZW1UaW1lID0+ICREYXRlVGltZU9iamVjdEN1cnJlbnQtPlRvRXBvY2goKSwKICAgICAgICApOwoKICAgICAgICAjIGdldCBwYXJhbXMKICAgICAgICBmb3IgbXkgJFBhcmFtZXRlciAocXcoU3RhdHVzIFllYXIgTW9udGggRGF5KSkgewogICAgICAgICAgICAkUGFyYW17JFBhcmFtZXRlcn0gPSAkUGFyYW1PYmplY3QtPkdldFBhcmFtKCBQYXJhbSA9PiAkUGFyYW1ldGVyICk7CiAgICAgICAgfQoKICAgICAgICAjIENoZWNrIERhdGUKICAgICAgICBpZiAoICEkUGFyYW17WWVhcn0gfHwgISRQYXJhbXtNb250aH0gfHwgISRQYXJhbXtEYXl9ICkgewogICAgICAgICAgICAkUGFyYW17WWVhcn0gID0gJFllYXI7CiAgICAgICAgICAgICRQYXJhbXtNb250aH0gPSAkTW9udGg7CiAgICAgICAgICAgICRQYXJhbXtEYXl9ICAgPSAkRGF5OwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgJFBhcmFte1llYXJ9ICA9IHNwcmludGYoICIlMDJkIiwgJFBhcmFte1llYXJ9ICk7CiAgICAgICAgICAgICRQYXJhbXtNb250aH0gPSBzcHJpbnRmKCAiJTAyZCIsICRQYXJhbXtNb250aH0gKTsKICAgICAgICAgICAgJFBhcmFte0RheX0gICA9IHNwcmludGYoICIlMDJkIiwgJFBhcmFte0RheX0gKTsKICAgICAgICB9CgogICAgICAgIG15ICRPdXRwdXQgPSAkTGF5b3V0T2JqZWN0LT5PdXRwdXQoCiAgICAgICAgICAgIERhdGEgICAgICAgICA9PiB7JVBhcmFtfSwKICAgICAgICAgICAgVGVtcGxhdGVGaWxlID0+ICdBZ2VudFRpbWVBY2NvdW50aW5nRGVsZXRlJywKICAgICAgICApOwoKICAgICAgICAjIGJ1aWxkIHRoZSByZXR1cm5lZCBkYXRhIHN0cnVjdHVyZQogICAgICAgIG15ICVEYXRhID0gKAogICAgICAgICAgICBIVE1MICAgICAgID0+ICRPdXRwdXQsCiAgICAgICAgICAgIERpYWxvZ1R5cGUgPT4gJ0NvbmZpcm1hdGlvbicsCiAgICAgICAgKTsKCiAgICAgICAgIyByZXR1cm4gSlNPTi1TdHJpbmcgYmVjYXVzZSBvZiBBSkFYLU1vZGUKICAgICAgICBteSAkT3V0cHV0SlNPTiA9ICRMYXlvdXRPYmplY3QtPkpTT05FbmNvZGUoCiAgICAgICAgICAgIERhdGEgPT4gXCVEYXRhLAogICAgICAgICk7CgogICAgICAgIHJldHVybiAkTGF5b3V0T2JqZWN0LT5BdHRhY2htZW50KAogICAgICAgICAgICBDb250ZW50VHlwZSA9PiAnYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD0nIC4gJExheW91dE9iamVjdC0+e0NoYXJzZXR9LAogICAgICAgICAgICBDb250ZW50ICAgICA9PiAkT3V0cHV0SlNPTiwKICAgICAgICAgICAgVHlwZSAgICAgICAgPT4gJ2lubGluZScsCiAgICAgICAgICAgIE5vQ2FjaGUgICAgID0+IDEsCiAgICAgICAgKTsKICAgIH0KCiAgICAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIwogICAgIyBkZWxldGUgb2JqZWN0IGZyb20gZGF0YWJhc2UKICAgICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCiAgICBpZiAoICRTZWxmLT57U3ViYWN0aW9ufSBlcSAnRGVsZXRlJyApIHsKICAgICAgICBmb3IgbXkgJFBhcmFtZXRlciAocXcoRGF5IE1vbnRoIFllYXIpKSB7CiAgICAgICAgICAgICRQYXJhbXskUGFyYW1ldGVyfSA9ICRQYXJhbU9iamVjdC0+R2V0UGFyYW0oIFBhcmFtID0+ICRQYXJhbWV0ZXIgKTsKICAgICAgICB9CgogICAgICAgIGlmICggISRTZWxmLT57QWNjZXNzUm99ICkgewogICAgICAgICAgICByZXR1cm4gJExheW91dE9iamVjdC0+Tm9QZXJtaXNzaW9uKAogICAgICAgICAgICAgICAgV2l0aEhlYWRlciA9PiAneWVzJywKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgIGlmICgKICAgICAgICAgICAgISRUaW1lQWNjb3VudGluZ09iamVjdC0+V29ya2luZ1VuaXRzRGVsZXRlKAogICAgICAgICAgICAgICAgWWVhciAgID0+ICRQYXJhbXtZZWFyfSwKICAgICAgICAgICAgICAgIE1vbnRoICA9PiAkUGFyYW17TW9udGh9LAogICAgICAgICAgICAgICAgRGF5ICAgID0+ICRQYXJhbXtEYXl9LAogICAgICAgICAgICAgICAgVXNlcklEID0+ICRTZWxmLT57VXNlcklEfSwKICAgICAgICAgICAgKQogICAgICAgICAgICApCiAgICAgICAgewoKICAgICAgICAgICAgcmV0dXJuICRMYXlvdXRPYmplY3QtPkVycm9yU2NyZWVuKCk7CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gJExheW91dE9iamVjdC0+UmVkaXJlY3QoCiAgICAgICAgICAgIE9QID0+CiAgICAgICAgICAgICAgICAiQWN0aW9uPSRTZWxmLT57QWN0aW9ufTtZZWFyPSRQYXJhbXtZZWFyfTtNb250aD0kUGFyYW17TW9udGh9O0RheT0kUGFyYW17RGF5fSIsCiAgICAgICAgKTsKICAgIH0KCiAgICAjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCiAgICAjIG1hc3MgZW50cnkKICAgICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCiAgICBlbHNpZiAoICRTZWxmLT57U3ViYWN0aW9ufSBlcSAnTWFzc0VudHJ5JyApIHsKCiAgICAgICAgIyBwZXJtaXNzaW9uIGNoZWNrCiAgICAgICAgaWYgKCAhJFNlbGYtPntBY2Nlc3NSb30gKSB7CiAgICAgICAgICAgIHJldHVybiAkTGF5b3V0T2JqZWN0LT5Ob1Blcm1pc3Npb24oCiAgICAgICAgICAgICAgICBXaXRoSGVhZGVyID0+ICd5ZXMnLAogICAgICAgICAgICApOwogICAgICAgIH0KCiAgICAgICAgIyBnZXQgcGFyYW1zCiAgICAgICAgZm9yIG15ICRQYXJhbWV0ZXIgKHF3KERhdGVzIExlYXZlRGF5IFNpY2sgT3ZlcnRpbWUpKSB7CiAgICAgICAgICAgICRQYXJhbXskUGFyYW1ldGVyfSA9ICRQYXJhbU9iamVjdC0+R2V0UGFyYW0oIFBhcmFtID0+ICRQYXJhbWV0ZXIgKSB8fCAnJzsKICAgICAgICB9CgogICAgICAgICMgc3BsaXQgdXAgZGF0ZXMKICAgICAgICBteSBARGF0ZXMgICAgICAgPSBzcGxpdCAvW3xdLywgJFBhcmFte0RhdGVzfTsKICAgICAgICBteSAkSW5zZXJ0RXJyb3IgPSAwOwoKICAgICAgICAjIHNhdmUgZW50cmllcyBpbiB0aGUgZGIKICAgICAgICBmb3IgbXkgJERhdGUgKEBEYXRlcykgewoKICAgICAgICAgICAgbXkgKCAkWWVhciwgJE1vbnRoLCAkRGF5ICkgPSBzcGxpdCAvWy1dLywgJERhdGU7CgogICAgICAgICAgICBpZiAoCiAgICAgICAgICAgICAgICAhJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Xb3JraW5nVW5pdHNJbnNlcnQoCiAgICAgICAgICAgICAgICAgICAgWWVhciAgICAgPT4gJFllYXIsCiAgICAgICAgICAgICAgICAgICAgTW9udGggICAgPT4gJE1vbnRoLAogICAgICAgICAgICAgICAgICAgIERheSAgICAgID0+ICREYXksCiAgICAgICAgICAgICAgICAgICAgTGVhdmVEYXkgPT4gJFBhcmFte0xlYXZlRGF5fSB8fCAwLAogICAgICAgICAgICAgICAgICAgIFNpY2sgICAgID0+ICRQYXJhbXtTaWNrfSAgICAgfHwgMCwKICAgICAgICAgICAgICAgICAgICBPdmVydGltZSA9PiAkUGFyYW17T3ZlcnRpbWV9IHx8IDAsCiAgICAgICAgICAgICAgICAgICAgVXNlcklEICAgPT4gJFNlbGYtPntVc2VySUR9LAogICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAkSW5zZXJ0RXJyb3IgPSAxOwogICAgICAgICAgICB9CgogICAgICAgIH0KCiAgICAgICAgIyByZWRpcmVjdCB0byBlZGl0IHNjcmVlbiB3aXRoIGxvZyBtZXNzYWdlCiAgICAgICAgcmV0dXJuICRMYXlvdXRPYmplY3QtPlJlZGlyZWN0KAogICAgICAgICAgICBPUCA9PiAnQWN0aW9uPUFnZW50VGltZUFjY291bnRpbmdFZGl0O05vdGlmaWNhdGlvbj0nCiAgICAgICAgICAgICAgICAuICggJEluc2VydEVycm9yID8gJ0Vycm9yJyA6ICdTdWNjZXNzZnVsJyApLAogICAgICAgICk7CgogICAgfQoKICAgICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCiAgICAjIGVkaXQgdGhlIHRpbWUgYWNjb3VudGluZyBlbGVtZW50cwogICAgIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKCiAgICAjIHBlcm1pc3Npb24gY2hlY2sKICAgIGlmICggISRTZWxmLT57QWNjZXNzUm99ICkgewogICAgICAgIHJldHVybiAkTGF5b3V0T2JqZWN0LT5Ob1Blcm1pc3Npb24oCiAgICAgICAgICAgIFdpdGhIZWFkZXIgPT4gJ3llcycsCiAgICAgICAgKTsKICAgIH0KCiAgICBteSAkTW9kZSA9ICRQYXJhbU9iamVjdC0+R2V0UGFyYW0oIFBhcmFtID0+ICdNb2RlJyApIHx8ICcnOwoKICAgICMgZ2V0IHBhcmFtcwogICAgZm9yIG15ICRQYXJhbWV0ZXIgKHF3KFN0YXR1cyBZZWFyIE1vbnRoIERheSBOb3RpZmljYXRpb24pKSB7CiAgICAgICAgJFBhcmFteyRQYXJhbWV0ZXJ9ID0gJFBhcmFtT2JqZWN0LT5HZXRQYXJhbSggUGFyYW0gPT4gJFBhcmFtZXRlciApIHx8ICcnOwogICAgfQogICAgJFBhcmFte1JlY29yZHNOdW1iZXJ9ICAgICAgID0gJFBhcmFtT2JqZWN0LT5HZXRQYXJhbSggUGFyYW0gPT4gJ1JlY29yZHNOdW1iZXInICkgICAgICAgfHwgODsKICAgICRQYXJhbXtBcHBlbmRSZWNvcmRzTnVtYmVyfSA9ICRQYXJhbU9iamVjdC0+R2V0UGFyYW0oIFBhcmFtID0+ICdBcHBlbmRSZWNvcmRzTnVtYmVyJyApIHx8IDg7CiAgICAkUGFyYW17SW5zZXJ0V29ya2luZ1VuaXRzfSAgPSAkUGFyYW1PYmplY3QtPkdldFBhcmFtKCBQYXJhbSA9PiAnSW5zZXJ0V29ya2luZ1VuaXRzJyApOwoKICAgIG15ICggJFNlYywgJE1pbiwgJEhvdXIsICREYXksICRNb250aCwgJFllYXIgKSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+U3lzdGVtVGltZTJEYXRlKAogICAgICAgIFN5c3RlbVRpbWUgPT4gJERhdGVUaW1lT2JqZWN0Q3VycmVudC0+VG9FcG9jaCgpLAogICAgKTsKCiAgICAjIENoZWNrIERhdGUKICAgIGlmICggISRQYXJhbXtZZWFyfSB8fCAhJFBhcmFte01vbnRofSB8fCAhJFBhcmFte0RheX0gKSB7CiAgICAgICAgJFBhcmFte1llYXJ9ICA9ICRZZWFyOwogICAgICAgICRQYXJhbXtNb250aH0gPSAkTW9udGg7CiAgICAgICAgJFBhcmFte0RheX0gICA9ICREYXk7CiAgICB9CiAgICBlbHNlIHsKICAgICAgICAkUGFyYW17WWVhcn0gID0gc3ByaW50ZiggIiUwMmQiLCAkUGFyYW17WWVhcn0gKTsKICAgICAgICAkUGFyYW17TW9udGh9ID0gc3ByaW50ZiggIiUwMmQiLCAkUGFyYW17TW9udGh9ICk7CiAgICAgICAgJFBhcmFte0RheX0gICA9IHNwcmludGYoICIlMDJkIiwgJFBhcmFte0RheX0gKTsKICAgIH0KCiAgICAjIGNoZWNrIGlmIHRoZSBnaXZlbiBkYXRlIGlzIGEgdmFsaWQgZGF0ZQogICAgIyBpZiBub3QgdmFsaWQsIHNldCB0aGUgZGF0ZSB0byB0b2RheQogICAgbXkgJERhdGVUaW1lVmFsaWQgPSAkRGF0ZVRpbWVPYmplY3RDdXJyZW50LT5WYWxpZGF0ZSgKICAgICAgICBZZWFyICAgICA9PiAkUGFyYW17WWVhcn0sCiAgICAgICAgTW9udGggICAgPT4gJFBhcmFte01vbnRofSwKICAgICAgICBEYXkgICAgICA9PiAkUGFyYW17RGF5fSwKICAgICAgICBIb3VyICAgICA9PiAwLAogICAgICAgIE1pbnV0ZSAgID0+IDAsCiAgICAgICAgU2Vjb25kICAgPT4gMCwKICAgICAgICBUaW1lWm9uZSA9PiAnVVRDJywKICAgICk7CgogICAgaWYgKCAhJERhdGVUaW1lVmFsaWQgKSB7CiAgICAgICAgJFBhcmFte1llYXJ9ICAgICAgICA9ICRZZWFyOwogICAgICAgICRQYXJhbXtNb250aH0gICAgICAgPSAkTW9udGg7CiAgICAgICAgJFBhcmFte0RheX0gICAgICAgICA9ICREYXk7CiAgICAgICAgJFBhcmFteydXcm9uZ0RhdGUnfSA9IDE7CiAgICB9CgogICAgbXkgJVVzZXIgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlVzZXJDdXJyZW50UGVyaW9kR2V0KAogICAgICAgIFllYXIgID0+ICRQYXJhbXtZZWFyfSwKICAgICAgICBNb250aCA9PiAkUGFyYW17TW9udGh9LAogICAgICAgIERheSAgID0+ICRQYXJhbXtEYXl9LAogICAgKTsKCiAgICAjIGZvciBpbml0aWFsIHVzZSwgdGhlIGZpcnN0IGFnZW50IHdpdGggcnctcmlnaHQgd2lsbCBiZSByZWRpcmVjdGVkCiAgICAjIHRvICdTZXR0aW5nJywgc28gaGUgY2FuIGRvIHRoZSBpbml0aWFsIHNldHRpbmdzCiAgICBpZiAoICEkVXNlcnsgJFNlbGYtPntVc2VySUR9IH0gKSB7CiAgICAgICAgcmV0dXJuICRTZWxmLT5fRmlyc3RVc2VyUmVkaXJlY3QoKTsKICAgIH0KCiAgICBteSAlSW5jb21wbGV0ZVdvcmtpbmdEYXlzID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Xb3JraW5nVW5pdHNDb21wbGV0bmVzc0NoZWNrKAogICAgICAgIFVzZXJJRCA9PiAkU2VsZi0+e1VzZXJJRH0sCiAgICApOwoKICAgICMgZ2V0IGNvbmZpZyBvYmplY3QKICAgIG15ICRDb25maWdPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OkNvbmZpZycpOwoKICAgIG15ICRNYXhBbGxvd2VkSW5zZXJ0RGF5cyA9ICRDb25maWdPYmplY3QtPkdldCgnVGltZUFjY291bnRpbmc6Ok1heEFsbG93ZWRJbnNlcnREYXlzJykgfHwgJzEwJzsKICAgICggJFBhcmFte1llYXJBbGxvd2VkfSwgJFBhcmFte01vbnRoQWxsb3dlZH0sICRQYXJhbXtEYXlBbGxvd2VkfSApCiAgICAgICAgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPkFkZERlbHRhWU1EKCAkWWVhciwgJE1vbnRoLCAkRGF5LCAwLCAwLCAtJE1heEFsbG93ZWRJbnNlcnREYXlzICk7CgogICAgbXkgJERhdGVUaW1lT2JqZWN0R2l2ZW4gPSAkS2VybmVsOjpPTS0+Q3JlYXRlKAogICAgICAgICdLZXJuZWw6OlN5c3RlbTo6RGF0ZVRpbWUnLAogICAgICAgIE9iamVjdFBhcmFtcyA9PiB7CiAgICAgICAgICAgIFllYXIgID0+ICRQYXJhbXtZZWFyfSwKICAgICAgICAgICAgTW9udGggPT4gJFBhcmFte01vbnRofSwKICAgICAgICAgICAgRGF5ICAgPT4gJFBhcmFte0RheX0sCiAgICAgICAgfQogICAgKTsKCiAgICBteSAkRGF0ZVRpbWVPYmplY3RBbGxvd2VkID0gJEtlcm5lbDo6T00tPkNyZWF0ZSgKICAgICAgICAnS2VybmVsOjpTeXN0ZW06OkRhdGVUaW1lJywKICAgICAgICBPYmplY3RQYXJhbXMgPT4gewogICAgICAgICAgICBZZWFyICA9PiAkUGFyYW17WWVhckFsbG93ZWR9LAogICAgICAgICAgICBNb250aCA9PiAkUGFyYW17TW9udGhBbGxvd2VkfSwKICAgICAgICAgICAgRGF5ICAgPT4gJFBhcmFte0RheUFsbG93ZWR9LAogICAgICAgIH0KICAgICk7CgogICAgaWYgKCAkRGF0ZVRpbWVPYmplY3RHaXZlbi0+Q29tcGFyZSggRGF0ZVRpbWVPYmplY3QgPT4gJERhdGVUaW1lT2JqZWN0QWxsb3dlZCApIDwgMCApIHsKICAgICAgICBpZiAoICEkSW5jb21wbGV0ZVdvcmtpbmdEYXlze0luY29tcGxldGV9eyAkUGFyYW17WWVhcn0gfXsgJFBhcmFte01vbnRofSB9eyAkUGFyYW17RGF5fSB9ICkgewogICAgICAgICAgICByZXR1cm4gJExheW91dE9iamVjdC0+UmVkaXJlY3QoCiAgICAgICAgICAgICAgICBPUCA9PgogICAgICAgICAgICAgICAgICAgICJBY3Rpb249QWdlbnRUaW1lQWNjb3VudGluZ1ZpZXc7WWVhcj0kUGFyYW17WWVhcn07TW9udGg9JFBhcmFte01vbnRofTtEYXk9JFBhcmFte0RheX0iLAogICAgICAgICAgICApOwogICAgICAgIH0KICAgIH0KCiAgICAjIHN0b3JlIGxhc3Qgc2NyZWVuCiAgICAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6QXV0aFNlc3Npb24nKS0+VXBkYXRlU2Vzc2lvbklEKAogICAgICAgIFNlc3Npb25JRCA9PiAkU2VsZi0+e1Nlc3Npb25JRH0sCiAgICAgICAgS2V5ICAgICAgID0+ICdMYXN0U2NyZWVuJywKICAgICAgICBWYWx1ZSAgICAgPT4KICAgICAgICAgICAgIkFjdGlvbj0kU2VsZi0+e0FjdGlvbn07WWVhcj0kUGFyYW17WWVhcn07TW9udGg9JFBhcmFte01vbnRofTtEYXk9JFBhcmFte0RheX0iLAogICAgKTsKCiAgICAkUGFyYW17TW9udGhfdG9fVGV4dH0gPSAkTW9udGhBcnJheVsgJFBhcmFte01vbnRofSBdOwoKICAgICggJFBhcmFte1llYXJCYWNrfSwgJFBhcmFte01vbnRoQmFja30sICRQYXJhbXtEYXlCYWNrfSApCiAgICAgICAgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPkFkZERlbHRhWU1EKCAkUGFyYW17WWVhcn0sICRQYXJhbXtNb250aH0sICRQYXJhbXtEYXl9LCAwLCAwLCAtMSApOwogICAgKCAkUGFyYW17WWVhck5leHR9LCAkUGFyYW17TW9udGhOZXh0fSwgJFBhcmFte0RheU5leHR9ICkKICAgICAgICA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+QWRkRGVsdGFZTUQoICRQYXJhbXtZZWFyfSwgJFBhcmFte01vbnRofSwgJFBhcmFte0RheX0sIDAsIDAsIDEgKTsKCiAgICBteSAkUmVkdWNlVGltZVJlZiA9ICRDb25maWdPYmplY3QtPkdldCgnVGltZUFjY291bnRpbmc6OlJlZHVjZVRpbWUnKTsKCiAgICAjIGhhc2hlcyB0byBzdG9yZSBzZXJ2ZXIgc2lkZSBlcnJvcnMKICAgIG15ICVFcnJvcnMgICAgICAgICAgID0gKCk7CiAgICBteSAlU2VydmVyRXJyb3JEYXRhICA9ICgpOwogICAgbXkgJEVycm9ySW5kZXggICAgICAgPSAxOwogICAgbXkgJEFwcGVuZEVycm9ySW5kZXggPSAxOwoKICAgIG15ICVEYXRhOwogICAgbXkgJUFjdGlvbkxpc3QgPSAkU2VsZi0+X0FjdGlvbkxpc3QoKTsKCiAgICAjIEVkaXQgV29ya2luZyBVbml0cwogICAgaWYgKCAkUGFyYW17U3RhdHVzfSApIHsKCiAgICAgICAgIyBhcnJheXMgdG8gc2F2ZSBhbGwgc3RhcnQgYW5kIGVuZCB0aW1lcyBmb3Igc29tZSBjaGVja3MKICAgICAgICBteSAoIEBTdGFydFRpbWVzLCBARW5kVGltZXMgKTsKCiAgICAgICAgaWYgKCAkTW9kZSBuZSAnQXBwZW5kJyApIHsKCiAgICAgICAgICAgICMgZGVsZXRlIHByZXZpb3VzIGVudHJpZXMgZm9yIHRoaXMgZGF5IGFuZCB1c2VyCiAgICAgICAgICAgICRUaW1lQWNjb3VudGluZ09iamVjdC0+V29ya2luZ1VuaXRzRGVsZXRlKAogICAgICAgICAgICAgICAgWWVhciAgID0+ICRQYXJhbXtZZWFyfSwKICAgICAgICAgICAgICAgIE1vbnRoICA9PiAkUGFyYW17TW9udGh9LAogICAgICAgICAgICAgICAgRGF5ICAgID0+ICRQYXJhbXtEYXl9LAogICAgICAgICAgICAgICAgVXNlcklEID0+ICRTZWxmLT57VXNlcklEfSwKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgIG15ICVDaGVja2JveENoZWNrID0gKCk7CiAgICAgICAgZm9yIG15ICRFbGVtZW50IChxdyhMZWF2ZURheSBTaWNrIE92ZXJ0aW1lKSkgewogICAgICAgICAgICBteSAkVmFsdWUgPSAkUGFyYW1PYmplY3QtPkdldFBhcmFtKCBQYXJhbSA9PiAkRWxlbWVudCApOwogICAgICAgICAgICBpZiAoJFZhbHVlKSB7CiAgICAgICAgICAgICAgICAkQ2hlY2tib3hDaGVja3skRWxlbWVudH0gPSAxOwogICAgICAgICAgICAgICAgJFBhcmFteyRFbGVtZW50fSAgICAgICAgID0gJ2NoZWNrZWQ9ImNoZWNrZWQiJzsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICRQYXJhbXskRWxlbWVudH0gPSAnJzsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgIyBpZiBtb3JlIHRoYW4gb25lIGNoZWNrIGJveCB3YXMgY2hlY2tlZCBpdCBpcyBhIHNlcnZlciBlcnJvcgogICAgICAgIGlmICggc2NhbGFyIGtleXMgJUNoZWNrYm94Q2hlY2sgPiAxICkgewogICAgICAgICAgICBmb3IgbXkgJENoZWNrYm94ICggc29ydCBrZXlzICVDaGVja2JveENoZWNrICkgewogICAgICAgICAgICAgICAgJEVycm9yc3sgJENoZWNrYm94IC4gJ0ludmFsaWQnIH0gPSAnU2VydmVyRXJyb3InOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGVsc2UgewoKICAgICAgICAgICAgIyBpbnNlcnQgdmFsdWVzIChpZiBhbnkpCiAgICAgICAgICAgIGlmICggc2NhbGFyIGtleXMgJUNoZWNrYm94Q2hlY2sgPiAwICkgewogICAgICAgICAgICAgICAgaWYgKAogICAgICAgICAgICAgICAgICAgICEkVGltZUFjY291bnRpbmdPYmplY3QtPldvcmtpbmdVbml0c0luc2VydCgKICAgICAgICAgICAgICAgICAgICAgICAgWWVhciAgICAgPT4gJFBhcmFte1llYXJ9LAogICAgICAgICAgICAgICAgICAgICAgICBNb250aCAgICA9PiAkUGFyYW17TW9udGh9LAogICAgICAgICAgICAgICAgICAgICAgICBEYXkgICAgICA9PiAkUGFyYW17RGF5fSwKICAgICAgICAgICAgICAgICAgICAgICAgTGVhdmVEYXkgPT4gJENoZWNrYm94Q2hlY2t7TGVhdmVEYXl9IHx8IDAsCiAgICAgICAgICAgICAgICAgICAgICAgIFNpY2sgICAgID0+ICRDaGVja2JveENoZWNre1NpY2t9ICAgICB8fCAwLAogICAgICAgICAgICAgICAgICAgICAgICBPdmVydGltZSA9PiAkQ2hlY2tib3hDaGVja3tPdmVydGltZX0gfHwgMCwKICAgICAgICAgICAgICAgICAgICAgICAgVXNlcklEICAgPT4gJFNlbGYtPntVc2VySUR9LAogICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICRMYXlvdXRPYmplY3QtPkVycm9yU2NyZWVuKAogICAgICAgICAgICAgICAgICAgICAgICBNZXNzYWdlID0+IFRyYW5zbGF0YWJsZSgnQ2FuXCd0IGluc2VydCBXb3JraW5nIFVuaXRzIScpLAogICAgICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAkUGFyYW17U3VjY2Vzc2Z1bEluc2VydH0gPSAxOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICAjIGdldCBjaGVjayBpdGVtIG9iamVjdAogICAgICAgIG15ICRDaGVja0l0ZW1PYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6Q2hlY2tJdGVtJyk7CgogICAgICAgIElEOgogICAgICAgIGZvciBteSAkSUQgKCAxIC4uICRQYXJhbXsgJE1vZGUgLiAnUmVjb3Jkc051bWJlcicgfSApIHsKCiAgICAgICAgICAgICMgYXJyYXlzIHRvIHNhdmUgdGhlIHNlcnZlciBlcnJvcnMgYmxvY2sgdG8gc2hvdyB0aGUgZXJyb3IgbWVzc2FnZXMKICAgICAgICAgICAgbXkgKCBAU3RhcnRUaW1lU2VydmVyRXJyb3JCbG9jaywgQEVuZFRpbWVTZXJ2ZXJFcnJvckJsb2NrLCBAUGVyaW9kU2VydmVyRXJyb3JCbG9jayApID0gKCk7CgogICAgICAgICAgICBmb3IgbXkgJFBhcmFtZXRlciAocXcoUHJvamVjdElEIEFjdGlvbklEIFJlbWFyayBTdGFydFRpbWUgRW5kVGltZSBQZXJpb2QgVGlja2V0SUQgQXJ0aWNsZUlEIEJhc2VNb2R1bGUgUmVhZE9ubHkpKSB7CiAgICAgICAgICAgICAgICAkUGFyYW17JFBhcmFtZXRlcn0gPSAkUGFyYW1PYmplY3QtPkdldFBhcmFtKCBQYXJhbSA9PiAkTW9kZSAuICRQYXJhbWV0ZXIgLiAnWycgLiAkSUQgLiAnXScgKTsKICAgICAgICAgICAgICAgICRQYXJhbXsgJE1vZGUgLiAkUGFyYW1ldGVyIH0gPSAkUGFyYW17JFBhcmFtZXRlcn07CiAgICAgICAgICAgICAgICBpZiAoICRQYXJhbXskUGFyYW1ldGVyfSApIHsKICAgICAgICAgICAgICAgICAgICBteSAkUGFyYW1SZWYgPSBcJFBhcmFteyRQYXJhbWV0ZXJ9OwoKICAgICAgICAgICAgICAgICAgICAjIGRlbGV0ZSBsZWFkaW5nIGFuZCB0YWlsaW5nIHNwYWNlcwogICAgICAgICAgICAgICAgICAgICRQYXJhbVJlZiA9ICRDaGVja0l0ZW1PYmplY3QtPlN0cmluZ0NsZWFuKAogICAgICAgICAgICAgICAgICAgICAgICBTdHJpbmdSZWYgPT4gJFBhcmFtUmVmLAogICAgICAgICAgICAgICAgICAgICAgICBUcmltTGVmdCAgPT4gMSwKICAgICAgICAgICAgICAgICAgICAgICAgVHJpbVJpZ2h0ID0+IDEsCiAgICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgbmV4dCBJRCBpZiAhJFBhcmFte1Byb2plY3RJRH0gJiYgISRQYXJhbXtBY3Rpb25JRH07CgogICAgICAgICAgICAjIGNoZWNrIGZvciBtaXNzaW5nIHZhbHVlcwogICAgICAgICAgICBpZiAoICRQYXJhbXtQcm9qZWN0SUR9ICYmICEkUGFyYW17QWN0aW9uSUR9ICkgewogICAgICAgICAgICAgICAgJEVycm9yc3skRXJyb3JJbmRleH17ICRNb2RlIC4gJ0FjdGlvbklESW52YWxpZCcgfSA9ICdTZXJ2ZXJFcnJvcic7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKCAhJFBhcmFte1Byb2plY3RJRH0gJiYgJFBhcmFte0FjdGlvbklEfSApIHsKICAgICAgICAgICAgICAgICRFcnJvcnN7JEVycm9ySW5kZXh9eyAkTW9kZSAuICdQcm9qZWN0SURJbnZhbGlkJyB9ID0gJ1NlcnZlckVycm9yJzsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgIyBjcmVhdGUgYSB2YWxpZCBwZXJpb2QKICAgICAgICAgICAgbXkgJFBlcmlvZCA9ICRQYXJhbXtQZXJpb2R9OwogICAgICAgICAgICBpZiAoICRQZXJpb2QgPX4gL14oXGQrKSwoXGQrKS8gKSB7CiAgICAgICAgICAgICAgICAkUGVyaW9kID0gJDEgLiAiLiIgLiAkMjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgI2FsbG93IGZvcm1hdCBoaDptbQogICAgICAgICAgICBlbHNpZiAoICRQYXJhbXtQZXJpb2R9ID1+IC9eKFxkKyk6KFxkKykvICkgewogICAgICAgICAgICAgICAgJFBlcmlvZCA9ICQxICsgJDIgLyA2MDsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgIyBpZiBzdGFydCBvciBlbmQgdGltZXMgYXJlIG1pc3NpbmcsIGRlbGV0ZSB0aGUgb3RoZXIgZW50cnkKICAgICAgICAgICAgaWYgKCAhJFBhcmFte1N0YXJ0VGltZX0gfHwgISRQYXJhbXtFbmRUaW1lfSApIHsKICAgICAgICAgICAgICAgICRQYXJhbXtTdGFydFRpbWV9ID0gJyc7CiAgICAgICAgICAgICAgICAkUGFyYW17RW5kVGltZX0gICA9ICcnOwogICAgICAgICAgICB9CgogICAgICAgICAgICAjIGFkZCAnOjAwJyB0byB0aGUgdGltZSwgaWYgaXQgZG9lc24ndCBoYXZlIGl0IHlldAogICAgICAgICAgICBpZiAoICRQYXJhbXtTdGFydFRpbWV9ICYmICRQYXJhbXtTdGFydFRpbWV9ICF+IC9eKFxkKyk6KFxkKykkLyApIHsKICAgICAgICAgICAgICAgICRQYXJhbXtTdGFydFRpbWV9IC49ICc6MDAnOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICggJFBhcmFte0VuZFRpbWV9ICYmICRQYXJhbXtFbmRUaW1lfSAhfiAvXihcZCspOihcZCspJC8gKSB7CiAgICAgICAgICAgICAgICAkUGFyYW17RW5kVGltZX0gLj0gJzowMCc7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKAogICAgICAgICAgICAgICAgKCAkUGFyYW17U3RhcnRUaW1lfSA9fiAvXihcZCspOihcZCspJC8gKQogICAgICAgICAgICAgICAgJiYgKCAkUGFyYW17RW5kVGltZX0gPX4gL14oXGQrKTooXGQrKSQvICkKICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgbXkgJFN0YXJ0VGltZTsKICAgICAgICAgICAgICAgIGlmICggJFBhcmFte1N0YXJ0VGltZX0gPX4gL14oXGQrKTooXGQrKSQvICkgewogICAgICAgICAgICAgICAgICAgICRTdGFydFRpbWUgPSAkMSAqIDYwICsgJDI7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgbXkgJEVuZFRpbWU7CiAgICAgICAgICAgICAgICBpZiAoICRQYXJhbXtFbmRUaW1lfSA9fiAvXihcZCspOihcZCspJC8gKSB7CiAgICAgICAgICAgICAgICAgICAgJEVuZFRpbWUgPSAkMSAqIDYwICsgJDI7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgaWYgKCAkUmVkdWNlVGltZVJlZi0+eyAkQWN0aW9uTGlzdHsgJFBhcmFte0FjdGlvbklEfSB9IH0gKSB7CiAgICAgICAgICAgICAgICAgICAgJFBlcmlvZCA9ICggJEVuZFRpbWUgLSAkU3RhcnRUaW1lICkgLyA2MAogICAgICAgICAgICAgICAgICAgICAgICAqICRSZWR1Y2VUaW1lUmVmLT57ICRBY3Rpb25MaXN0eyAkUGFyYW17QWN0aW9uSUR9IH0gfSAvIDEwMDsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgICAgICRQZXJpb2QgPSAoICRFbmRUaW1lIC0gJFN0YXJ0VGltZSApIC8gNjA7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgIyBlbmQgdGltZSBtdXN0IGJlIGFmdGVyIHN0YXJ0IHRpbWUKICAgICAgICAgICAgICAgIGlmICggJEVuZFRpbWUgPD0gJFN0YXJ0VGltZSApIHsKICAgICAgICAgICAgICAgICAgICAkRXJyb3JzeyRFcnJvckluZGV4fXsgJE1vZGUgLiAnRW5kVGltZUludmFsaWQnIH0gPSAnU2VydmVyRXJyb3InOwogICAgICAgICAgICAgICAgICAgIHB1c2ggQEVuZFRpbWVTZXJ2ZXJFcnJvckJsb2NrLCAnRW5kVGltZUJlZm9yZVN0YXJ0VGltZVNlcnZlckVycm9yJzsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAkU3RhcnRUaW1lc1skSURdID0gJFN0YXJ0VGltZTsKICAgICAgICAgICAgICAgICRFbmRUaW1lc1skSURdICAgPSAkRW5kVGltZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgIGlmICggJFBhcmFte1N0YXJ0VGltZX0gJiYgJFBhcmFte1N0YXJ0VGltZX0gIX4gL14oXGQrKTooXGQrKSQvICkgewogICAgICAgICAgICAgICAgICAgICRFcnJvcnN7JEVycm9ySW5kZXh9eyAkTW9kZSAuICdTdGFydFRpbWVJbnZhbGlkJyB9ID0gJ1NlcnZlckVycm9yJzsKICAgICAgICAgICAgICAgICAgICBwdXNoIEBTdGFydFRpbWVTZXJ2ZXJFcnJvckJsb2NrLCAnU3RhcnRUaW1lSW52YWxpZEZvcm1hdFNlcnZlckVycm9yJzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmICggJFBhcmFte0VuZFRpbWV9ICYmICRQYXJhbXtFbmRUaW1lfSAhfiAvXihcZCspOihcZCspJC8gKSB7CiAgICAgICAgICAgICAgICAgICAgJEVycm9yc3skRXJyb3JJbmRleH17ICRNb2RlIC4gJ0VuZFRpbWVJbnZhbGlkJyB9ID0gJ1NlcnZlckVycm9yJzsKICAgICAgICAgICAgICAgICAgICBwdXNoIEBFbmRUaW1lU2VydmVyRXJyb3JCbG9jaywgJ0VuZFRpbWVJbnZhbGlkRm9ybWF0U2VydmVyRXJyb3InOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICAjIG5lZ2F0aXZlIHRpbWVzIGFyZSBub3QgYWxsb3dlZAogICAgICAgICAgICBpZiAoICRQYXJhbXtTdGFydFRpbWV9ID1+IC9eLShcZCspOihcZCspJC8gKSB7CiAgICAgICAgICAgICAgICAkRXJyb3JzeyRFcnJvckluZGV4fXsgJE1vZGUgLiAnU3RhcnRUaW1lSW52YWxpZCcgfSA9ICdTZXJ2ZXJFcnJvcic7CiAgICAgICAgICAgICAgICBwdXNoIEBTdGFydFRpbWVTZXJ2ZXJFcnJvckJsb2NrLCAnU3RhcnRUaW1lTmVnYXRpdmVTZXJ2ZXJFcnJvcic7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKCAkUGFyYW17RW5kVGltZX0gPX4gL14tKFxkKyk6KFxkKykkLyApIHsKICAgICAgICAgICAgICAgICRFcnJvcnN7JEVycm9ySW5kZXh9eyAkTW9kZSAuICdFbmRUaW1lSW52YWxpZCcgfSA9ICdTZXJ2ZXJFcnJvcic7CiAgICAgICAgICAgICAgICBwdXNoIEBFbmRUaW1lU2VydmVyRXJyb3JCbG9jaywgJ0VuZFRpbWVOZWdhdGl2ZVNlcnZlckVycm9yJzsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgIyByZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQKICAgICAgICAgICAgUE9TSVRJT046CiAgICAgICAgICAgIGZvciAoIG15ICRQb3NpdGlvbiA9ICRJRCAtIDE7ICRQb3NpdGlvbiA+PSAxOyAkUG9zaXRpb24tLSApIHsKICAgICAgICAgICAgICAgIG5leHQgUE9TSVRJT04gaWYgIWRlZmluZWQgJFN0YXJ0VGltZXNbJFBvc2l0aW9uXTsKICAgICAgICAgICAgICAgIG5leHQgUE9TSVRJT04gaWYgIWRlZmluZWQgJFN0YXJ0VGltZXNbJElEXTsKCiAgICAgICAgICAgICAgICBpZiAoCiAgICAgICAgICAgICAgICAgICAgJFN0YXJ0VGltZXNbJFBvc2l0aW9uXSA+ICRTdGFydFRpbWVzWyRJRF0KICAgICAgICAgICAgICAgICAgICAmJiAkU3RhcnRUaW1lc1skUG9zaXRpb25dIDwgJEVuZFRpbWVzWyRJRF0KICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgJEVycm9yc3skRXJyb3JJbmRleH17ICRNb2RlIC4gJ0VuZFRpbWVJbnZhbGlkJyB9ID0gJ1NlcnZlckVycm9yJzsKICAgICAgICAgICAgICAgICAgICBpZiAoICFncmVwIHsvXkVuZFRpbWVSZXBlYXRlZEhvdXJTZXJ2ZXJFcnJvci99IEBFbmRUaW1lU2VydmVyRXJyb3JCbG9jayApIHsKICAgICAgICAgICAgICAgICAgICAgICAgcHVzaCBARW5kVGltZVNlcnZlckVycm9yQmxvY2ssICdFbmRUaW1lUmVwZWF0ZWRIb3VyU2VydmVyRXJyb3InOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBpZiAoCiAgICAgICAgICAgICAgICAgICAgJEVuZFRpbWVzWyRQb3NpdGlvbl0gPiAkU3RhcnRUaW1lc1skSURdCiAgICAgICAgICAgICAgICAgICAgJiYgJEVuZFRpbWVzWyRQb3NpdGlvbl0gPCAkRW5kVGltZXNbJElEXQogICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBpZiAoICRFbmRUaW1lc1skSURdID4gJEVuZFRpbWVzWyRQb3NpdGlvbl0gKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRFcnJvcnN7JEVycm9ySW5kZXh9eyAkTW9kZSAuICdTdGFydFRpbWVJbnZhbGlkJyB9ID0gJ1NlcnZlckVycm9yJzsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIWdyZXAgey9eU3RhcnRUaW1lUmVwZWF0ZWRIb3VyU2VydmVyRXJyb3IkL30KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBTdGFydFRpbWVTZXJ2ZXJFcnJvckJsb2NrCiAgICAgICAgICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHB1c2ggQFN0YXJ0VGltZVNlcnZlckVycm9yQmxvY2ssICdTdGFydFRpbWVSZXBlYXRlZEhvdXJTZXJ2ZXJFcnJvcic7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRFcnJvcnN7JEVycm9ySW5kZXh9eyAkTW9kZSAuICdFbmRUaW1lSW52YWxpZCcgfSA9ICdTZXJ2ZXJFcnJvcic7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICggIWdyZXAgey9eRW5kVGltZVJlcGVhdGVkSG91clNlcnZlckVycm9yJC99IEBFbmRUaW1lU2VydmVyRXJyb3JCbG9jayApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHB1c2ggQEVuZFRpbWVTZXJ2ZXJFcnJvckJsb2NrLCAnRW5kVGltZVJlcGVhdGVkSG91clNlcnZlckVycm9yJzsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBpZiAoICRTdGFydFRpbWVzWyRQb3NpdGlvbl0gPT0gJFN0YXJ0VGltZXNbJElEXSApIHsKICAgICAgICAgICAgICAgICAgICAkRXJyb3JzeyRFcnJvckluZGV4fXsgJE1vZGUgLiAnU3RhcnRUaW1lSW52YWxpZCcgfSA9ICdTZXJ2ZXJFcnJvcic7CiAgICAgICAgICAgICAgICAgICAgaWYgKCAhZ3JlcCB7L15TdGFydFRpbWVSZXBlYXRlZEhvdXJTZXJ2ZXJFcnJvciQvfSBAU3RhcnRUaW1lU2VydmVyRXJyb3JCbG9jayApIHsKICAgICAgICAgICAgICAgICAgICAgICAgcHVzaCBAU3RhcnRUaW1lU2VydmVyRXJyb3JCbG9jaywgJ1N0YXJ0VGltZVJlcGVhdGVkSG91clNlcnZlckVycm9yJzsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgaWYgKCAkRW5kVGltZXNbJFBvc2l0aW9uXSA9PSAkRW5kVGltZXNbJElEXSApIHsKICAgICAgICAgICAgICAgICAgICAkRXJyb3JzeyRFcnJvckluZGV4fXsgJE1vZGUgLiAnRW5kVGltZUludmFsaWQnIH0gPSAnU2VydmVyRXJyb3InOwogICAgICAgICAgICAgICAgICAgIGlmICggIWdyZXAgey9eRW5kVGltZVJlcGVhdGVkSG91clNlcnZlckVycm9yJC99IEBFbmRUaW1lU2VydmVyRXJyb3JCbG9jayApIHsKICAgICAgICAgICAgICAgICAgICAgICAgcHVzaCBARW5kVGltZVNlcnZlckVycm9yQmxvY2ssICdFbmRUaW1lUmVwZWF0ZWRIb3VyU2VydmVyRXJyb3InOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBpZiAoCiAgICAgICAgICAgICAgICAgICAgJFN0YXJ0VGltZXNbJElEXSA+ICRTdGFydFRpbWVzWyRQb3NpdGlvbl0KICAgICAgICAgICAgICAgICAgICAmJiAkU3RhcnRUaW1lc1skSURdIDwgJEVuZFRpbWVzWyRQb3NpdGlvbl0KICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgJEVycm9yc3skRXJyb3JJbmRleH17ICRNb2RlIC4gJ1N0YXJ0VGltZUludmFsaWQnIH0gPSAnU2VydmVyRXJyb3InOwogICAgICAgICAgICAgICAgICAgIGlmICggIWdyZXAgey9eU3RhcnRUaW1lUmVwZWF0ZWRIb3VyU2VydmVyRXJyb3IkL30gQFN0YXJ0VGltZVNlcnZlckVycm9yQmxvY2sgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHB1c2ggQFN0YXJ0VGltZVNlcnZlckVycm9yQmxvY2ssICdTdGFydFRpbWVSZXBlYXRlZEhvdXJTZXJ2ZXJFcnJvcic7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGlmICgKICAgICAgICAgICAgICAgICAgICAkRW5kVGltZXNbJElEXSA+ICRTdGFydFRpbWVzWyRQb3NpdGlvbl0KICAgICAgICAgICAgICAgICAgICAmJiAkRW5kVGltZXNbJElEXSA8ICRFbmRUaW1lc1skUG9zaXRpb25dCiAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICRFcnJvcnN7JEVycm9ySW5kZXh9eyAkTW9kZSAuICdFbmRUaW1lSW52YWxpZCcgfSA9ICdTZXJ2ZXJFcnJvcic7CiAgICAgICAgICAgICAgICAgICAgaWYgKCAhZ3JlcCB7L15FbmRUaW1lUmVwZWF0ZWRIb3VyU2VydmVyRXJyb3IkL30gQEVuZFRpbWVTZXJ2ZXJFcnJvckJsb2NrICkgewogICAgICAgICAgICAgICAgICAgICAgICBwdXNoIEBFbmRUaW1lU2VydmVyRXJyb3JCbG9jaywgJ0VuZFRpbWVSZXBlYXRlZEhvdXJTZXJ2ZXJFcnJvcic7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICAjICcyNDowMCcgaXMgb25seSBwZXJtaXR0ZWQgYXMgZW5kIHRpbWUKICAgICAgICAgICAgaWYgKCAkU3RhcnRUaW1lc1skSURdICYmICRTdGFydFRpbWVzWyRJRF0gPT0gMTQ0MCApIHsKICAgICAgICAgICAgICAgICRFcnJvcnN7JEVycm9ySW5kZXh9eyAkTW9kZSAuICdTdGFydFRpbWVJbnZhbGlkJyB9ID0gJ1NlcnZlckVycm9yJzsKICAgICAgICAgICAgICAgIHB1c2ggQFN0YXJ0VGltZVNlcnZlckVycm9yQmxvY2ssICdTdGFydFRpbWUyNEhvdXJzJzsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgIyB0aW1lcyBzdXBlcmlvciB0byAyNDowMCBhcmUgbm90IGFsbG93ZWQKICAgICAgICAgICAgaWYgKCAkU3RhcnRUaW1lc1skSURdICYmICRTdGFydFRpbWVzWyRJRF0gPiAxNDQwICkgewogICAgICAgICAgICAgICAgJEVycm9yc3skRXJyb3JJbmRleH17ICRNb2RlIC4gJ1N0YXJ0VGltZUludmFsaWQnIH0gPSAnU2VydmVyRXJyb3InOwogICAgICAgICAgICAgICAgcHVzaCBAU3RhcnRUaW1lU2VydmVyRXJyb3JCbG9jaywgJ1N0YXJ0VGltZUludmFsaWQnOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICggJEVuZFRpbWVzWyRJRF0gJiYgJEVuZFRpbWVzWyRJRF0gPiAxNDQwICkgewogICAgICAgICAgICAgICAgJEVycm9yc3skRXJyb3JJbmRleH17ICRNb2RlIC4gJ0VuZFRpbWVJbnZhbGlkJyB9ID0gJ1NlcnZlckVycm9yJzsKICAgICAgICAgICAgICAgIHB1c2ggQEVuZFRpbWVTZXJ2ZXJFcnJvckJsb2NrLCAnRW5kVGltZUludmFsaWQnOwogICAgICAgICAgICB9CgogICAgICAgICAgICAjIGFkZCByZWZlcmVuY2UgdG8gdGhlIHNlcnZlciBlcnJvciBtZXNzYWdlcyB0byBiZSBzaG93bgogICAgICAgICAgICBpZiAoICRFcnJvcnN7JEVycm9ySW5kZXh9ICYmICRFcnJvcnN7JEVycm9ySW5kZXh9eyAkTW9kZSAuICdTdGFydFRpbWVJbnZhbGlkJyB9ICkgewogICAgICAgICAgICAgICAgJEVycm9yc3skRXJyb3JJbmRleH17ICRNb2RlIC4gJ1N0YXJ0VGltZVNlcnZlckVycm9yQmxvY2snIH0gPSBcQFN0YXJ0VGltZVNlcnZlckVycm9yQmxvY2s7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKCAkRXJyb3JzeyRFcnJvckluZGV4fSAmJiAkRXJyb3JzeyRFcnJvckluZGV4fXsgJE1vZGUgLiAnRW5kVGltZUludmFsaWQnIH0gKSB7CiAgICAgICAgICAgICAgICAkRXJyb3JzeyRFcnJvckluZGV4fXsgJE1vZGUgLiAnRW5kVGltZVNlcnZlckVycm9yQmxvY2snIH0gPSBcQEVuZFRpbWVTZXJ2ZXJFcnJvckJsb2NrOwogICAgICAgICAgICB9CgogICAgICAgICAgICAjIG92ZXJ3cml0ZSBwZXJpb2QgaWYgdGhlcmUgYXJlIHN0YXJ0IGFuZCBlbmQgdGltZXMKICAgICAgICAgICAgaWYgKCAkU3RhcnRUaW1lc1skSURdICYmICRFbmRUaW1lc1skSURdICkgewogICAgICAgICAgICAgICAgJFBlcmlvZCA9ICRFbmRUaW1lc1skSURdIC0gJFN0YXJ0VGltZXNbJElEXTsKCiAgICAgICAgICAgICAgICAjIGNvbnZlcnQgcGVyaW9kIGZyb20gbWludXRlcyB0byBob3VycwogICAgICAgICAgICAgICAgJFBlcmlvZCAvPSA2MDsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgIyBjaGVjayBmb3IgZXJyb3JzIGluIHRoZSBwZXJpb2QKICAgICAgICAgICAgaWYgKCAkUGVyaW9kID09IDAgKSB7CiAgICAgICAgICAgICAgICBwdXNoIEBQZXJpb2RTZXJ2ZXJFcnJvckJsb2NrLCAnWmVyb0hvdXJzUGVyaW9kU2VydmVyRXJyb3InOwogICAgICAgICAgICAgICAgaWYgKAogICAgICAgICAgICAgICAgICAgICRDb25maWdPYmplY3QtPkdldCgnVGltZUFjY291bnRpbmc6OklucHV0SG91cnNXaXRob3V0U3RhcnRFbmRUaW1lJykKICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgJEVycm9yc3skRXJyb3JJbmRleH17ICRNb2RlIC4gJ1BlcmlvZEludmFsaWQnIH0gPSAnU2VydmVyRXJyb3InOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgJEVycm9yc3skRXJyb3JJbmRleH17ICRNb2RlIC4gJ1N0YXJ0VGltZUludmFsaWQnIH0gPSAnU2VydmVyRXJyb3InOwogICAgICAgICAgICAgICAgICAgICRFcnJvcnN7JEVycm9ySW5kZXh9eyAkTW9kZSAuICdFbmRUaW1lSW52YWxpZCcgfSAgID0gJ1NlcnZlckVycm9yJzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgIGlmICggJFBlcmlvZCA8IDAgKSB7CiAgICAgICAgICAgICAgICAgICAgJEVycm9yc3skRXJyb3JJbmRleH17ICRNb2RlIC4gJ1BlcmlvZEludmFsaWQnIH0gPSAnU2VydmVyRXJyb3InOwogICAgICAgICAgICAgICAgICAgIHB1c2ggQFBlcmlvZFNlcnZlckVycm9yQmxvY2ssICdOZWdhdGl2ZVBlcmlvZFNlcnZlckVycm9yJzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoICRQZXJpb2QgPiAyNCApIHsKICAgICAgICAgICAgICAgICRFcnJvcnN7JEVycm9ySW5kZXh9eyAkTW9kZSAuICdQZXJpb2RJbnZhbGlkJyB9ID0gJ1NlcnZlckVycm9yJzsKICAgICAgICAgICAgICAgIHB1c2ggQFBlcmlvZFNlcnZlckVycm9yQmxvY2ssICdJbnZhbGlkSG91cnNQZXJpb2RTZXJ2ZXJFcnJvcic7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmICggJEVycm9yc3skRXJyb3JJbmRleH0gJiYgJEVycm9yc3skRXJyb3JJbmRleH17ICRNb2RlIC4gJ1BlcmlvZEludmFsaWQnIH0gKSB7CiAgICAgICAgICAgICAgICAkRXJyb3JzeyRFcnJvckluZGV4fXsgJE1vZGUgLiAnUGVyaW9kU2VydmVyRXJyb3JCbG9jaycgfSA9IFxAUGVyaW9kU2VydmVyRXJyb3JCbG9jazsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgIyBpZiB0aGVyZSB3YXMgYW4gZXJyb3Igb24gdGhpcyByb3csIHNhdmUgYWxsIGRhdGEgaW4gdGhlIHNlcnZlciBlcnJvciBoYXNoCiAgICAgICAgICAgIGlmICggZGVmaW5lZCAkRXJyb3JzeyRFcnJvckluZGV4fSApIHsKICAgICAgICAgICAgICAgIGZvciBteSAkUGFyYW1ldGVyIChxdyhQcm9qZWN0SUQgQWN0aW9uSUQgUmVtYXJrIFN0YXJ0VGltZSBFbmRUaW1lKSkgewogICAgICAgICAgICAgICAgICAgICRTZXJ2ZXJFcnJvckRhdGF7JEVycm9ySW5kZXh9eyAkTW9kZSAuICRQYXJhbWV0ZXIgfSA9ICRQYXJhbXskUGFyYW1ldGVyfTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICRTZXJ2ZXJFcnJvckRhdGF7JEVycm9ySW5kZXh9eyAkTW9kZSAuICdQZXJpb2QnIH0gPSAkUGVyaW9kOwogICAgICAgICAgICB9CgogICAgICAgICAgICAjIG90aGVyd2lzZSwgc2F2ZSByb3cgb24gdGhlIERCCiAgICAgICAgICAgIGVsc2UgewoKICAgICAgICAgICAgICAgICMgaW5pdGlhbGl6ZSB0aGUgYXJyYXkgb2Ygd29ya2luZyB1bml0cwogICAgICAgICAgICAgICAgQHsgJERhdGF7V29ya2luZ1VuaXRzfSB9ID0gKCk7CgogICAgICAgICAgICAgICAgIyByZXBsYWNlIDI0OjAwIGZvciAyMzo1OTo1OSB0byBiZSBhIHZhbGlkIGVudHJ5IGluIHRoZSBEQgogICAgICAgICAgICAgICAgJFBhcmFte0VuZFRpbWV9ID0gJFBhcmFte0VuZFRpbWV9IGVxICcyNDowMCcgPyAnMjM6NTk6NTknIDogJFBhcmFte0VuZFRpbWV9OwoKICAgICAgICAgICAgICAgIG15ICVXb3JraW5nVW5pdCA9ICgKICAgICAgICAgICAgICAgICAgICBQcm9qZWN0SUQgID0+ICRQYXJhbXtQcm9qZWN0SUR9LAogICAgICAgICAgICAgICAgICAgIEFjdGlvbklEICAgPT4gJFBhcmFte0FjdGlvbklEfSwKICAgICAgICAgICAgICAgICAgICBSZW1hcmsgICAgID0+ICRQYXJhbXtSZW1hcmt9LAogICAgICAgICAgICAgICAgICAgIFN0YXJ0VGltZSAgPT4gJFBhcmFte1N0YXJ0VGltZX0sCiAgICAgICAgICAgICAgICAgICAgRW5kVGltZSAgICA9PiAkUGFyYW17RW5kVGltZX0sCiAgICAgICAgICAgICAgICAgICAgUGVyaW9kICAgICA9PiAkUGVyaW9kLAogICAgICAgICAgICAgICAgICAgIFRpY2tldElEICAgPT4gJFBhcmFte1RpY2tldElEfSAgIHx8IDAsCiAgICAgICAgICAgICAgICAgICAgQXJ0aWNsZUlEICA9PiAkUGFyYW17QXJ0aWNsZUlEfSAgfHwgMCwKICAgICAgICAgICAgICAgICAgICBCYXNlTW9kdWxlID0+ICRQYXJhbXtCYXNlTW9kdWxlfSB8fCAnLScsCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgcHVzaCBAeyAkRGF0YXtXb3JraW5nVW5pdHN9IH0sIFwlV29ya2luZ1VuaXQ7CgogICAgICAgICAgICAgICAgJERhdGF7WWVhcn0gICA9ICRQYXJhbXtZZWFyfTsKICAgICAgICAgICAgICAgICREYXRhe01vbnRofSAgPSAkUGFyYW17TW9udGh9OwogICAgICAgICAgICAgICAgJERhdGF7RGF5fSAgICA9ICRQYXJhbXtEYXl9OwogICAgICAgICAgICAgICAgJERhdGF7VXNlcklEfSA9ICRTZWxmLT57VXNlcklEfTsKCiAgICAgICAgICAgICAgICBpZiAoICEkVGltZUFjY291bnRpbmdPYmplY3QtPldvcmtpbmdVbml0c0luc2VydCglRGF0YSkgKSB7CgogICAgICAgICAgICAgICAgICAgIHJldHVybiAkTGF5b3V0T2JqZWN0LT5FcnJvclNjcmVlbigKICAgICAgICAgICAgICAgICAgICAgICAgTWVzc2FnZSA9PiBUcmFuc2xhdGFibGUoJ0NhblwndCBpbnNlcnQgV29ya2luZyBVbml0cyEnKSwKICAgICAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJFBhcmFte1N1Y2Nlc3NmdWxJbnNlcnR9ID0gMTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgIyBpbmNyZW1lbnQgdGhlIGVycm9yIGluZGV4IGlmIHRoZXJlIHdhcyBhbiBlcnJvciBvbiB0aGlzIHJvdwogICAgICAgICAgICAkRXJyb3JJbmRleCsrIGlmICggZGVmaW5lZCAkRXJyb3JzeyRFcnJvckluZGV4fSApOwogICAgICAgIH0KCiAgICAgICAgaWYgKCVTZXJ2ZXJFcnJvckRhdGEpIHsKICAgICAgICAgICAgJFBhcmFte1N1Y2Nlc3NmdWxJbnNlcnR9ID0gdW5kZWY7CiAgICAgICAgfQogICAgfQoKICAgIG15ICVBcHBlbmREYXRhID0gJURhdGE7CgogICAgIyBTaG93IFdvcmtpbmcgVW5pdHMKICAgICMgZ2V0IGV4aXN0aW5nIHdvcmtpbmcgdW5pdHMKICAgICVEYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Xb3JraW5nVW5pdHNHZXQoCiAgICAgICAgWWVhciAgID0+ICRQYXJhbXtZZWFyfSwKICAgICAgICBNb250aCAgPT4gJFBhcmFte01vbnRofSwKICAgICAgICBEYXkgICAgPT4gJFBhcmFte0RheX0sCiAgICAgICAgVXNlcklEID0+ICRTZWxmLT57VXNlcklEfSwKICAgICk7CgogICAgIyBnZXQgbnVtYmVyIG9mIHdvcmtpbmcgdW5pdHMgKD1yZWNvcmRzKQogICAgIyAgICBpZiBiaWdnZXIgdGhhbiBSZWNvcmRzTnVtYmVyLCBtb3JlIHRoYW4gdGhlIG51bWJlciBvZiBkZWZhdWx0IHJlY29yZHMgd2VyZSBzYXZlZCBmb3IKICAgICMgICAgdGhpcyBkYXRlCiAgICBteSAkV29ya2luZ1VuaXRzQ291bnQgPSAwOwogICAgaWYgKCAkRGF0YXtXb3JraW5nVW5pdHN9ICkgewogICAgICAgICRXb3JraW5nVW5pdHNDb3VudCA9IEB7ICREYXRhe1dvcmtpbmdVbml0c30gfTsKICAgICAgICBpZiAoICRXb3JraW5nVW5pdHNDb3VudCA+ICRQYXJhbXtSZWNvcmRzTnVtYmVyfSApIHsKICAgICAgICAgICAgJFBhcmFte1JlY29yZHNOdW1iZXJ9ID0gJFdvcmtpbmdVbml0c0NvdW50OwogICAgICAgIH0KICAgIH0KCiAgICBteSAlRnJvbnRlbmQ7CgogICAgaWYgKCAkQ29uZmlnT2JqZWN0LT5HZXQoJ1RpbWVBY2NvdW50aW5nOjpJbnB1dEhvdXJzV2l0aG91dFN0YXJ0RW5kVGltZScpICkgewogICAgICAgICRQYXJhbXtQZXJpb2RCbG9ja30gICAgICAgPSAnVW5pdElucHV0UGVyaW9kJzsKICAgICAgICAkUGFyYW17QXBwZW5kUGVyaW9kQmxvY2t9ID0gJ0FwcGVuZFVuaXRJbnB1dFBlcmlvZCc7CiAgICAgICAgJEZyb250ZW5ke1BlcmlvZE5vdGV9ICAgICA9ICcqJzsKICAgIH0KICAgIGVsc2UgewogICAgICAgICRQYXJhbXtQZXJpb2RCbG9ja30gICAgICAgPSAnVW5pdFBlcmlvZFdpdGhvdXRJbnB1dCc7CiAgICAgICAgJFBhcmFte0FwcGVuZFBlcmlvZEJsb2NrfSA9ICdBcHBlbmRVbml0UGVyaW9kV2l0aG91dElucHV0JzsKICAgICAgICAkRnJvbnRlbmR7UGVyaW9kTm90ZX0gICAgID0gJyc7CiAgICB9CgogICAgaWYgKCAkRGF0ZVRpbWVPYmplY3RDdXJyZW50LT5Db21wYXJlKCBEYXRlVGltZU9iamVjdCA9PiAkRGF0ZVRpbWVPYmplY3RHaXZlbiApICkgewogICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICBOYW1lID0+ICdVbml0QmxvY2snLAogICAgICAgICAgICBEYXRhID0+IHsgJVBhcmFtLCAlRnJvbnRlbmQgfSwKICAgICAgICApOwogICAgfQoKICAgICMgcmVuZGVyIHRhYmxlIGZvciBuZXcgZW50cmllcwogICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgTmFtZSA9PiAnQXBwZW5kV29ya2luZ1VuaXRzJywKICAgICAgICBEYXRhID0+IHsKICAgICAgICAgICAgWWVhciAgPT4gJFBhcmFte1llYXJ9LAogICAgICAgICAgICBNb250aCA9PiAkUGFyYW17TW9udGh9LAogICAgICAgICAgICBEYXkgICA9PiAkUGFyYW17RGF5fSwKICAgICAgICB9LAogICAgKTsKCiAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICBOYW1lID0+ICdBcHBlbmRVbml0QmxvY2snLAogICAgICAgIERhdGEgPT4geyAlUGFyYW0sICVGcm9udGVuZCB9LAogICAgKTsKCiAgICAjIGdldCBzaWNrLCBsZWF2ZSBkYXkgYW5kIG92ZXJ0aW1lCiAgICAkUGFyYW17U2lja30gICAgID0gJERhdGF7U2lja30gICAgID8gJ2NoZWNrZWQ9ImNoZWNrZWQiJyA6ICcnOwogICAgJFBhcmFte0xlYXZlRGF5fSA9ICREYXRhe0xlYXZlRGF5fSA/ICdjaGVja2VkPSJjaGVja2VkIicgOiAnJzsKICAgICRQYXJhbXtPdmVydGltZX0gPSAkRGF0YXtPdmVydGltZX0gPyAnY2hlY2tlZD0iY2hlY2tlZCInIDogJyc7CgogICAgJFBhcmFte1RvdGFsfSA9ICREYXRhe1RvdGFsfTsKCiAgICAjIHNldCBhY3Rpb24gbGlzdCBhbmQgcmVsYXRlZCBjb25zdHJhaW50cwogICAgIyBnZW5lcmF0ZSBhIEphdmFTY3JpcHQgQXJyYXkgd2hpY2ggd2lsbCBiZSBvdXRwdXQgdG8gdGhlIHRlbXBsYXRlCiAgICBteSBAQWN0aW9uSURzID0gc29ydCB7ICRBY3Rpb25MaXN0eyRhfSBjbXAgJEFjdGlvbkxpc3R7JGJ9IH0ga2V5cyAlQWN0aW9uTGlzdDsKICAgIG15IEBKU0FjdGlvbnM7CiAgICBmb3IgbXkgJEFjdGlvbklEIChAQWN0aW9uSURzKSB7CiAgICAgICAgcHVzaCBASlNBY3Rpb25zLCBbCiAgICAgICAgICAgICRBY3Rpb25JRCwKICAgICAgICAgICAgJEFjdGlvbkxpc3R7JEFjdGlvbklEfQogICAgICAgIF07CiAgICB9CgogICAgJExheW91dE9iamVjdC0+QWRkSlNEYXRhKAogICAgICAgIEtleSAgID0+ICdBY3Rpb25MaXN0JywKICAgICAgICBWYWx1ZSA9PiBcQEpTQWN0aW9ucwogICAgKTsKCiAgICBteSAkQWN0aW9uTGlzdENvbnN0cmFpbnRzID0gJENvbmZpZ09iamVjdC0+R2V0KCdUaW1lQWNjb3VudGluZzo6QWN0aW9uTGlzdENvbnN0cmFpbnRzJyk7CiAgICBteSBASlNBY3Rpb25MaXN0Q29uc3RyYWludHM7CiAgICBmb3IgbXkgJFByb2plY3ROYW1lUmVnRXhwICggc29ydCBrZXlzICV7JEFjdGlvbkxpc3RDb25zdHJhaW50c30gKSB7CiAgICAgICAgbXkgJEFjdGlvbk5hbWVSZWdFeHAgPSAkQWN0aW9uTGlzdENvbnN0cmFpbnRzLT57JFByb2plY3ROYW1lUmVnRXhwfTsKICAgICAgICBzeyhbJyJcXF0pfXtcXCQxfXNteGcgZm9yICggJFByb2plY3ROYW1lUmVnRXhwLCAkQWN0aW9uTmFtZVJlZ0V4cCApOwogICAgICAgIHB1c2ggQEpTQWN0aW9uTGlzdENvbnN0cmFpbnRzLCBbCiAgICAgICAgICAgICRQcm9qZWN0TmFtZVJlZ0V4cCwKICAgICAgICAgICAgJEFjdGlvbk5hbWVSZWdFeHAKICAgICAgICBdOwogICAgfQoKICAgICRMYXlvdXRPYmplY3QtPkFkZEpTRGF0YSgKICAgICAgICBLZXkgICA9PiAnQWN0aW9uTGlzdENvbnN0cmFpbnRzJywKICAgICAgICBWYWx1ZSA9PiBcQEpTQWN0aW9uTGlzdENvbnN0cmFpbnRzCiAgICApOwoKICAgICMgYnVpbGQgYSB3b3JraW5nIHVuaXQgYXJyYXkKICAgIG15IEBVbml0cyAgICAgICA9ICh1bmRlZik7CiAgICBteSBAQXBwZW5kVW5pdHMgPSAodW5kZWYpOwogICAgaWYgKCAkTW9kZSBlcSAnQXBwZW5kJyApIHsKICAgICAgICBpZiAoICRBcHBlbmREYXRhe1dvcmtpbmdVbml0c30gKSB7CiAgICAgICAgICAgIHB1c2ggQEFwcGVuZFVuaXRzLCBAeyAkQXBwZW5kRGF0YXtXb3JraW5nVW5pdHN9IH07CiAgICAgICAgfQogICAgfQogICAgaWYgKCAkRGF0YXtXb3JraW5nVW5pdHN9ICkgewogICAgICAgIHB1c2ggQFVuaXRzLCBAeyAkRGF0YXtXb3JraW5nVW5pdHN9IH07CiAgICB9CgogICAgbXkgJEFwcGVuZFByb2plY3RMaXN0ID0gJFNlbGYtPl9Qcm9qZWN0TGlzdCgpOwoKICAgICRFcnJvckluZGV4ICAgICAgID0gMDsKICAgICRBcHBlbmRFcnJvckluZGV4ID0gMDsKCiAgICBteSAkTWF4Q291bnRlciA9ICggJCNVbml0cyA+IDUgKSA/ICQjVW5pdHMgOiA1OwoKICAgICMgYnVpbGQgdW5pdHMKICAgIGZvciBteSAkSUQgKCAxIC4uICRNYXhDb3VudGVyICkgewogICAgICAgICRQYXJhbXtJRH0gPSAkSUQ7CiAgICAgICAgbXkgJFVuaXRSZWYgICAgICAgICA9ICRVbml0c1skSURdOwogICAgICAgIG15ICRBcHBlbmRVbml0UmVmICAgPSAkQXBwZW5kVW5pdHNbJElEXTsKICAgICAgICBteSAkU2hvd0Vycm9yICAgICAgID0gMDsKICAgICAgICBteSAkQXBwZW5kU2hvd0Vycm9yID0gMDsKCiAgICAgICAgaWYgKCAhJFVuaXRSZWYgKSB7CiAgICAgICAgICAgICRFcnJvckluZGV4Kys7CiAgICAgICAgICAgICRTaG93RXJyb3IgPSAxOwogICAgICAgIH0KCiAgICAgICAgaWYgKCAhJEFwcGVuZFVuaXRSZWYgKSB7CiAgICAgICAgICAgICRBcHBlbmRFcnJvckluZGV4Kys7CiAgICAgICAgICAgICRBcHBlbmRTaG93RXJyb3IgPSAxOwogICAgICAgIH0KCiAgICAgICAgIyBnZXQgZGF0YSBvZiBwcm9qZWN0cwogICAgICAgIG15ICRQcm9qZWN0TGlzdCA9ICRTZWxmLT5fUHJvamVjdExpc3QoCiAgICAgICAgICAgIFNlbGVjdGVkSUQgPT4gJFVuaXRSZWYtPntQcm9qZWN0SUR9CiAgICAgICAgICAgICAgICB8fCAkU2VydmVyRXJyb3JEYXRheyRFcnJvckluZGV4fXtQcm9qZWN0SUR9CiAgICAgICAgICAgICAgICB8fCAnJywKICAgICAgICApOwogICAgICAgIG15ICRBcHBlbmRQcm9qZWN0TGlzdCA9ICRTZWxmLT5fUHJvamVjdExpc3QoCiAgICAgICAgICAgIFNlbGVjdGVkSUQgPT4gJFNlcnZlckVycm9yRGF0YXskQXBwZW5kRXJyb3JJbmRleH17J0FwcGVuZFByb2plY3RJRCd9IHx8ICcnLAogICAgICAgICk7CgogICAgICAgICRQYXJhbXtQcm9qZWN0SUR9ID0gJFVuaXRSZWYtPntQcm9qZWN0SUR9CiAgICAgICAgICAgIHx8ICRTZXJ2ZXJFcnJvckRhdGF7JEVycm9ySW5kZXh9e1Byb2plY3RJRH0KICAgICAgICAgICAgfHwgJyc7CiAgICAgICAgJFBhcmFte1Byb2plY3ROYW1lfSAgICAgPSAnJzsKICAgICAgICAkUGFyYW17QXBwZW5kUHJvamVjdElEfSA9ICRBcHBlbmRVbml0UmVmLT57UHJvamVjdElEfQogICAgICAgICAgICB8fCAkU2VydmVyRXJyb3JEYXRheyRBcHBlbmRFcnJvckluZGV4fXsnQXBwZW5kUHJvamVjdElEJ30KICAgICAgICAgICAgfHwgJyc7CiAgICAgICAgJFBhcmFte0FwcGVuZFByb2plY3ROYW1lfSA9ICcnOwoKICAgICAgICAjIHNldCBjb21tb24gcGFyYW1zIGZvciBwcm9qZWN0IHNlbGVjdGlvbgogICAgICAgIG15ICVQcm9qZWN0T3B0aW9uUGFyYW1zID0gKAogICAgICAgICAgICBOYW1lICAgICAgICA9PiAiUHJvamVjdElEWyRJRF0iLAogICAgICAgICAgICBJRCAgICAgICAgICA9PiAiUHJvamVjdElEJElEIiwKICAgICAgICAgICAgVHJhbnNsYXRpb24gPT4gMCwKICAgICAgICAgICAgQ2xhc3MgICAgICAgPT4gJ1ZhbGlkYXRlX1RpbWVBY2NvdW50aW5nX1Byb2plY3QgUHJvamVjdFNlbGVjdGlvbiAnCiAgICAgICAgICAgICAgICAuICggJEVycm9yc3skRXJyb3JJbmRleH17UHJvamVjdElESW52YWxpZH0gfHwgJycgKSwKICAgICAgICAgICAgT25DaGFuZ2UgPT4gIlRpbWVBY2NvdW50aW5nLkFnZW50LkVkaXRUaW1lUmVjb3Jkcy5GaWxsQWN0aW9uTGlzdCgkSUQpOyIsCiAgICAgICAgICAgIFRpdGxlICAgID0+ICRMYXlvdXRPYmplY3QtPntMYW5ndWFnZU9iamVjdH0tPlRyYW5zbGF0ZSgiUHJvamVjdCIpLAogICAgICAgICk7CiAgICAgICAgbXkgJUFwcGVuZFByb2plY3RPcHRpb25QYXJhbXMgPSAoCiAgICAgICAgICAgIE5hbWUgICAgICAgID0+ICJBcHBlbmRQcm9qZWN0SURbJElEXSIsCiAgICAgICAgICAgIElEICAgICAgICAgID0+ICJBcHBlbmRQcm9qZWN0SUQkSUQiLAogICAgICAgICAgICBUcmFuc2xhdGlvbiA9PiAwLAogICAgICAgICAgICBDbGFzcyAgICAgICA9PiAnVmFsaWRhdGVfVGltZUFjY291bnRpbmdfUHJvamVjdCBQcm9qZWN0U2VsZWN0aW9uICcKICAgICAgICAgICAgICAgIC4gKCAkRXJyb3JzeyRBcHBlbmRFcnJvckluZGV4fXtBcHBlbmRQcm9qZWN0SURJbnZhbGlkfSB8fCAnJyApLAogICAgICAgICAgICBPbkNoYW5nZSA9PiAiVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzLkZpbGxBY3Rpb25MaXN0KCRJRCk7IiwKICAgICAgICAgICAgVGl0bGUgICAgPT4gJExheW91dE9iamVjdC0+e0xhbmd1YWdlT2JqZWN0fS0+VHJhbnNsYXRlKCJQcm9qZWN0IiksCiAgICAgICAgKTsKCiAgICAgICAgIyBDb25maWcgb3B0aW9uIGlzIGVuYWJsZWQgdG8gc2V0IHRpY2tldCBlbnRyaWVzIHRvIHJvCiAgICAgICAgaWYgKCAkQ29uZmlnT2JqZWN0LT5HZXQoJ1RpbWVBY2NvdW50aW5nOjpUaWNrZXRTeW5jOjpTZXRFbnRyeVJlYWRPbmx5JykgKSB7CgogICAgICAgICAgICAkUGFyYW17UmVhZE9ubHl9ID0gJFVuaXRSZWYtPntSZWFkT25seX0gfHwgJyc7CgogICAgICAgIH0KCiAgICAgICAgbXkgJEVuYWJsZUF1dG9Db21wbGV0aW9uID0gJENvbmZpZ09iamVjdC0+R2V0KCJUaW1lQWNjb3VudGluZzo6RW5hYmxlQXV0b0NvbXBsZXRpb24iKSB8fCAwOwogICAgICAgIG15ICRDbGFzcyAgICAgICAgICAgICAgICA9ICRFbmFibGVBdXRvQ29tcGxldGlvbiA/ICcgTW9kZXJuaXplJyA6ICcnOwoKICAgICAgICAjIHNldCBwYXJhbXMgZm9yIG1vZGVybiBpbnB1dHMKICAgICAgICAkUHJvamVjdE9wdGlvblBhcmFtc3tDbGFzc30gICAgICAgLj0gJENsYXNzOwogICAgICAgICRBcHBlbmRQcm9qZWN0T3B0aW9uUGFyYW1ze0NsYXNzfSAuPSAkQ2xhc3M7CgogICAgICAgIGlmICggJEVuYWJsZUF1dG9Db21wbGV0aW9uICYmICRDb25maWdPYmplY3QtPkdldCgiVGltZUFjY291bnRpbmc6OlVzZUZpbHRlciIpICkgewoKICAgICAgICAgICAgIyBhZGQgZmlsdGVyIGZvciB0aGUgcHJldmlvdXMgcHJvamVjdHMKICAgICAgICAgICAgJFByb2plY3RPcHRpb25QYXJhbXN7RGF0YX0gICAgPSAkUHJvamVjdExpc3QtPntBbGxQcm9qZWN0c307CiAgICAgICAgICAgICRQcm9qZWN0T3B0aW9uUGFyYW1ze0ZpbHRlcnN9ID0gewogICAgICAgICAgICAgICAgTGFzdFByb2plY3RzID0+IHsKICAgICAgICAgICAgICAgICAgICBOYW1lICAgPT4gJExheW91dE9iamVjdC0+e0xhbmd1YWdlT2JqZWN0fS0+VHJhbnNsYXRlKCdMYXN0IFByb2plY3RzJyksCiAgICAgICAgICAgICAgICAgICAgVmFsdWVzID0+ICRQcm9qZWN0TGlzdC0+e0xhc3RQcm9qZWN0c30sCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICB9OwoKICAgICAgICAgICAgJEFwcGVuZFByb2plY3RPcHRpb25QYXJhbXN7RGF0YX0gICAgPSAkQXBwZW5kUHJvamVjdExpc3QtPntBbGxQcm9qZWN0c307CiAgICAgICAgICAgICRBcHBlbmRQcm9qZWN0T3B0aW9uUGFyYW1ze0ZpbHRlcnN9ID0gewogICAgICAgICAgICAgICAgTGFzdFByb2plY3RzID0+IHsKICAgICAgICAgICAgICAgICAgICBOYW1lICAgPT4gJExheW91dE9iamVjdC0+e0xhbmd1YWdlT2JqZWN0fS0+VHJhbnNsYXRlKCdMYXN0IFByb2plY3RzJyksCiAgICAgICAgICAgICAgICAgICAgVmFsdWVzID0+ICRBcHBlbmRQcm9qZWN0TGlzdC0+e0xhc3RQcm9qZWN0c30sCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICB9OwoKICAgICAgICAgICAgIyBpZiB0aGVyZSBhcmUgdGhlIHByZXZpb3VzIHByb2plY3RzLCBleHBhbmQgZmlsdGVyIGRpYWxvZwogICAgICAgICAgICBpZiAoIHNjYWxhciBAeyAkUHJvamVjdExpc3QtPntMYXN0UHJvamVjdHN9IH0gPiAxICkgewogICAgICAgICAgICAgICAgJFByb2plY3RPcHRpb25QYXJhbXN7RXhwYW5kRmlsdGVyc30gPSAxOwoKICAgICAgICAgICAgICAgICMgbWFrZSB0aGUgZmlsdGVyIGFjdGl2ZSBieSBkZWZhdWx0IGlmICdBY3RpdmVGaWx0ZXInIGlzIGVuYWJsZWQKICAgICAgICAgICAgICAgIGlmICggJENvbmZpZ09iamVjdC0+R2V0KCJUaW1lQWNjb3VudGluZzo6QWN0aXZlRmlsdGVyIikgKSB7CiAgICAgICAgICAgICAgICAgICAgJFByb2plY3RPcHRpb25QYXJhbXN7RmlsdGVyc30tPntMYXN0UHJvamVjdHN9LT57QWN0aXZlfSA9IDE7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmICggc2NhbGFyIEB7ICRBcHBlbmRQcm9qZWN0TGlzdC0+e0xhc3RQcm9qZWN0c30gfSA+IDEgKSB7CiAgICAgICAgICAgICAgICAkQXBwZW5kUHJvamVjdE9wdGlvblBhcmFtc3tFeHBhbmRGaWx0ZXJzfSA9IDE7CgogICAgICAgICAgICAgICAgIyBtYWtlIHRoZSBmaWx0ZXIgYWN0aXZlIGJ5IGRlZmF1bHQgaWYgJ0FjdGl2ZUZpbHRlcicgaXMgZW5hYmxlZAogICAgICAgICAgICAgICAgaWYgKCAkQ29uZmlnT2JqZWN0LT5HZXQoIlRpbWVBY2NvdW50aW5nOjpBY3RpdmVGaWx0ZXIiKSApIHsKICAgICAgICAgICAgICAgICAgICAkQXBwZW5kUHJvamVjdE9wdGlvblBhcmFtc3tGaWx0ZXJzfS0+e0xhc3RQcm9qZWN0c30tPntBY3RpdmV9ID0gMTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgIyBzZXQgcGFyYW1zIGZvciB0cmFkaXRpb25hbCBzZWxlY3RzIChhbmQgbW9kZXJuIGlucHV0IGZpZWxkcyBpZiBmaWx0ZXIgaXMgbm90IHVzZWQpCiAgICAgICAgICAgIG15IEBQcm9qZWN0cyA9ICggQHsgJFByb2plY3RMaXN0LT57TGFzdFByb2plY3RzfSB9LCBAeyAkUHJvamVjdExpc3QtPntBbGxQcm9qZWN0c30gfSApOwogICAgICAgICAgICAkUHJvamVjdE9wdGlvblBhcmFtc3tEYXRhfSA9IFxAUHJvamVjdHM7CiAgICAgICAgICAgIG15IEBBcHBlbmRQcm9qZWN0cyA9ICggQHsgJEFwcGVuZFByb2plY3RMaXN0LT57TGFzdFByb2plY3RzfSB9LCBAeyAkQXBwZW5kUHJvamVjdExpc3QtPntBbGxQcm9qZWN0c30gfSApOwogICAgICAgICAgICAkQXBwZW5kUHJvamVjdE9wdGlvblBhcmFtc3tEYXRhfSA9IFxAQXBwZW5kUHJvamVjdHM7CiAgICAgICAgfQoKICAgICAgICAjIGJ1aWxkIHByb2plY3RzIHNlbGVjdAogICAgICAgICRGcm9udGVuZHtQcm9qZWN0T3B0aW9ufSA9ICRMYXlvdXRPYmplY3QtPkJ1aWxkU2VsZWN0aW9uKAogICAgICAgICAgICAlUHJvamVjdE9wdGlvblBhcmFtcywKICAgICAgICApOwoKICAgICAgICAkRnJvbnRlbmR7QXBwZW5kUHJvamVjdE9wdGlvbn0gPSAkTGF5b3V0T2JqZWN0LT5CdWlsZFNlbGVjdGlvbigKICAgICAgICAgICAgJUFwcGVuZFByb2plY3RPcHRpb25QYXJhbXMsCiAgICAgICAgKTsKCiAgICAgICAgIyBhY3Rpb24gbGlzdCBpbml0aWFsbHkgb25seSBjb250YWlucyBlbXB0eSBhbmQgc2VsZWN0ZWQgZWxlbWVudCBhcyB3ZWxsIGFzIGVsZW1lbnRzCiAgICAgICAgIyBjb25maWd1cmVkIGZvciBzZWxlY3RlZCBwcm9qZWN0CiAgICAgICAgIyBpZiBubyBjb25zdHJhaW50cyBhcmUgY29uZmlndXJlZCwgYWxsIGFjdGlvbnMgd2lsbCBiZSBkaXNwbGF5ZWQKICAgICAgICBteSAkQWN0aW9uRGF0YSA9ICRTZWxmLT5fQWN0aW9uTGlzdENvbnN0cmFpbnRzKAogICAgICAgICAgICBQcm9qZWN0SUQgICAgICAgICAgICAgPT4gJFVuaXRSZWYtPntQcm9qZWN0SUR9IHx8ICRTZXJ2ZXJFcnJvckRhdGF7JEVycm9ySW5kZXh9LT57UHJvamVjdElEfSwKICAgICAgICAgICAgUHJvamVjdExpc3QgICAgICAgICAgID0+ICRQcm9qZWN0TGlzdCwKICAgICAgICAgICAgQWN0aW9uTGlzdCAgICAgICAgICAgID0+IFwlQWN0aW9uTGlzdCwKICAgICAgICAgICAgQWN0aW9uTGlzdENvbnN0cmFpbnRzID0+ICRBY3Rpb25MaXN0Q29uc3RyYWludHMsCiAgICAgICAgKTsKICAgICAgICAkQWN0aW9uRGF0YS0+eycnfSA9ICctJzsKCiAgICAgICAgbXkgJEFwcGVuZEFjdGlvbkRhdGEgPSAkU2VsZi0+X0FjdGlvbkxpc3RDb25zdHJhaW50cygKICAgICAgICAgICAgUHJvamVjdElEICAgICAgICAgICAgID0+ICRBcHBlbmRVbml0UmVmLT57UHJvamVjdElEfSB8fCAkU2VydmVyRXJyb3JEYXRheyRBcHBlbmRFcnJvckluZGV4fS0+e0FwcGVuZFByb2plY3RJRH0sCiAgICAgICAgICAgIFByb2plY3RMaXN0ICAgICAgICAgICA9PiAkQXBwZW5kUHJvamVjdExpc3QsCiAgICAgICAgICAgIEFjdGlvbkxpc3QgICAgICAgICAgICA9PiBcJUFjdGlvbkxpc3QsCiAgICAgICAgICAgIEFjdGlvbkxpc3RDb25zdHJhaW50cyA9PiAkQWN0aW9uTGlzdENvbnN0cmFpbnRzLAogICAgICAgICk7CiAgICAgICAgJEFwcGVuZEFjdGlvbkRhdGEtPnsnJ30gPSAnLSc7CgogICAgICAgIGlmICggJFVuaXRSZWYgJiYgJFVuaXRSZWYtPntBY3Rpb25JRH0gJiYgJEFjdGlvbkxpc3R7ICRVbml0UmVmLT57QWN0aW9uSUR9IH0gKSB7CiAgICAgICAgICAgICRBY3Rpb25EYXRhLT57ICRVbml0UmVmLT57QWN0aW9uSUR9IH0gPSAkQWN0aW9uTGlzdHsgJFVuaXRSZWYtPntBY3Rpb25JRH0gfTsKICAgICAgICB9CiAgICAgICAgZWxzaWYgKAogICAgICAgICAgICAkU2VydmVyRXJyb3JEYXRheyRFcnJvckluZGV4fQogICAgICAgICAgICAmJiAkU2VydmVyRXJyb3JEYXRheyRFcnJvckluZGV4fXtBY3Rpb25JRH0KICAgICAgICAgICAgJiYgJEFjdGlvbkxpc3R7ICRTZXJ2ZXJFcnJvckRhdGF7JEVycm9ySW5kZXh9e0FjdGlvbklEfSB9CiAgICAgICAgICAgICkKICAgICAgICB7CiAgICAgICAgICAgICRBY3Rpb25EYXRhLT57ICRTZXJ2ZXJFcnJvckRhdGF7JEVycm9ySW5kZXh9e0FjdGlvbklEfSB9CiAgICAgICAgICAgICAgICA9ICRBY3Rpb25MaXN0eyAkU2VydmVyRXJyb3JEYXRheyRFcnJvckluZGV4fXtBY3Rpb25JRH0gfTsKICAgICAgICB9CgogICAgICAgIGlmICggJEFwcGVuZFVuaXRSZWYgJiYgJEFwcGVuZFVuaXRSZWYtPntBY3Rpb25JRH0gJiYgJEFjdGlvbkxpc3R7ICRBcHBlbmRVbml0UmVmLT57QWN0aW9uSUR9IH0gKSB7CiAgICAgICAgICAgICRBcHBlbmRBY3Rpb25EYXRhLT57ICRBcHBlbmRVbml0UmVmLT57QWN0aW9uSUR9IH0gPSAkQWN0aW9uTGlzdHsgJEFwcGVuZFVuaXRSZWYtPntBY3Rpb25JRH0gfTsKICAgICAgICB9CiAgICAgICAgZWxzaWYgKAogICAgICAgICAgICAkU2VydmVyRXJyb3JEYXRheyRBcHBlbmRFcnJvckluZGV4fQogICAgICAgICAgICAmJiAkU2VydmVyRXJyb3JEYXRheyRBcHBlbmRFcnJvckluZGV4fXsgJE1vZGUgLiAnQWN0aW9uSUQnIH0KICAgICAgICAgICAgJiYgJEFjdGlvbkxpc3R7ICRTZXJ2ZXJFcnJvckRhdGF7JEFwcGVuZEVycm9ySW5kZXh9eyAkTW9kZSAuICdBY3Rpb25JRCcgfSB9CiAgICAgICAgICAgICkKICAgICAgICB7CiAgICAgICAgICAgICRBcHBlbmRBY3Rpb25EYXRhLT57ICRTZXJ2ZXJFcnJvckRhdGF7JEFwcGVuZEVycm9ySW5kZXh9eyAkTW9kZSAuICdBY3Rpb25JRCcgfSB9CiAgICAgICAgICAgICAgICA9ICRBY3Rpb25MaXN0eyAkU2VydmVyRXJyb3JEYXRheyRBcHBlbmRFcnJvckluZGV4fXsgJE1vZGUgLiAnQWN0aW9uSUQnIH0gfTsKICAgICAgICB9CgogICAgICAgICRGcm9udGVuZHtBY3Rpb25PcHRpb259ID0gJExheW91dE9iamVjdC0+QnVpbGRTZWxlY3Rpb24oCgogICAgICAgICAgICBEYXRhICAgICAgICA9PiAkQWN0aW9uRGF0YSwKICAgICAgICAgICAgU2VsZWN0ZWRJRCAgPT4gJFVuaXRSZWYtPntBY3Rpb25JRH0gfHwgJFNlcnZlckVycm9yRGF0YXskRXJyb3JJbmRleH17QWN0aW9uSUR9IHx8ICcnLAogICAgICAgICAgICBOYW1lICAgICAgICA9PiAiQWN0aW9uSURbJElEXSIsCiAgICAgICAgICAgIElEICAgICAgICAgID0+ICJBY3Rpb25JRCRJRCIsCiAgICAgICAgICAgIFRyYW5zbGF0aW9uID0+IDAsCiAgICAgICAgICAgIENsYXNzICAgICAgID0+ICdWYWxpZGF0ZV9EZXBlbmRpbmdSZXF1aXJlZEFORCBWYWxpZGF0ZV9EZXBlbmRpbmdfUHJvamVjdElEJwogICAgICAgICAgICAgICAgLiAkSUQKICAgICAgICAgICAgICAgIC4gJyBBY3Rpb25TZWxlY3Rpb24gJwogICAgICAgICAgICAgICAgLiAoICRFcnJvcnN7JEVycm9ySW5kZXh9e0FjdGlvbklESW52YWxpZH0gfHwgJycgKQogICAgICAgICAgICAgICAgLiAkQ2xhc3MsCiAgICAgICAgICAgIFRpdGxlID0+ICRMYXlvdXRPYmplY3QtPntMYW5ndWFnZU9iamVjdH0tPlRyYW5zbGF0ZSgiVGFzayIpLAogICAgICAgICk7CgogICAgICAgICRGcm9udGVuZHtBcHBlbmRBY3Rpb25PcHRpb259ID0gJExheW91dE9iamVjdC0+QnVpbGRTZWxlY3Rpb24oCgogICAgICAgICAgICBEYXRhICAgICAgICA9PiAkQXBwZW5kQWN0aW9uRGF0YSwKICAgICAgICAgICAgU2VsZWN0ZWRJRCAgPT4gJFNlcnZlckVycm9yRGF0YXskQXBwZW5kRXJyb3JJbmRleH17QXBwZW5kQWN0aW9uSUR9IHx8ICcnLAogICAgICAgICAgICBOYW1lICAgICAgICA9PiAiQXBwZW5kQWN0aW9uSURbJElEXSIsCiAgICAgICAgICAgIElEICAgICAgICAgID0+ICJBcHBlbmRBY3Rpb25JRCRJRCIsCiAgICAgICAgICAgIFRyYW5zbGF0aW9uID0+IDAsCiAgICAgICAgICAgIENsYXNzICAgICAgID0+ICdWYWxpZGF0ZV9EZXBlbmRpbmdSZXF1aXJlZEFORCBWYWxpZGF0ZV9EZXBlbmRpbmdfQXBwZW5kUHJvamVjdElEJwogICAgICAgICAgICAgICAgLiAkSUQKICAgICAgICAgICAgICAgIC4gJyBBY3Rpb25TZWxlY3Rpb24gJwogICAgICAgICAgICAgICAgLiAoICRFcnJvcnN7JEFwcGVuZEVycm9ySW5kZXh9e0FwcGVuZEFjdGlvbklESW52YWxpZH0gfHwgJycgKQogICAgICAgICAgICAgICAgLiAkQ2xhc3MsCiAgICAgICAgICAgIFRpdGxlID0+ICRMYXlvdXRPYmplY3QtPntMYW5ndWFnZU9iamVjdH0tPlRyYW5zbGF0ZSgiVGFzayIpLAogICAgICAgICk7CgogICAgICAgICRQYXJhbXtSZW1hcmt9ICAgICAgID0gJFVuaXRSZWYtPntSZW1hcmt9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8fCAkU2VydmVyRXJyb3JEYXRheyRFcnJvckluZGV4fXtSZW1hcmt9IHx8ICcnOwogICAgICAgICRQYXJhbXtBcHBlbmRSZW1hcmt9ID0gJFNlcnZlckVycm9yRGF0YXskQXBwZW5kRXJyb3JJbmRleH17QXBwZW5kUmVtYXJrfSB8fCAnJzsKICAgICAgICAkUGFyYW17QmFzZU1vZHVsZX0gICA9ICRVbml0UmVmLT57QmFzZU1vZHVsZX0gICAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgJyc7CgogICAgICAgIG15ICRQZXJpb2Q7CiAgICAgICAgbXkgJEFwcGVuZFBlcmlvZDsKICAgICAgICBpZiAoCiAgICAgICAgICAgICggJFVuaXRSZWYtPntQZXJpb2R9ICYmICRVbml0UmVmLT57UGVyaW9kfSA9PSAwICkKICAgICAgICAgICAgfHwgKAogICAgICAgICAgICAgICAgZGVmaW5lZCAkU2VydmVyRXJyb3JEYXRheyRFcnJvckluZGV4fXtQZXJpb2R9CiAgICAgICAgICAgICAgICAmJiAkU2VydmVyRXJyb3JEYXRheyRFcnJvckluZGV4fXtQZXJpb2R9ID09IDAKICAgICAgICAgICAgKQogICAgICAgICAgICApCiAgICAgICAgewogICAgICAgICAgICAkUGVyaW9kID0gMDsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICRQZXJpb2QgPSAkVW5pdFJlZi0+e1BlcmlvZH0gfHwgJFNlcnZlckVycm9yRGF0YXskRXJyb3JJbmRleH17UGVyaW9kfSB8fCAnJzsKICAgICAgICB9CgogICAgICAgIGZvciBteSAkVGltZVBlcmlvZCAocXcoU3RhcnRUaW1lIEVuZFRpbWUpKSB7CiAgICAgICAgICAgIGlmICgkU2hvd0Vycm9yKSB7CiAgICAgICAgICAgICAgICAkUGFyYW17JFRpbWVQZXJpb2R9ID0gJFNlcnZlckVycm9yRGF0YXskRXJyb3JJbmRleH17JFRpbWVQZXJpb2R9IC8vICcnOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgJFBhcmFteyRUaW1lUGVyaW9kfSA9ICRVbml0UmVmLT57JFRpbWVQZXJpb2R9IC8vICcnOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBpZiAoCiAgICAgICAgICAgICggJEFwcGVuZFVuaXRSZWYtPntQZXJpb2R9ICYmICRBcHBlbmRVbml0UmVmLT57UGVyaW9kfSA9PSAwICkKICAgICAgICAgICAgfHwgKAogICAgICAgICAgICAgICAgZGVmaW5lZCAkU2VydmVyRXJyb3JEYXRheyRBcHBlbmRFcnJvckluZGV4fXsnQXBwZW5kUGVyaW9kJ30KICAgICAgICAgICAgICAgICYmICRTZXJ2ZXJFcnJvckRhdGF7JEFwcGVuZEVycm9ySW5kZXh9eydBcHBlbmRQZXJpb2QnfSA9PSAwCiAgICAgICAgICAgICkKICAgICAgICAgICAgKQogICAgICAgIHsKICAgICAgICAgICAgJEFwcGVuZFBlcmlvZCA9IDA7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICAkQXBwZW5kUGVyaW9kID0gJFNlcnZlckVycm9yRGF0YXskQXBwZW5kRXJyb3JJbmRleH17J0FwcGVuZFBlcmlvZCd9IHx8ICcnOwogICAgICAgIH0KCiAgICAgICAgZm9yIG15ICRUaW1lUGVyaW9kIChxdyhTdGFydFRpbWUgRW5kVGltZSkpIHsKICAgICAgICAgICAgaWYgKCRBcHBlbmRTaG93RXJyb3IpIHsKICAgICAgICAgICAgICAgICRQYXJhbXsgJ0FwcGVuZCcgLiAkVGltZVBlcmlvZCB9ID0gJFNlcnZlckVycm9yRGF0YXskQXBwZW5kRXJyb3JJbmRleH17ICdBcHBlbmQnIC4gJFRpbWVQZXJpb2QgfSAvLyAnJzsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICRQYXJhbXsgJ0FwcGVuZCcgLiAkVGltZVBlcmlvZCB9ID0gJEFwcGVuZFVuaXRSZWYtPnskVGltZVBlcmlvZH0gLy8gJyc7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGlmICgKICAgICAgICAgICAgJFBlcmlvZAogICAgICAgICAgICAmJiAkUGFyYW17U3RhcnRUaW1lfSBlcSAnMDA6MDAnCiAgICAgICAgICAgICYmICRQYXJhbXtFbmRUaW1lfSBlcSAnMDA6MDAnCiAgICAgICAgICAgICkKICAgICAgICB7CiAgICAgICAgICAgICRQYXJhbXtTdGFydFRpbWV9ID0gJyc7CiAgICAgICAgICAgICRQYXJhbXtFbmRUaW1lfSAgID0gJyc7CiAgICAgICAgfQoKICAgICAgICAjIEJsYW5rIGVudHJ5CiAgICAgICAgaWYgKCAhJFBhcmFte1Byb2plY3RJRH0gKSB7CgogICAgICAgICAgICBpZiAoICRJRCA8PSAkV29ya2luZ1VuaXRzQ291bnQgKSB7CiAgICAgICAgICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgICAgICAgICBOYW1lID0+ICdVbml0JywKICAgICAgICAgICAgICAgICAgICBEYXRhID0+IHsKICAgICAgICAgICAgICAgICAgICAgICAgJVBhcmFtLAogICAgICAgICAgICAgICAgICAgICAgICAlRnJvbnRlbmQsCiAgICAgICAgICAgICAgICAgICAgICAgICV7ICRFcnJvcnN7JEVycm9ySW5kZXh9IH0sCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgICMgY2xlYW5pbmcgZGF0YSBiZWZvcmUgcmVuZGVyaW5nIHVuaXQKICAgICAgICAgICAgaWYgKCAhJEFwcGVuZFNob3dFcnJvciApIHsKICAgICAgICAgICAgICAgIGZvciBteSAkRGF0YSAocXcoU3RhcnRUaW1lIEVuZFRpbWUgUHJvamVjdElEIFByb2plY3ROYW1lIFJlY29yZHNOdW1iZXIgUmVtYXJrKSkgewogICAgICAgICAgICAgICAgICAgICRQYXJhbXsgJ0FwcGVuZCcgLiAkRGF0YSB9ID0gJyc7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmICggJElEIDw9IDUgKSB7CiAgICAgICAgICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgICAgICAgICBOYW1lID0+ICdBcHBlbmRVbml0JywKICAgICAgICAgICAgICAgICAgICBEYXRhID0+IHsKICAgICAgICAgICAgICAgICAgICAgICAgJVBhcmFtLAogICAgICAgICAgICAgICAgICAgICAgICAlRnJvbnRlbmQsCiAgICAgICAgICAgICAgICAgICAgICAgICV7ICRFcnJvcnN7JEFwcGVuZEVycm9ySW5kZXh9IH0sCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KCiAgICAgICAgfQoKICAgICAgICAjIFRpY2tldCBlbnRyeQogICAgICAgIGVsc2lmICggJFBhcmFte0Jhc2VNb2R1bGV9ICYmICRQYXJhbXtCYXNlTW9kdWxlfSBlcSAnVGlja2V0JyApIHsKICAgICAgICAgICAgJFBhcmFte1RpY2tldElEfSAgID0gJFVuaXRSZWYtPntUaWNrZXRJRH07CiAgICAgICAgICAgICRQYXJhbXtBcnRpY2xlSUR9ICA9ICRVbml0UmVmLT57QXJ0aWNsZUlEfTsKICAgICAgICAgICAgJFBhcmFte0xpbmt9ICAgICAgID0gIkFnZW50VGlja2V0Wm9vbTtUaWNrZXRJRD0kUGFyYW17VGlja2V0SUR9OyRQYXJhbXtBcnRpY2xlSUR9IjsKICAgICAgICAgICAgJFBhcmFte0Jhc2VNb2R1bGV9ID0gIlRpY2tldCI7CgogICAgICAgICAgICAjIFNldCBGaWVsZCB0byBSZWFkT25seSBjYXVzZSBpdCdzIGEgdGlja2V0IGZpZWxkCiAgICAgICAgICAgICRQYXJhbXtSZWFkT25seX0gPSAicmVhZG9ubHkiOwoKICAgICAgICAgICAgJFBhcmFte1BlcmlvZH0gPSAkVW5pdFJlZi0+e1BlcmlvZH07CgogICAgICAgICAgICBpZiAoICRJRCA8PSAkV29ya2luZ1VuaXRzQ291bnQgKSB7CiAgICAgICAgICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgICAgICAgICBOYW1lID0+ICdVbml0JywKICAgICAgICAgICAgICAgICAgICBEYXRhID0+IHsKICAgICAgICAgICAgICAgICAgICAgICAgJVBhcmFtLAogICAgICAgICAgICAgICAgICAgICAgICAlRnJvbnRlbmQsCiAgICAgICAgICAgICAgICAgICAgICAgICV7ICRFcnJvcnN7JEVycm9ySW5kZXh9IH0sCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgICMgY2xlYW5pbmcgZGF0YSBiZWZvcmUgcmVuZGVyaW5nIHVuaXQKICAgICAgICAgICAgaWYgKCAhJEFwcGVuZFNob3dFcnJvciApIHsKICAgICAgICAgICAgICAgIGZvciBteSAkRGF0YSAocXcoU3RhcnRUaW1lIEVuZFRpbWUgUHJvamVjdElEIFByb2plY3ROYW1lIFJlY29yZHNOdW1iZXIgUmVtYXJrKSkgewogICAgICAgICAgICAgICAgICAgICRQYXJhbXsgJ0FwcGVuZCcgLiAkRGF0YSB9ID0gJyc7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmICggJElEIDw9IDUgKSB7CiAgICAgICAgICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgICAgICAgICBOYW1lID0+ICdBcHBlbmRVbml0JywKICAgICAgICAgICAgICAgICAgICBEYXRhID0+IHsKICAgICAgICAgICAgICAgICAgICAgICAgJVBhcmFtLAogICAgICAgICAgICAgICAgICAgICAgICAlRnJvbnRlbmQsCiAgICAgICAgICAgICAgICAgICAgICAgICV7ICRFcnJvcnN7JEFwcGVuZEVycm9ySW5kZXh9IH0sCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KCiAgICAgICAgfQoKICAgICAgICAjIFRpbWVBY2NvdW50aW5nIGVudHJ5CiAgICAgICAgZWxzaWYgKCAkUGFyYW17UHJvamVjdElEfSApIHsKICAgICAgICAgICAgJFBhcmFte0Jhc2VNb2R1bGV9ID0gJ1RpbWVBY2NvdW50JzsKCiAgICAgICAgICAgIGlmICggJElEIDw9ICRXb3JraW5nVW5pdHNDb3VudCApIHsKICAgICAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICAgICAgICAgIE5hbWUgPT4gJ1VuaXQnLAogICAgICAgICAgICAgICAgICAgIERhdGEgPT4gewogICAgICAgICAgICAgICAgICAgICAgICAlUGFyYW0sCiAgICAgICAgICAgICAgICAgICAgICAgICVGcm9udGVuZCwKICAgICAgICAgICAgICAgICAgICAgICAgJXsgJEVycm9yc3skRXJyb3JJbmRleH0gfSwKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgIyBjbGVhbmluZyBkYXRhIGJlZm9yZSByZW5kZXJpbmcgdW5pdAogICAgICAgICAgICBpZiAoICEkQXBwZW5kU2hvd0Vycm9yICkgewogICAgICAgICAgICAgICAgZm9yIG15ICREYXRhIChxdyhTdGFydFRpbWUgRW5kVGltZSBQcm9qZWN0SUQgUHJvamVjdE5hbWUgUmVjb3Jkc051bWJlciBSZW1hcmspKSB7CiAgICAgICAgICAgICAgICAgICAgJFBhcmFteyAnQXBwZW5kJyAuICREYXRhIH0gPSAnJzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYgKCAkSUQgPD0gNSApIHsKICAgICAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICAgICAgICAgIE5hbWUgPT4gJ0FwcGVuZFVuaXQnLAogICAgICAgICAgICAgICAgICAgIERhdGEgPT4gewogICAgICAgICAgICAgICAgICAgICAgICAlUGFyYW0sCiAgICAgICAgICAgICAgICAgICAgICAgICVGcm9udGVuZCwKICAgICAgICAgICAgICAgICAgICAgICAgJXsgJEVycm9yc3skQXBwZW5kRXJyb3JJbmRleH0gfSwKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQoKICAgICAgICB9CgogICAgICAgICMgYWRkIHByb3BlciBzZXJ2ZXIgZXJyb3IgbWVzc2FnZSBmb3IgdGhlIHN0YXJ0IGFuZCBlbmQgdGltZXMKICAgICAgICBteSAkU2VydmVyRXJyb3JCbG9ja05hbWU7CiAgICAgICAgaWYgKCAkRXJyb3JzeyRFcnJvckluZGV4fSAmJiAkRXJyb3JzeyRFcnJvckluZGV4fXsgJE1vZGUgLiAnU3RhcnRUaW1lSW52YWxpZCcgfSApIHsKICAgICAgICAgICAgaWYgKCBzY2FsYXIgQHsgJEVycm9yc3skRXJyb3JJbmRleH17ICRNb2RlIC4gJ1N0YXJ0VGltZVNlcnZlckVycm9yQmxvY2snIH0gfSA+IDAgKSB7CiAgICAgICAgICAgICAgICB3aGlsZSAoIEB7ICRFcnJvcnN7JEVycm9ySW5kZXh9eyAkTW9kZSAuICdTdGFydFRpbWVTZXJ2ZXJFcnJvckJsb2NrJyB9IH0gKSB7CiAgICAgICAgICAgICAgICAgICAgJFNlcnZlckVycm9yQmxvY2tOYW1lID0gc2hpZnQgQHsgJEVycm9yc3skRXJyb3JJbmRleH17ICRNb2RlIC4gJ1N0YXJ0VGltZVNlcnZlckVycm9yQmxvY2snIH0gfTsKICAgICAgICAgICAgICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgICAgICAgICAgICAgTmFtZSA9PiAkTW9kZSAuICRTZXJ2ZXJFcnJvckJsb2NrTmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgRGF0YSA9PiB7fSwKICAgICAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgICAgICAgICAgTmFtZSA9PiAkTW9kZSAuICdTdGFydFRpbWVHZW5lcmljU2VydmVyRXJyb3InLAogICAgICAgICAgICAgICAgICAgIERhdGEgPT4ge30sCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmICggJElEIDw9IDUgKSB7CiAgICAgICAgICAgIGlmICggJEVycm9yc3skQXBwZW5kRXJyb3JJbmRleH0gJiYgJEVycm9yc3skQXBwZW5kRXJyb3JJbmRleH17ICRNb2RlIC4gJ0VuZFRpbWVJbnZhbGlkJyB9ICkgewogICAgICAgICAgICAgICAgaWYgKCBzY2FsYXIgQHsgJEVycm9yc3skQXBwZW5kRXJyb3JJbmRleH17ICRNb2RlIC4gJ0VuZFRpbWVTZXJ2ZXJFcnJvckJsb2NrJyB9IH0gPiAwICkgewogICAgICAgICAgICAgICAgICAgIHdoaWxlICggQHsgJEVycm9yc3skQXBwZW5kRXJyb3JJbmRleH17ICRNb2RlIC4gJ0VuZFRpbWVTZXJ2ZXJFcnJvckJsb2NrJyB9IH0gKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRTZXJ2ZXJFcnJvckJsb2NrTmFtZSA9IHNoaWZ0IEB7ICRFcnJvcnN7JEFwcGVuZEVycm9ySW5kZXh9eyAkTW9kZSAuICdFbmRUaW1lU2VydmVyRXJyb3JCbG9jaycgfSB9OwogICAgICAgICAgICAgICAgICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUgPT4gJE1vZGUgLiAkU2VydmVyRXJyb3JCbG9ja05hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBEYXRhID0+IHt9CiAgICAgICAgICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUgPT4gJE1vZGUgLiAnRW5kVGltZUdlbmVyaWNTZXJ2ZXJFcnJvcicsCiAgICAgICAgICAgICAgICAgICAgICAgIERhdGEgPT4ge30sCiAgICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgaWYgKCAkSUQgPD0gJFdvcmtpbmdVbml0c0NvdW50ICkgewogICAgICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgICAgIE5hbWUgPT4gJFBhcmFte1BlcmlvZEJsb2NrfSwKICAgICAgICAgICAgICAgIERhdGEgPT4gewogICAgICAgICAgICAgICAgICAgIFBlcmlvZCA9PiAkUGVyaW9kLAogICAgICAgICAgICAgICAgICAgIElEICAgICA9PiAkSUQsCiAgICAgICAgICAgICAgICAgICAgJXsgJEVycm9yc3skRXJyb3JJbmRleH0gfSwKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICk7CiAgICAgICAgfQoKICAgICAgICBpZiAoICRJRCA8PSA1ICkgewogICAgICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgICAgIE5hbWUgPT4gJFBhcmFte0FwcGVuZFBlcmlvZEJsb2NrfSwKICAgICAgICAgICAgICAgIERhdGEgPT4gewogICAgICAgICAgICAgICAgICAgIEFwcGVuZFBlcmlvZCA9PiAkQXBwZW5kUGVyaW9kLAogICAgICAgICAgICAgICAgICAgIElEICAgICAgICAgICA9PiAkSUQsCiAgICAgICAgICAgICAgICAgICAgJXsgJEVycm9yc3skQXBwZW5kRXJyb3JJbmRleH0gfSwKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICk7CiAgICAgICAgfQoKICAgICAgICAjIGFkZCBwcm9wZXIgc2VydmVyIGVycm9yIG1lc3NhZ2UgZm9yIHRoZSBwZXJpb2QKICAgICAgICBpZiAoICRFcnJvcnN7JEVycm9ySW5kZXh9ICYmICRFcnJvcnN7JEVycm9ySW5kZXh9e1BlcmlvZEludmFsaWR9ICkgewogICAgICAgICAgICBpZiAoIHNjYWxhciBAeyAkRXJyb3JzeyRFcnJvckluZGV4fXtQZXJpb2RTZXJ2ZXJFcnJvckJsb2NrfSB9ID4gMCApIHsKICAgICAgICAgICAgICAgIHdoaWxlICggQHsgJEVycm9yc3skRXJyb3JJbmRleH17UGVyaW9kU2VydmVyRXJyb3JCbG9ja30gfSApIHsKICAgICAgICAgICAgICAgICAgICAkU2VydmVyRXJyb3JCbG9ja05hbWUgPSBzaGlmdCBAeyAkRXJyb3JzeyRFcnJvckluZGV4fXtQZXJpb2RTZXJ2ZXJFcnJvckJsb2NrfSB9OwogICAgICAgICAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICAgICAgICAgICAgICBOYW1lID0+ICRTZXJ2ZXJFcnJvckJsb2NrTmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgRGF0YSA9PiB7fSwKICAgICAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgICAgICAgICAgTmFtZSA9PiAnUGVyaW9kR2VuZXJpY1NlcnZlckVycm9yJywKICAgICAgICAgICAgICAgICAgICBEYXRhID0+IHt9LAogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgICAgICBOYW1lID0+ICdQZXJpb2RHZW5lcmljU2VydmVyRXJyb3InLAogICAgICAgICAgICAgICAgRGF0YSA9PiB7fSwKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgIGlmICggJElEIDw9IDUgKSB7CiAgICAgICAgICAgIGlmICggJEVycm9yc3skQXBwZW5kRXJyb3JJbmRleH0gJiYgJEVycm9yc3skQXBwZW5kRXJyb3JJbmRleH17QXBwZW5kUGVyaW9kSW52YWxpZH0gKSB7CiAgICAgICAgICAgICAgICBpZiAoIHNjYWxhciBAeyAkRXJyb3JzeyRBcHBlbmRFcnJvckluZGV4fXtBcHBlbmRQZXJpb2RTZXJ2ZXJFcnJvckJsb2NrfSB9ID4gMCApIHsKICAgICAgICAgICAgICAgICAgICB3aGlsZSAoIEB7ICRFcnJvcnN7JEFwcGVuZEVycm9ySW5kZXh9e0FwcGVuZFBlcmlvZFNlcnZlckVycm9yQmxvY2t9IH0gKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRTZXJ2ZXJFcnJvckJsb2NrTmFtZSA9IHNoaWZ0IEB7ICRFcnJvcnN7JEFwcGVuZEVycm9ySW5kZXh9e0FwcGVuZFBlcmlvZFNlcnZlckVycm9yQmxvY2t9IH07CiAgICAgICAgICAgICAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgTmFtZSA9PiAkTW9kZSAuICRTZXJ2ZXJFcnJvckJsb2NrTmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIERhdGEgPT4ge30sCiAgICAgICAgICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUgPT4gJE1vZGUgLiAnUGVyaW9kR2VuZXJpY1NlcnZlckVycm9yJywKICAgICAgICAgICAgICAgICAgICAgICAgRGF0YSA9PiB7fSwKICAgICAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgICAgICAgICAgTmFtZSA9PiAkTW9kZSAuICdQZXJpb2RHZW5lcmljU2VydmVyRXJyb3InLAogICAgICAgICAgICAgICAgICAgIERhdGEgPT4ge30sCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICAjIHZhbGlkaXR5IGNoZWNrCiAgICAgICAgaWYgKAogICAgICAgICAgICAkUGFyYW17SW5zZXJ0V29ya2luZ1VuaXRzfQogICAgICAgICAgICAmJiAkVW5pdFJlZi0+e1Byb2plY3RJRH0KICAgICAgICAgICAgJiYgJFVuaXRSZWYtPntBY3Rpb25JRH0KICAgICAgICAgICAgJiYgJFBhcmFte1NpY2t9CiAgICAgICAgICAgICkKICAgICAgICB7CiAgICAgICAgICAgICRQYXJhbXtCbG9ja05hbWV9ID0gJExheW91dE9iamVjdC0+e0xhbmd1YWdlT2JqZWN0fQogICAgICAgICAgICAgICAgLT5UcmFuc2xhdGUoJ0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gc2ljayBsZWF2ZT8nKTsKICAgICAgICB9CiAgICAgICAgZWxzaWYgKAogICAgICAgICAgICAkUGFyYW17SW5zZXJ0V29ya2luZ1VuaXRzfQogICAgICAgICAgICAmJiAkVW5pdFJlZi0+e1Byb2plY3RJRH0KICAgICAgICAgICAgJiYgJFVuaXRSZWYtPntBY3Rpb25JRH0KICAgICAgICAgICAgJiYgJFBhcmFte0xlYXZlRGF5fQogICAgICAgICAgICApCiAgICAgICAgewogICAgICAgICAgICAkUGFyYW17QmxvY2tOYW1lfSA9ICRMYXlvdXRPYmplY3QtPntMYW5ndWFnZU9iamVjdH0KICAgICAgICAgICAgICAgIC0+VHJhbnNsYXRlKCdBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIHdoaWxlIHlvdSB3ZXJlIG9uIHZhY2F0aW9uPycpOwogICAgICAgIH0KICAgICAgICBlbHNpZiAoCiAgICAgICAgICAgICRQYXJhbXtJbnNlcnRXb3JraW5nVW5pdHN9CiAgICAgICAgICAgICYmICRVbml0UmVmLT57UHJvamVjdElEfQogICAgICAgICAgICAmJiAkVW5pdFJlZi0+e0FjdGlvbklEfQogICAgICAgICAgICAmJiAkUGFyYW17T3ZlcnRpbWV9CiAgICAgICAgICAgICkKICAgICAgICB7CiAgICAgICAgICAgICRQYXJhbXtCbG9ja05hbWV9ID0gJExheW91dE9iamVjdC0+e0xhbmd1YWdlT2JqZWN0fQogICAgICAgICAgICAgICAgLT5UcmFuc2xhdGUoJ0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gb3ZlcnRpbWUgbGVhdmU/Jyk7CiAgICAgICAgfQogICAgfQoKICAgIGlmICggJERhdGVUaW1lT2JqZWN0Q3VycmVudC0+Q29tcGFyZSggRGF0ZVRpbWVPYmplY3QgPT4gJERhdGVUaW1lT2JqZWN0R2l2ZW4gKSApIHsKICAgICAgICAkUGFyYW17VG90YWx9ICAgICAgID0gc3ByaW50ZiggIiUuMmYiLCAoICRQYXJhbXtUb3RhbH0gfHwgMCApICk7CiAgICAgICAgJFBhcmFte0FwcGVuZFRvdGFsfSA9IHNwcmludGYoICIlLjJmIiwgMCApOwogICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICBOYW1lID0+ICdUb3RhbCcsCiAgICAgICAgICAgIERhdGEgPT4geyAlUGFyYW0sICVGcm9udGVuZCB9LAogICAgICAgICk7CiAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgIE5hbWUgPT4gJ0FwcGVuZFRvdGFsJywKICAgICAgICAgICAgRGF0YSA9PiB7ICVQYXJhbSwgJUZyb250ZW5kIH0sCiAgICAgICAgKTsKICAgIH0KCiAgICAjIHZhbGlkaXR5IGNoZWNrcyBzdGFydAogICAgbXkgJEVycm9yTm90ZTsKICAgIGlmICggJFBhcmFte1RvdGFsfSAmJiAkUGFyYW17VG90YWx9ID4gMjQgKSB7CiAgICAgICAgJEVycm9yTm90ZSA9IFRyYW5zbGF0YWJsZSgnQ2FuXCd0IHNhdmUgc2V0dGluZ3MsIGJlY2F1c2UgYSBkYXkgaGFzIG9ubHkgMjQgaG91cnMhJyk7CiAgICB9CiAgICBlbHNpZiAoICRQYXJhbXtJbnNlcnRXb3JraW5nVW5pdHN9ICYmICRQYXJhbXtUb3RhbH0gJiYgJFBhcmFte1RvdGFsfSA+IDE2ICkgewogICAgICAgICRQYXJhbXtCbG9ja05hbWV9CiAgICAgICAgICAgID0gJExheW91dE9iamVjdC0+e0xhbmd1YWdlT2JqZWN0fS0+VHJhbnNsYXRlKCdBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIG1vcmUgdGhhbiAxNiBob3Vycz8nKTsKICAgIH0KICAgIGlmICgkRXJyb3JOb3RlKSB7CiAgICAgICAgaWYgKAogICAgICAgICAgICAhJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Xb3JraW5nVW5pdHNEZWxldGUoCiAgICAgICAgICAgICAgICBZZWFyICAgPT4gJFBhcmFte1llYXJ9LAogICAgICAgICAgICAgICAgTW9udGggID0+ICRQYXJhbXtNb250aH0sCiAgICAgICAgICAgICAgICBEYXkgICAgPT4gJFBhcmFte0RheX0sCiAgICAgICAgICAgICAgICBVc2VySUQgPT4gJFNlbGYtPntVc2VySUR9LAogICAgICAgICAgICApCiAgICAgICAgICAgICkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiAkTGF5b3V0T2JqZWN0LT5FcnJvclNjcmVlbigKICAgICAgICAgICAgICAgIE1lc3NhZ2UgPT4gVHJhbnNsYXRhYmxlKCdDYW5cJ3QgZGVsZXRlIFdvcmtpbmcgVW5pdHMhJyksCiAgICAgICAgICAgICk7CiAgICAgICAgfQogICAgfQoKICAgIGlmICggJFBhcmFte0Jsb2NrTmFtZX0gJiYgJFBhcmFte1N1Y2Nlc3NmdWxJbnNlcnR9ICkgewogICAgICAgICRMYXlvdXRPYmplY3QtPkFkZEpTRGF0YSgKICAgICAgICAgICAgS2V5ICAgPT4gJ0Jsb2NrTmFtZScsCiAgICAgICAgICAgIFZhbHVlID0+ICRQYXJhbXtCbG9ja05hbWV9LAogICAgICAgICk7CiAgICB9CgogICAgJFBhcmFte0RhdGV9ID0gJExheW91dE9iamVjdC0+QnVpbGREYXRlU2VsZWN0aW9uKAogICAgICAgICVQYXJhbSwKICAgICAgICBWYWxpZGF0ZSA9PiAxLAogICAgICAgIFByZWZpeCAgID0+ICcnLAogICAgICAgIEZvcm1hdCAgID0+ICdEYXRlSW5wdXRGb3JtYXQnLAogICAgKTsKCiAgICBpZiAoICREYXRlVGltZU9iamVjdEdpdmVuLT5Db21wYXJlKCBEYXRlVGltZU9iamVjdCA9PiAkRGF0ZVRpbWVPYmplY3RBbGxvd2VkICkgPCAwICkgewogICAgICAgIGlmICgKICAgICAgICAgICAgJEluY29tcGxldGVXb3JraW5nRGF5c3tJbmNvbXBsZXRlfXsgJFBhcmFte1llYXJ9IH17ICRQYXJhbXtNb250aH0gfXsgJFBhcmFte0RheX0gfQogICAgICAgICAgICAmJiAhJFBhcmFte1N1Y2Nlc3NmdWxJbnNlcnR9CiAgICAgICAgICAgICkKICAgICAgICB7CiAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICAgICAgTmFtZSA9PiAnUmVhZG9ubHknLAogICAgICAgICAgICAgICAgRGF0YSA9PiB7CiAgICAgICAgICAgICAgICAgICAgRGVzY3JpcHRpb24gPT4KICAgICAgICAgICAgICAgICAgICAgICAgVHJhbnNsYXRhYmxlKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1RoaXMgRGF0ZSBpcyBvdXQgb2YgbGltaXQsIGJ1dCB5b3UgaGF2ZW5cJ3QgaW5zZXJ0IHRoaXMgZGF5IHlldCwgc28geW91IGdldCBvbmUoISkgY2hhbmNlIHRvIGluc2VydCcKICAgICAgICAgICAgICAgICAgICAgICAgKSwKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICk7CiAgICAgICAgfQogICAgfQoKICAgICMgZ2V0IGluY29tcGxldGUgd29ya2luZyBkYXlzCiAgICBteSAlSW5jb21wbGV0ZVdvcmtpbmdEYXlzTGlzdDsKICAgICVJbmNvbXBsZXRlV29ya2luZ0RheXMgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPldvcmtpbmdVbml0c0NvbXBsZXRuZXNzQ2hlY2soCiAgICAgICAgVXNlcklEID0+ICRTZWxmLT57VXNlcklEfSwKICAgICk7CgogICAgZm9yIG15ICRZZWFySUQgKCBzb3J0IGtleXMgJXsgJEluY29tcGxldGVXb3JraW5nRGF5c3tJbmNvbXBsZXRlfSB9ICkgewogICAgICAgIGZvciBteSAkTW9udGhJRCAoIHNvcnQga2V5cyAleyAkSW5jb21wbGV0ZVdvcmtpbmdEYXlze0luY29tcGxldGV9eyRZZWFySUR9IH0gKSB7CiAgICAgICAgICAgIGZvciBteSAkRGF5SUQgKAogICAgICAgICAgICAgICAgc29ydCBrZXlzICV7ICRJbmNvbXBsZXRlV29ya2luZ0RheXN7SW5jb21wbGV0ZX17JFllYXJJRH17JE1vbnRoSUR9IH0KICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgJEluY29tcGxldGVXb3JraW5nRGF5c0xpc3R7IiRZZWFySUQtJE1vbnRoSUQtJERheUlEIn0gPSAiJFllYXJJRC0kTW9udGhJRC0kRGF5SUQiOwogICAgICAgICAgICAgICAgJFBhcmFte0luY29tcGxldGV9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPSAxOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgICMgU2hvdyB0ZXh0LCBpZiBpbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyBhcmUgYXZhaWxhYmxlCiAgICBpZiAoICRQYXJhbXtJbmNvbXBsZXRlfSApIHsKCiAgICAgICAgIyBpZiBtYXNzIGVudHJ5IG9wdGlvbiBpcyBlbmFibGVkLCBzaG93IGxpc3Qgb2Ygd29ya2luZyBkYXlzCiAgICAgICAgaWYgKCAkQ29uZmlnT2JqZWN0LT5HZXQoIlRpbWVBY2NvdW50aW5nOjpBbGxvd01hc3NFbnRyeUZvclVzZXIiKSApIHsKCiAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICAgICAgTmFtZSA9PiAnSW5jb21wbGV0ZVdvcmtpbmdEYXlzTWFzc0VudHJ5JywKICAgICAgICAgICAgKTsKCiAgICAgICAgICAgIGZvciBteSAkV29ya2luZ0RheXMgKCBzb3J0IGtleXMgJUluY29tcGxldGVXb3JraW5nRGF5c0xpc3QgKSB7CgogICAgICAgICAgICAgICAgbXkgKCAkWWVhciwgJE1vbnRoLCAkRGF5ICkgPSBzcGxpdCggLy0vLCAkSW5jb21wbGV0ZVdvcmtpbmdEYXlzTGlzdHskV29ya2luZ0RheXN9ICk7CiAgICAgICAgICAgICAgICBteSAkRGF0ZVRpbWVPYmplY3RXb3JraW5nRGF5ID0gJEtlcm5lbDo6T00tPkNyZWF0ZSgKICAgICAgICAgICAgICAgICAgICAnS2VybmVsOjpTeXN0ZW06OkRhdGVUaW1lJywKICAgICAgICAgICAgICAgICAgICBPYmplY3RQYXJhbXMgPT4gewogICAgICAgICAgICAgICAgICAgICAgICBZZWFyICA9PiAkWWVhciwKICAgICAgICAgICAgICAgICAgICAgICAgTW9udGggPT4gJE1vbnRoLAogICAgICAgICAgICAgICAgICAgICAgICBEYXkgICA9PiAkRGF5LAogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICk7CgogICAgICAgICAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgICAgICAgICAgTmFtZSA9PiAnSW5jb21wbGV0ZVdvcmtpbmdEYXlzTWFzc0VudHJ5U2luZ2xlRGF5JywKICAgICAgICAgICAgICAgICAgICBEYXRhID0+IHsKICAgICAgICAgICAgICAgICAgICAgICAgRGF0ZSAgICA9PiAkSW5jb21wbGV0ZVdvcmtpbmdEYXlzTGlzdHskV29ya2luZ0RheXN9LAogICAgICAgICAgICAgICAgICAgICAgICBEYXRlSFIgID0+ICREYXRlVGltZU9iamVjdFdvcmtpbmdEYXktPlRvU3RyaW5nKCksCiAgICAgICAgICAgICAgICAgICAgICAgIFdlZWtkYXkgPT4gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5EYXlPZldlZWtUb05hbWUoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBOdW1iZXIgPT4gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5EYXlPZldlZWsoICRZZWFyLCAkTW9udGgsICREYXkgKQogICAgICAgICAgICAgICAgICAgICAgICApLAogICAgICAgICAgICAgICAgICAgICAgICBZZWFyICA9PiAkWWVhciwKICAgICAgICAgICAgICAgICAgICAgICAgTW9udGggPT4gJE1vbnRoLAogICAgICAgICAgICAgICAgICAgICAgICBEYXkgICA9PiAkRGF5LAogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICAjIG90aGVyd2lzZSBzaG93IGluY29tcGxldGUgd29ya2luZyBkYXlzIGFzIGEgZHJvcC1kb3duCiAgICAgICAgZWxzZSB7CgogICAgICAgICAgICAjIGNoZWNrIGlmIGN1cnJlbnQgZGF5IGlzIGluY29tcGxldGUKICAgICAgICAgICAgIyBpZiB5ZXMsIHNlbGVjdCB0aGUgY3VycmVudCBkYXkgaW4gdGhlIGRyb3AtZG93bgogICAgICAgICAgICAjIG90aGVyd2lzZSBzZWxlY3QgdGhlIGVtcHR5IGVsZW1lbnQKICAgICAgICAgICAgbXkgJFNlbGVjdGVkSUQ7CgogICAgICAgICAgICBpZiAoICRJbmNvbXBsZXRlV29ya2luZ0RheXNMaXN0eyIkUGFyYW17WWVhcn0tJFBhcmFte01vbnRofS0kUGFyYW17RGF5fSJ9ICkgewogICAgICAgICAgICAgICAgJFNlbGVjdGVkSUQgPSAiJFBhcmFte1llYXJ9LSRQYXJhbXtNb250aH0tJFBhcmFte0RheX0iOwogICAgICAgICAgICB9CgogICAgICAgICAgICBteSAkSW5jb21wbGVXb3JraW5nRGF5c1NlbGVjdCA9ICRMYXlvdXRPYmplY3QtPkJ1aWxkU2VsZWN0aW9uKAogICAgICAgICAgICAgICAgRGF0YSAgICAgICAgID0+IFwlSW5jb21wbGV0ZVdvcmtpbmdEYXlzTGlzdCwKICAgICAgICAgICAgICAgIFNlbGVjdGVkSUQgICA9PiAkU2VsZWN0ZWRJRCwKICAgICAgICAgICAgICAgIE5hbWUgICAgICAgICA9PiAiSW5jb21wbGV0ZVdvcmtpbmdEYXlzTGlzdCIsCiAgICAgICAgICAgICAgICBQb3NzaWJsZU5vbmUgPT4gMSwKICAgICAgICAgICAgICAgIFRpdGxlICAgICAgICA9PgogICAgICAgICAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPntMYW5ndWFnZU9iamVjdH0tPlRyYW5zbGF0ZSgiSW5jb21wbGV0ZSBXb3JraW5nIERheXMiKSwKICAgICAgICAgICAgICAgIENsYXNzID0+ICdNb2Rlcm5pemUnLAogICAgICAgICAgICApOwoKICAgICAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgICAgICBOYW1lID0+ICdJbmNvbXBsZXRlV29ya2luZ0RheXMnLAogICAgICAgICAgICAgICAgRGF0YSA9PiB7CiAgICAgICAgICAgICAgICAgICAgSW5jb21wbGV0ZVdvcmtpbmdEYXlzU2VsZWN0ID0+ICRJbmNvbXBsZVdvcmtpbmdEYXlzU2VsZWN0LAogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgKTsKICAgICAgICB9CiAgICB9CgogICAgbXkgJVVzZXJEYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyR2V0KAogICAgICAgIFVzZXJJRCA9PiAkU2VsZi0+e1VzZXJJRH0sCiAgICApOwoKICAgIG15ICRWYWNhdGlvbkNoZWNrID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5WYWNhdGlvbkNoZWNrKAogICAgICAgIFllYXIgICAgID0+ICRQYXJhbXtZZWFyfSwKICAgICAgICBNb250aCAgICA9PiAkUGFyYW17TW9udGh9LAogICAgICAgIERheSAgICAgID0+ICRQYXJhbXtEYXl9LAogICAgICAgIENhbGVuZGFyID0+ICRVc2VyRGF0YXtDYWxlbmRhcn0sCiAgICApOwoKICAgICRQYXJhbXtXZWVrZGF5fQogICAgICAgID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlRpbWVBY2NvdW50aW5nJyktPkRheU9mV2VlayggJFBhcmFte1llYXJ9LCAkUGFyYW17TW9udGh9LCAkUGFyYW17RGF5fSApOwoKICAgICMgZ2V0IHdvcmtpbmcgZGF5cyBvZiB0aGUgdXNlcidzIGNhbGVuZGFyCiAgICBteSAkQ2FsZW5kYXJOYW1lID0gJ1RpbWVXb3JraW5nSG91cnMnOwogICAgJENhbGVuZGFyTmFtZSAuPSAkVXNlckRhdGF7Q2FsZW5kYXJ9ID8gIjo6Q2FsZW5kYXIkVXNlckRhdGF7Q2FsZW5kYXJ9IiA6ICcnOwogICAgbXkgJENhbGVuZGFyV29ya2luZ0hvdXJzID0gJENvbmZpZ09iamVjdC0+R2V0KCRDYWxlbmRhck5hbWUpOwoKICAgICMgc2hvdyAib3RoZXIgdGltZXMiIGJsb2NrLCBpZiBuZWNlc3NhcnkKICAgIGlmICgKICAgICAgICBJc0FycmF5UmVmV2l0aERhdGEoICRDYWxlbmRhcldvcmtpbmdIb3Vycy0+eyAkV2Vla2RheUFycmF5WyAkUGFyYW17V2Vla2RheX0gLSAxIF0gfSApCiAgICAgICAgJiYgISRWYWNhdGlvbkNoZWNrCiAgICAgICAgKQogICAgewogICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICBOYW1lID0+ICdBcHBlbmRPdGhlclRpbWVzJywKICAgICAgICAgICAgRGF0YSA9PiB7CiAgICAgICAgICAgICAgICAlUGFyYW0sCiAgICAgICAgICAgICAgICAlRnJvbnRlbmQsCiAgICAgICAgICAgICAgICAlRXJyb3JzLAogICAgICAgICAgICB9LAogICAgICAgICk7CiAgICB9CgogICAgJFBhcmFte1dlZWtkYXlfdG9fVGV4dH0gPSAkV2Vla2RheUFycmF5WyAkUGFyYW17V2Vla2RheX0gLSAxIF07CgogICAgIyBpbnRlZ3JhdGUgdGhlIGhhbmRsaW5nIGZvciByZXF1aXJlZCByZW1hcmtzIGluIHJlbGF0aW9uIHRvIHByb2plY3RzCiAgICAkUGFyYW17UmVtYXJrUmVnRXhwfSA9ICRTZWxmLT5fUHJvamVjdDJSZW1hcmtSZWdFeHAoKTsKICAgICRMYXlvdXRPYmplY3QtPkFkZEpTRGF0YSgKICAgICAgICBLZXkgICA9PiAnUmVtYXJrUmVnRXhwJywKICAgICAgICBWYWx1ZSA9PiAkUGFyYW17UmVtYXJrUmVnRXhwfSwKICAgICk7CgogICAgIyBidWlsZCBvdXRwdXQKICAgIG15ICRPdXRwdXQgPSAkTGF5b3V0T2JqZWN0LT5IZWFkZXIoCiAgICAgICAgVGl0bGUgPT4gJ0VkaXQnLAogICAgKTsKCiAgICAkT3V0cHV0IC49ICRMYXlvdXRPYmplY3QtPk5hdmlnYXRpb25CYXIoKTsKICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgIE5hbWUgPT4gJ092ZXJ2aWV3UHJvamVjdCcsCiAgICAgICAgRGF0YSA9PiB7ICVQYXJhbSwgJUZyb250ZW5kIH0sCiAgICApOwoKICAgIGlmICggISRJbmNvbXBsZXRlV29ya2luZ0RheXN7RW5mb3JjZUluc2VydH0gKSB7CgogICAgICAgICMgc2hvdyBjcmVhdGUgcHJvamVjdCBsaW5rLCBpZiBhbGxvd2VkCiAgICAgICAgbXkgJVVzZXJEYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyR2V0KAogICAgICAgICAgICBVc2VySUQgPT4gJFNlbGYtPntVc2VySUR9LAogICAgICAgICk7CiAgICAgICAgaWYgKCAkVXNlckRhdGF7Q3JlYXRlUHJvamVjdH0gKSB7CiAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICAgICAgTmFtZSA9PiAnQ3JlYXRlUHJvamVjdCcsCiAgICAgICAgICAgICk7CiAgICAgICAgfQogICAgfQoKICAgIGlmICgkRXJyb3JOb3RlKSB7CiAgICAgICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5Ob3RpZnkoCiAgICAgICAgICAgIEluZm8gICAgID0+ICRFcnJvck5vdGUsCiAgICAgICAgICAgIFByaW9yaXR5ID0+ICdFcnJvcicsCiAgICAgICAgKTsKICAgIH0KICAgIGVsc2lmICggZGVmaW5lZCAkUGFyYW17U3VjY2Vzc2Z1bEluc2VydH0gKQogICAgewogICAgICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+Tm90aWZ5KAogICAgICAgICAgICBJbmZvID0+IFRyYW5zbGF0YWJsZSgnU3VjY2Vzc2Z1bCBpbnNlcnQhJyksCiAgICAgICAgKTsKICAgIH0KCiAgICAjIHNob3cgbWFzcyBlbnRyeSBub3RpZmljYXRpb24KICAgIGlmICggJFBhcmFte05vdGlmaWNhdGlvbn0gZXEgJ0Vycm9yJyApIHsKICAgICAgICAkT3V0cHV0IC49ICRMYXlvdXRPYmplY3QtPk5vdGlmeSgKICAgICAgICAgICAgSW5mbyAgICAgPT4gVHJhbnNsYXRhYmxlKCdFcnJvciB3aGlsZSBpbnNlcnRpbmcgbXVsdGlwbGUgZGF0ZXMhJyksCiAgICAgICAgICAgIFByaW9yaXR5ID0+ICdFcnJvcicsCiAgICAgICAgKTsKICAgIH0KICAgIGVsc2lmICggJFBhcmFte05vdGlmaWNhdGlvbn0gZXEgJ1N1Y2Nlc3NmdWwnICkgewogICAgICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+Tm90aWZ5KAogICAgICAgICAgICBJbmZvID0+IFRyYW5zbGF0YWJsZSgnU3VjY2Vzc2Z1bGx5IGluc2VydGVkIGVudHJpZXMgZm9yIHNldmVyYWwgZGF0ZXMhJyksCiAgICAgICAgKTsKICAgIH0KCiAgICAjIHNob3cgbm90aWZpY2F0aW9uIGlmIHdyb25nIGRhdGUgd2FzIHNlbGVjdGVkCiAgICBpZiAoICRQYXJhbXtXcm9uZ0RhdGV9ICkgewogICAgICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+Tm90aWZ5KAogICAgICAgICAgICBJbmZvICAgICA9PiBUcmFuc2xhdGFibGUoJ0VudGVyZWQgZGF0ZSB3YXMgaW52YWxpZCEgRGF0ZSB3YXMgY2hhbmdlZCB0byB0b2RheS4nKSwKICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ0Vycm9yJywKICAgICAgICApOwogICAgfQoKICAgICRMYXlvdXRPYmplY3QtPkFkZEpTRGF0YSgKICAgICAgICBLZXkgICA9PiAnWWVhcicsCiAgICAgICAgVmFsdWUgPT4gJFBhcmFte1llYXJ9LAogICAgKTsKICAgICRMYXlvdXRPYmplY3QtPkFkZEpTRGF0YSgKICAgICAgICBLZXkgICA9PiAnTW9udGgnLAogICAgICAgIFZhbHVlID0+ICRQYXJhbXtNb250aH0sCiAgICApOwogICAgJExheW91dE9iamVjdC0+QWRkSlNEYXRhKAogICAgICAgIEtleSAgID0+ICdEYXknLAogICAgICAgIFZhbHVlID0+ICRQYXJhbXtEYXl9LAogICAgKTsKCiAgICAkT3V0cHV0IC49ICRMYXlvdXRPYmplY3QtPk91dHB1dCgKICAgICAgICBUZW1wbGF0ZUZpbGUgPT4gJ0FnZW50VGltZUFjY291bnRpbmdFZGl0JywKICAgICAgICBEYXRhICAgICAgICAgPT4gewogICAgICAgICAgICAlUGFyYW0sCiAgICAgICAgICAgICVGcm9udGVuZCwKICAgICAgICB9LAogICAgKTsKICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+Rm9vdGVyKCk7CiAgICByZXR1cm4gJE91dHB1dDsKCn0KCnN1YiBfRmlyc3RVc2VyUmVkaXJlY3QgewogICAgbXkgJFNlbGYgPSBzaGlmdDsKCiAgICAjIEZvciBpbml0aWFsIHVzYWdlLCB0aGUgZmlyc3QgYWdlbnQgd2l0aCAncncnIHJpZ2h0cyB3aWxsIGJlIHJlZGlyZWN0ZWQgdG8gJ1NldHRpbmcnLiBUaGVuIHRoZXkgY2FuIGNvbmZpZ3VyZQogICAgIyAgIGluaXRpYWwgc2V0dGluZ3MgZm9yIHRoZSB0aW1lIGFjY291bnRpbmcgZmVhdHVyZS4KCiAgICAjIERlZmluZSBhY3Rpb24gYW5kIGdldCBpdHMgZnJvbnRlbmQgbW9kdWxlIHJlZ2lzdHJhdGlvbi4KICAgIG15ICRBY3Rpb24gPSAnQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcnOwogICAgbXkgJENvbmZpZyA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6Q29uZmlnJyktPkdldCgnRnJvbnRlbmQ6Ok1vZHVsZScpLT57JEFjdGlvbn07CgogICAgIyBHZXQgZ3JvdXAgbmFtZXMgZnJvbSBjb25maWcuCiAgICBteSBAR3JvdXBOYW1lcyA9IEB7ICRDb25maWctPntHcm91cH0gfHwgW10gfTsKCiAgICBteSAkUGVybWlzc2lvbiA9IDA7CgogICAgIyBJZiBhY2Nlc3MgaXMgcmVzdHJpY3RlZCwgYWxsb3cgYWNjZXNzIG9ubHkgaWYgdXNlciBoYXMgYXBwcm9wcmlhdGUgcGVybWlzc2lvbnMgaW4gY29uZmlndXJlZCBncm91cChzKS4KICAgIGlmIChAR3JvdXBOYW1lcykgewoKICAgICAgICBteSAkR3JvdXBPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6R3JvdXAnKTsKCiAgICAgICAgIyBHZXQgdXNlciBncm91cHMsIHdoZXJlIHRoZSB1c2VyIGhhcyB0aGUgYXBwcm9wcmlhdGUgcGVybWlzc2lvbnMuCiAgICAgICAgbXkgJUdyb3VwcyA9ICRHcm91cE9iamVjdC0+R3JvdXBNZW1iZXJMaXN0KAogICAgICAgICAgICBVc2VySUQgPT4gJFNlbGYtPntVc2VySUR9LAogICAgICAgICAgICBUeXBlICAgPT4gJ3J3JywKICAgICAgICAgICAgUmVzdWx0ID0+ICdIQVNIJywKICAgICAgICApOwoKICAgICAgICBHUk9VUDoKICAgICAgICBmb3IgbXkgJEdyb3VwTmFtZSAoQEdyb3VwTmFtZXMpIHsKICAgICAgICAgICAgbmV4dCBHUk9VUCBpZiAhJEdyb3VwTmFtZTsKCiAgICAgICAgICAgICMgR2V0IHRoZSBncm91cCBJRC4KICAgICAgICAgICAgbXkgJEdyb3VwSUQgPSAkR3JvdXBPYmplY3QtPkdyb3VwTG9va3VwKAogICAgICAgICAgICAgICAgR3JvdXAgPT4gJEdyb3VwTmFtZSwKICAgICAgICAgICAgKTsKICAgICAgICAgICAgbmV4dCBHUk9VUCBpZiAhJEdyb3VwSUQ7CgogICAgICAgICAgICAjIFN0b3AgY2hlY2tpbmcgaWYgbWVtYmVyc2hpcCBpbiBhdCBsZWFzdCBvbmUgZ3JvdXAgaXMgZm91bmQuCiAgICAgICAgICAgIGlmICggJEdyb3Vwc3skR3JvdXBJRH0gKSB7CiAgICAgICAgICAgICAgICAkUGVybWlzc2lvbiA9IDE7CiAgICAgICAgICAgICAgICBsYXN0IEdST1VQOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgICMgT3RoZXJ3aXNlLCBhbHdheXMgYWxsb3cgYWNjZXNzLgogICAgZWxzZSB7CiAgICAgICAgJFBlcm1pc3Npb24gPSAxOwogICAgfQoKICAgIG15ICRMYXlvdXRPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6Ok91dHB1dDo6SFRNTDo6TGF5b3V0Jyk7CgogICAgcmV0dXJuICRMYXlvdXRPYmplY3QtPlJlZGlyZWN0KCBPUCA9PiAiQWN0aW9uPSRBY3Rpb24iICkgaWYgJFBlcm1pc3Npb247CgogICAgcmV0dXJuICRMYXlvdXRPYmplY3QtPkVycm9yU2NyZWVuKAogICAgICAgIE1lc3NhZ2UgPT4KICAgICAgICAgICAgVHJhbnNsYXRhYmxlKCdObyB0aW1lIHBlcmlvZCBjb25maWd1cmVkLCBvciB0aGUgc3BlY2lmaWVkIGRhdGUgaXMgb3V0c2lkZSBvZiB0aGUgZGVmaW5lZCB0aW1lIHBlcmlvZHMuJyksCiAgICAgICAgQ29tbWVudCA9PiBUcmFuc2xhdGFibGUoJ1BsZWFzZSBjb250YWN0IHRoZSB0aW1lIGFjY291bnRpbmcgYWRtaW5pc3RyYXRvciB0byB1cGRhdGUgeW91ciB0aW1lIHBlcmlvZHMhJyksCiAgICApOwp9CgpzdWIgX0FjdGlvbkxpc3QgewogICAgbXkgJFNlbGYgPSBzaGlmdDsKCiAgICBteSAlQWN0aW9uTGlzdDsKICAgIG15ICVBY3Rpb24gPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VGltZUFjY291bnRpbmcnKS0+QWN0aW9uU2V0dGluZ3NHZXQoKTsKCiAgICAjIGdldCBhY3Rpb24gc2V0dGluZ3MKICAgIEFDVElPTklEOgogICAgZm9yIG15ICRBY3Rpb25JRCAoIHNvcnQga2V5cyAlQWN0aW9uICkgewogICAgICAgIG5leHQgQUNUSU9OSUQgaWYgISRBY3Rpb257JEFjdGlvbklEfXtBY3Rpb25TdGF0dXN9OwogICAgICAgIG5leHQgQUNUSU9OSUQgaWYgISRBY3Rpb257JEFjdGlvbklEfXtBY3Rpb259OwogICAgICAgICRBY3Rpb25MaXN0eyRBY3Rpb25JRH0gPSAkQWN0aW9ueyRBY3Rpb25JRH17QWN0aW9ufTsKICAgIH0KICAgICRBY3Rpb25MaXN0eycnfSA9ICcnOwoKICAgIHJldHVybiAlQWN0aW9uTGlzdDsKfQoKc3ViIF9BY3Rpb25MaXN0Q29uc3RyYWludHMgewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICBteSAlTGlzdDsKICAgIGlmICggJFBhcmFte1Byb2plY3RJRH0gJiYga2V5cyAleyAkUGFyYW17QWN0aW9uTGlzdENvbnN0cmFpbnRzfSB9ICkgewogICAgICAgIG15ICRQcm9qZWN0TmFtZTsKCiAgICAgICAgUFJPSkVDVDoKICAgICAgICBmb3IgbXkgJFByb2plY3QgKCBAeyAkUGFyYW17UHJvamVjdExpc3R9LT57QWxsUHJvamVjdHN9IH0gKSB7CiAgICAgICAgICAgIGlmICggJFByb2plY3QtPntLZXl9IGVxICRQYXJhbXtQcm9qZWN0SUR9ICkgewogICAgICAgICAgICAgICAgJFByb2plY3ROYW1lID0gJFByb2plY3QtPntWYWx1ZX07CiAgICAgICAgICAgICAgICBsYXN0IFBST0pFQ1Q7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGlmICggZGVmaW5lZCgkUHJvamVjdE5hbWUpICkgewoKICAgICAgICAgICAgIyBsb29wIG92ZXIgYWN0aW9ucyB0byBmaW5kIG1hdGNoZXMgZm9yIGNvbmZpZ3VyZWQgcHJvamVjdAogICAgICAgICAgICAjIGFuZCBhY3Rpb24gcmVnLWV4cCBwYWlycwogICAgICAgICAgICBmb3IgbXkgJEFjdGlvbklEICggc29ydCBrZXlzICV7ICRQYXJhbXtBY3Rpb25MaXN0fSB9ICkgewoKICAgICAgICAgICAgICAgIG15ICRBY3Rpb25OYW1lID0gJFBhcmFte0FjdGlvbkxpc3R9LT57JEFjdGlvbklEfTsKCiAgICAgICAgICAgICAgICBQUk9KRUNUTkFNRVJFR0VYUDoKICAgICAgICAgICAgICAgIGZvciBteSAkUHJvamVjdE5hbWVSZWdFeHAgKCBzb3J0IGtleXMgJXsgJFBhcmFte0FjdGlvbkxpc3RDb25zdHJhaW50c30gfSApIHsKICAgICAgICAgICAgICAgICAgICBteSAkQWN0aW9uTmFtZVJlZ0V4cCA9ICRQYXJhbXtBY3Rpb25MaXN0Q29uc3RyYWludHN9LT57JFByb2plY3ROYW1lUmVnRXhwfTsKICAgICAgICAgICAgICAgICAgICBpZiAoCiAgICAgICAgICAgICAgICAgICAgICAgICRQcm9qZWN0TmFtZSAgID1+IG17JFByb2plY3ROYW1lUmVnRXhwfXNteAogICAgICAgICAgICAgICAgICAgICAgICAmJiAkQWN0aW9uTmFtZSA9fiBteyRBY3Rpb25OYW1lUmVnRXhwfXNteAogICAgICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAkTGlzdHskQWN0aW9uSUR9ID0gJEFjdGlvbk5hbWU7CiAgICAgICAgICAgICAgICAgICAgICAgIGxhc3QgUFJPSkVDVE5BTUVSRUdFWFA7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgICMgYWxsIGF2YWlsYWJsZSBhY3Rpb25zIHdpbGwgYmUgYWRkZWQgaWYgbm8gYWN0aW9uIHdhcyBhZGRlZCBhYm92ZSAocG9zc2libGUgbWlzY29uZmlndXJhdGlvbikKICAgIGlmICggIWtleXMgJUxpc3QgKSB7CiAgICAgICAgZm9yIG15ICRBY3Rpb25JRCAoIHNvcnQga2V5cyAleyAkUGFyYW17QWN0aW9uTGlzdH0gfSApIHsKICAgICAgICAgICAgbXkgJEFjdGlvbk5hbWUgPSAkUGFyYW17QWN0aW9uTGlzdH0tPnskQWN0aW9uSUR9OwogICAgICAgICAgICAkTGlzdHskQWN0aW9uSUR9ID0gJEFjdGlvbk5hbWU7CiAgICAgICAgfQogICAgfQoKICAgIHJldHVybiBcJUxpc3Q7Cn0KCnN1YiBfUHJvamVjdExpc3QgewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICAjIGdldCB0aW1lIGFjY291bnRpbmcgb2JqZWN0CiAgICBteSAkVGltZUFjY291bnRpbmdPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VGltZUFjY291bnRpbmcnKTsKCiAgICAjIGdldCBwcm9qZWN0IHNldHRpbmdzCiAgICBteSAlUHJvamVjdCA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+UHJvamVjdFNldHRpbmdzR2V0KAogICAgICAgIFN0YXR1cyA9PiAndmFsaWQnLAogICAgKTsKCiAgICBpZiAoICEkU2VsZi0+e0xhc3RQcm9qZWN0c1JlZn0gKSB7CgogICAgICAgICMgZ2V0IHRoZSBsYXN0IHByb2plY3RzCiAgICAgICAgbXkgQExhc3RQcm9qZWN0cyA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+TGFzdFByb2plY3RzT2ZVc2VyKAogICAgICAgICAgICBVc2VySUQgPT4gJFNlbGYtPntVc2VySUR9LAogICAgICAgICk7CgogICAgICAgICMgYWRkIHRoZSBmYXZvcml0ZXMKICAgICAgICAleyAkU2VsZi0+e0xhc3RQcm9qZWN0c1JlZn0gfSA9IG1hcCB7ICRfID0+IDEgfSBATGFzdFByb2plY3RzOwogICAgfQoKICAgIG15IEBMYXN0UHJvamVjdHMgPSAoCiAgICAgICAgewogICAgICAgICAgICBLZXkgICA9PiAnJywKICAgICAgICAgICAgVmFsdWUgPT4gJy0nLAogICAgICAgIH0sCiAgICApOwoKICAgICMgYWRkIHRoZSBzZXBhcmF0b3IKICAgIFBST0pFQ1RJRDoKICAgIGZvciBteSAkUHJvamVjdElEICgKICAgICAgICBzb3J0IHsgJFByb2plY3R7UHJvamVjdH17JGF9IGNtcCAkUHJvamVjdHtQcm9qZWN0fXskYn0gfQogICAgICAgIGtleXMgJXsgJFByb2plY3R7UHJvamVjdH0gfQogICAgICAgICkKICAgIHsKICAgICAgICBuZXh0IFBST0pFQ1RJRCBpZiAhJFNlbGYtPntMYXN0UHJvamVjdHNSZWZ9LT57JFByb2plY3RJRH07CiAgICAgICAgbXkgJUhhc2ggPSAoCiAgICAgICAgICAgIEtleSAgID0+ICRQcm9qZWN0SUQsCiAgICAgICAgICAgIFZhbHVlID0+ICRQcm9qZWN0e1Byb2plY3R9eyRQcm9qZWN0SUR9LAogICAgICAgICk7CiAgICAgICAgcHVzaCBATGFzdFByb2plY3RzLCBcJUhhc2g7CiAgICB9CgogICAgQExhc3RQcm9qZWN0cyA9ICRTZWxmLT5fUHJvamVjdExpc3RDb25zdHJhaW50cygKICAgICAgICBMaXN0ICAgICAgID0+IFxATGFzdFByb2plY3RzLAogICAgICAgIFNlbGVjdGVkSUQgPT4gJFBhcmFte1NlbGVjdGVkSUR9IHx8ICcnLAogICAgKTsKCiAgICBteSBAQWxsUHJvamVjdHM7CiAgICBteSAkQ29uZmlnT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpDb25maWcnKTsKCiAgICAjIGNoZWNrIGlmIEF1dG9Db21wbGV0aW9uIGlzIGRpc2FibGVkCiAgICAjIGluIHRoaXMgY2FzZSBhIHNlcGFyYXRvciBpcyBuZWVkZWQgYmV0d2VlbiB0d28gbGlzdHMgb2YgcHJvamVjdHMgKGxhc3QgYW5kIGFsbCkKICAgIGlmICgKICAgICAgICAhJENvbmZpZ09iamVjdC0+R2V0KCJUaW1lQWNjb3VudGluZzo6RW5hYmxlQXV0b0NvbXBsZXRpb24iKQogICAgICAgIHx8ICEkQ29uZmlnT2JqZWN0LT5HZXQoIlRpbWVBY2NvdW50aW5nOjpVc2VGaWx0ZXIiKQogICAgICAgICkKICAgIHsKICAgICAgICBpZiAoIHNjYWxhciBATGFzdFByb2plY3RzID4gMSApIHsKCiAgICAgICAgICAgIG15ICRMYXlvdXRPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6Ok91dHB1dDo6SFRNTDo6TGF5b3V0Jyk7CgogICAgICAgICAgICAjIGFkZCBsYXN0IHByb2plY3RzIHNlcGFyYXRvciB0byB0aGUgYmVnaW5uaW5nIG9mIHRoZSBsaXN0CiAgICAgICAgICAgIG15ICRMYXN0UHJvamVjdHNTdHIgPSAkTGF5b3V0T2JqZWN0LT57TGFuZ3VhZ2VPYmplY3R9LT5UcmFuc2xhdGUoJ0xhc3QgU2VsZWN0ZWQgUHJvamVjdHMnKTsKCiAgICAgICAgICAgIHVuc2hpZnQgQExhc3RQcm9qZWN0cywgewogICAgICAgICAgICAgICAgS2V5ICAgICAgPT4gJzAnLAogICAgICAgICAgICAgICAgVmFsdWUgICAgPT4gIi0tLSRMYXN0UHJvamVjdHNTdHItLS0iLAogICAgICAgICAgICAgICAgRGlzYWJsZWQgPT4gMSwKICAgICAgICAgICAgfTsKCiAgICAgICAgICAgICMgYWRkIGFsbCBwcm9qZWN0cyBzZXBhcmF0b3IgcmlnaHQgYWZ0ZXIgdGhlIGxhc3Qgc2VsZWN0ZWQgcHJvamVjdHMgbGlzdAogICAgICAgICAgICBteSAkQWxsUHJvamVjdHNTdHIgPSAkTGF5b3V0T2JqZWN0LT57TGFuZ3VhZ2VPYmplY3R9LT5UcmFuc2xhdGUoJ0FsbCBQcm9qZWN0cycpOwoKICAgICAgICAgICAgcHVzaCBATGFzdFByb2plY3RzLCB7CiAgICAgICAgICAgICAgICBLZXkgICAgICA9PiAnMCcsCiAgICAgICAgICAgICAgICBWYWx1ZSAgICA9PiAiLS0tJEFsbFByb2plY3RzU3RyLS0tIiwKICAgICAgICAgICAgICAgIERpc2FibGVkID0+IDEsCiAgICAgICAgICAgIH07CiAgICAgICAgfQogICAgfQogICAgZWxzZSB7CiAgICAgICAgQEFsbFByb2plY3RzID0gKAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBLZXkgICA9PiAnJywKICAgICAgICAgICAgICAgIFZhbHVlID0+ICctJywKICAgICAgICAgICAgfSwKICAgICAgICApOwogICAgfQoKICAgICMgYWRkIGFsbCBhbGxvd2VkIHByb2plY3RzIHRvIHRoZSBsaXN0CiAgICBQUk9KRUNUSUQ6CiAgICBmb3IgbXkgJFByb2plY3RJRCAoCiAgICAgICAgc29ydCB7ICRQcm9qZWN0e1Byb2plY3R9eyRhfSBjbXAgJFByb2plY3R7UHJvamVjdH17JGJ9IH0KICAgICAgICBrZXlzICV7ICRQcm9qZWN0e1Byb2plY3R9IH0KICAgICAgICApCiAgICB7CiAgICAgICAgbmV4dCBQUk9KRUNUSUQgaWYgISRQcm9qZWN0e1Byb2plY3R9eyRQcm9qZWN0SUR9OwogICAgICAgIG15ICVIYXNoID0gKAogICAgICAgICAgICBLZXkgICA9PiAkUHJvamVjdElELAogICAgICAgICAgICBWYWx1ZSA9PiAkUHJvamVjdHtQcm9qZWN0fXskUHJvamVjdElEfSwKICAgICAgICApOwogICAgICAgIGlmICggJFBhcmFte1NlbGVjdGVkSUR9ICYmICRQYXJhbXtTZWxlY3RlZElEfSBlcSAkUHJvamVjdElEICkgewogICAgICAgICAgICAkSGFzaHtTZWxlY3RlZH0gPSAxOwogICAgICAgIH0KCiAgICAgICAgcHVzaCBAQWxsUHJvamVjdHMsIFwlSGFzaDsKICAgIH0KCiAgICBAQWxsUHJvamVjdHMgPSAkU2VsZi0+X1Byb2plY3RMaXN0Q29uc3RyYWludHMoCiAgICAgICAgTGlzdCAgICAgICA9PiBcQEFsbFByb2plY3RzLAogICAgICAgIFNlbGVjdGVkSUQgPT4gJFBhcmFte1NlbGVjdGVkSUR9IHx8ICcnLAogICAgKTsKCiAgICBteSAlUHJvamVjdHMgPSAoCiAgICAgICAgTGFzdFByb2plY3RzID0+IFxATGFzdFByb2plY3RzLAogICAgICAgIEFsbFByb2plY3RzICA9PiBcQEFsbFByb2plY3RzLAogICAgKTsKCiAgICByZXR1cm4gXCVQcm9qZWN0czsKfQoKc3ViIF9Qcm9qZWN0TGlzdENvbnN0cmFpbnRzIHsKICAgIG15ICggJFNlbGYsICVQYXJhbSApID0gQF87CgogICAgbXkgQExpc3Q7CiAgICBteSAkUHJvamVjdENvdW50ICAgICAgICAgICA9IDA7CiAgICBteSAkUHJvamVjdExpc3RDb25zdHJhaW50cyA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6Q29uZmlnJyktPkdldCgnVGltZUFjY291bnRpbmc6OlByb2plY3RMaXN0Q29uc3RyYWludHMnKTsKCiAgICBpZiAoIGtleXMgJXskUHJvamVjdExpc3RDb25zdHJhaW50c30gKSB7CgogICAgICAgICMgZ2V0IGdyb3VwcyBvZiBjdXJyZW50IHVzZXIKICAgICAgICBteSAlR3JvdXBzID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06Okdyb3VwJyktPkdyb3VwTWVtYmVyTGlzdCgKICAgICAgICAgICAgVXNlcklEID0+ICRTZWxmLT57VXNlcklEfSwKICAgICAgICAgICAgVHlwZSAgID0+ICdybycsCiAgICAgICAgICAgIFJlc3VsdCA9PiAnSEFTSCcsCiAgICAgICAgKTsKICAgICAgICAlR3JvdXBzID0gbWFwIHsgJEdyb3Vwc3skX30gPT4gMSB9IGtleXMgJUdyb3VwczsKCiAgICAgICAgIyBnZXQgcHJvamVjdCBsaXN0IGNvbnN0cmFpbnRzCiAgICAgICAgbXkgJVByb2plY3RSZWdleDsKICAgICAgICBmb3IgbXkgJFByb2plY3RSZWdleCAoIHNvcnQga2V5cyAleyRQcm9qZWN0TGlzdENvbnN0cmFpbnRzfSApIHsKICAgICAgICAgICAgZm9yIG15ICRQcm9qZWN0R3JvdXAgKCBzcGxpdCAvLFxzKi8sICRQcm9qZWN0TGlzdENvbnN0cmFpbnRzLT57JFByb2plY3RSZWdleH0gKSB7CiAgICAgICAgICAgICAgICBpZiAoICRHcm91cHN7JFByb2plY3RHcm91cH0gKSB7CiAgICAgICAgICAgICAgICAgICAgJFByb2plY3RSZWdleHskUHJvamVjdFJlZ2V4fSA9IDE7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgbXkgQFByb2plY3RSZWdleCA9IGtleXMgJVByb2plY3RSZWdleDsKCiAgICAgICAgIyByZWR1Y2UgcHJvamVjdCBsaXN0IGFjY29yZGluZyB0byBjb25maWd1cmF0aW9uCiAgICAgICAgaWYgKCByZWYoICRQYXJhbXtMaXN0fSApICYmIEBQcm9qZWN0UmVnZXggKSB7CgogICAgICAgICAgICBteSAkRWxlbWVudENvdW50ID0gMDsKCiAgICAgICAgICAgIGZvciBteSAkUHJvamVjdCAoIEB7ICRQYXJhbXtMaXN0fSB9ICkgewogICAgICAgICAgICAgICAgbXkgJFByb2plY3ROYW1lID0gJFByb2plY3QtPntWYWx1ZX07CgogICAgICAgICAgICAgICAgIyBlbXB0eSBmaXJzdCBlbGVtZW50LCBsYXN0IHByb2plY3RzIHNlcGFyYXRvciBhbmQgY3VycmVudGx5IHNlbGVjdGVkIHByb2plY3QKICAgICAgICAgICAgICAgIGlmICggISRFbGVtZW50Q291bnQgfHwgISRQcm9qZWN0LT57S2V5fSB8fCAkUHJvamVjdC0+e0tleX0gZXEgJFBhcmFte1NlbGVjdGVkSUR9ICkgewogICAgICAgICAgICAgICAgICAgIHB1c2ggQExpc3QsICRQcm9qZWN0OwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgUFJPSkVDVFJFR0VYUDoKICAgICAgICAgICAgICAgICAgICBmb3IgbXkgJFByb2plY3RSZWdleCAoQFByb2plY3RSZWdleCkgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAoICRQcm9qZWN0TmFtZSA9fiBteyRQcm9qZWN0UmVnZXh9c214ICkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgcHVzaCBATGlzdCwgJFByb2plY3Q7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkUHJvamVjdENvdW50Kys7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYXN0IFBST0pFQ1RSRUdFWFA7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAkRWxlbWVudENvdW50Kys7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgIyBnZXQgZnVsbCBwcm9qZWN0IGxpc3QgaWYgY29uc3RyYWludHMgcmVzdWx0ZWQgaW4gZW1wdHkgcHJvamVjdCBsaXN0IG9yIGlmIGNvbnN0cmFpbnRzIGFyZW4ndAogICAgIyBjb25maWd1cmVkIChwb3NzaWJsZSBtaXNjb25maWd1cmF0aW9uKQogICAgaWYgKCAhJFByb2plY3RDb3VudCApIHsKICAgICAgICBATGlzdCA9IEB7ICRQYXJhbXtMaXN0fSB9OwogICAgfQoKICAgIHJldHVybiBATGlzdDsKfQoKIyBpbnRlZ3JhdGUgdGhlIGhhbmRsaW5nIGZvciByZXF1aXJlZCByZW1hcmtzIGluIHJlbGF0aW9uIHRvIHByb2plY3RzCgpzdWIgX1Byb2plY3QyUmVtYXJrUmVnRXhwIHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgbXkgQFByb2plY3RzMlJlbWFyayA9ICgpOwogICAgbXkgJVByb2plY3REYXRhICAgICA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycpLT5Qcm9qZWN0U2V0dGluZ3NHZXQoCiAgICAgICAgU3RhdHVzID0+ICd2YWxpZCcsCiAgICApOwoKICAgICMgZ2V0IGNvbmZpZyBvYmplY3QKICAgIG15ICRDb25maWdPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OkNvbmZpZycpOwoKICAgIHJldHVybiAnJyBpZiAhJENvbmZpZ09iamVjdC0+R2V0KCdUaW1lQWNjb3VudGluZzo6UHJvamVjdDJSZW1hcmtSZWdFeHAnKTsKCiAgICBteSAkUHJvamVjdDJSZW1hcmtSZWdFeHAgPSAkQ29uZmlnT2JqZWN0LT5HZXQoJ1RpbWVBY2NvdW50aW5nOjpQcm9qZWN0MlJlbWFya1JlZ0V4cCcpOwoKICAgIGZvciBteSAkUHJvamVjdElEICggc29ydCBrZXlzICV7ICRQcm9qZWN0RGF0YXtQcm9qZWN0fSB9ICkgewogICAgICAgIGlmICggJFByb2plY3REYXRhe1Byb2plY3R9eyRQcm9qZWN0SUR9ID1+IG17JFByb2plY3QyUmVtYXJrUmVnRXhwfXNteCApIHsKICAgICAgICAgICAgcHVzaCBAUHJvamVjdHMyUmVtYXJrLCAkUHJvamVjdElEOwogICAgICAgIH0KICAgIH0KCiAgICByZXR1cm4gam9pbiAnfCcsIEBQcm9qZWN0czJSZW1hcms7Cn0KCjE7Cg==</File>
        <File Location="Kernel/Modules/AgentTimeAccountingOverview.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TW9kdWxlczo6QWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3OwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwoKdXNlIEtlcm5lbDo6TGFuZ3VhZ2UgcXcoVHJhbnNsYXRhYmxlKTsKCnVzZSBLZXJuZWw6OlN5c3RlbTo6VmFyaWFibGVDaGVjayBxdyg6YWxsKTsKCm91ciAkT2JqZWN0TWFuYWdlckRpc2FibGVkID0gMTsKCnN1YiBuZXcgewogICAgbXkgKCAkVHlwZSwgJVBhcmFtICkgPSBAXzsKCiAgICAjIGFsbG9jYXRlIG5ldyBoYXNoIGZvciBvYmplY3QKICAgIG15ICRTZWxmID0geyVQYXJhbX07CiAgICBibGVzcyggJFNlbGYsICRUeXBlICk7CgogICAgbXkgJERhdGVUaW1lT2JqZWN0ID0gJEtlcm5lbDo6T00tPkNyZWF0ZSgnS2VybmVsOjpTeXN0ZW06OkRhdGVUaW1lJyk7CgogICAgJFNlbGYtPntUaW1lWm9uZX0gPSAkUGFyYW17VGltZVpvbmV9CiAgICAgICAgfHwgJFBhcmFte1VzZXJUaW1lWm9uZX0KICAgICAgICB8fCAkRGF0ZVRpbWVPYmplY3QtPk9UT0JPVGltZVpvbmVHZXQoKTsKCiAgICByZXR1cm4gJFNlbGY7Cn0KCnN1YiBSdW4gewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICBteSBATW9udGhBcnJheSA9ICgKICAgICAgICAnJywgICAgICdKYW51YXJ5JywgJ0ZlYnJ1YXJ5JywgJ01hcmNoJywgICAgICdBcHJpbCcsICAgJ01heScsCiAgICAgICAgJ0p1bmUnLCAnSnVseScsICAgICdBdWd1c3QnLCAgICdTZXB0ZW1iZXInLCAnT2N0b2JlcicsICdOb3ZlbWJlcicsCiAgICAgICAgJ0RlY2VtYmVyJywKICAgICk7CiAgICBteSBAV2Vla2RheUFycmF5ID0gKCAnTW9uJywgJ1R1ZScsICdXZWQnLCAnVGh1JywgJ0ZyaScsICdTYXQnLCAnU3VuJywgKTsKCiAgICAjIGdldCB0aW1lIG9iamVjdAogICAgbXkgJERhdGVUaW1lT2JqZWN0Q3VycmVudCA9ICRLZXJuZWw6Ok9NLT5DcmVhdGUoJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScpOwogICAgbXkgJFRpbWVBY2NvdW50aW5nT2JqZWN0ICA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycpOwoKICAgICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCiAgICAjIG92ZXJ2aWV3IGFib3V0IHRoZSB1c2VycyB0aW1lIGFjY291bnRpbmcKICAgICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCiAgICBteSAoICRTZWMsICRNaW4sICRIb3VyLCAkQ3VycmVudERheSwgJE1vbnRoLCAkWWVhciApID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5TeXN0ZW1UaW1lMkRhdGUoCiAgICAgICAgU3lzdGVtVGltZSA9PiAkRGF0ZVRpbWVPYmplY3RDdXJyZW50LT5Ub0Vwb2NoKCksCiAgICApOwoKICAgICMgZ2V0IGxheW91dCBvYmplY3QKICAgIG15ICRMYXlvdXRPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6Ok91dHB1dDo6SFRNTDo6TGF5b3V0Jyk7CgogICAgIyBwZXJtaXNzaW9uIGNoZWNrCiAgICBpZiAoICEkU2VsZi0+e0FjY2Vzc1JvfSApIHsKICAgICAgICByZXR1cm4gJExheW91dE9iamVjdC0+Tm9QZXJtaXNzaW9uKAogICAgICAgICAgICBXaXRoSGVhZGVyID0+ICd5ZXMnLAogICAgICAgICk7CiAgICB9CgogICAgZm9yIG15ICRQYXJhbWV0ZXIgKHF3KFN0YXR1cyBEYXkgTW9udGggWWVhciBVc2VySUQgUHJvamVjdFN0YXR1c1Nob3cpKSB7CiAgICAgICAgJFBhcmFteyRQYXJhbWV0ZXJ9ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OldlYjo6UmVxdWVzdCcpLT5HZXRQYXJhbSggUGFyYW0gPT4gJFBhcmFtZXRlciApOwogICAgfQogICAgJFBhcmFte0FjdGlvbn0gPSAnQWdlbnRUaW1lQWNjb3VudGluZ0VkaXQnOwoKICAgIGlmICggISRQYXJhbXtVc2VySUR9ICkgewogICAgICAgICRQYXJhbXtVc2VySUR9ID0gJFNlbGYtPntVc2VySUR9OwogICAgfQogICAgZWxzZSB7CiAgICAgICAgaWYgKCAkUGFyYW17VXNlcklEfSAhPSAkU2VsZi0+e1VzZXJJRH0gJiYgISRTZWxmLT57QWNjZXNzUnd9ICkgewoKICAgICAgICAgICAgcmV0dXJuICRMYXlvdXRPYmplY3QtPk5vUGVybWlzc2lvbigKICAgICAgICAgICAgICAgIFdpdGhIZWFkZXIgPT4gJ3llcycsCiAgICAgICAgICAgICk7CiAgICAgICAgfQogICAgICAgICRQYXJhbXtBY3Rpb259ID0gJ0FnZW50VGltZUFjY291bnRpbmdWaWV3JzsKICAgIH0KICAgIGlmICggJFBhcmFte1VzZXJJRH0gIT0gJFNlbGYtPntVc2VySUR9ICkgewogICAgICAgIG15ICVTaG93blVzZXJzID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlVzZXInKS0+VXNlckxpc3QoCiAgICAgICAgICAgIFR5cGUgID0+ICdMb25nJywKICAgICAgICAgICAgVmFsaWQgPT4gMQogICAgICAgICk7CiAgICAgICAgJFBhcmFte1VzZXJ9ID0gJFNob3duVXNlcnN7ICRQYXJhbXtVc2VySUR9IH07CiAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgIE5hbWUgPT4gJ1VzZXInLAogICAgICAgICAgICBEYXRhID0+IHslUGFyYW19LAogICAgICAgICk7CiAgICB9CgogICAgIyBDaGVjayBEYXRlCiAgICBpZiAoICEkUGFyYW17WWVhcn0gfHwgISRQYXJhbXtNb250aH0gKSB7CiAgICAgICAgJFBhcmFte1llYXJ9ICA9ICRZZWFyOwogICAgICAgICRQYXJhbXtNb250aH0gPSAkTW9udGg7CiAgICB9CiAgICBlbHNlIHsKICAgICAgICAkUGFyYW17TW9udGh9ID0gc3ByaW50ZiggIiUwMmQiLCAkUGFyYW17TW9udGh9ICk7CiAgICB9CgogICAgIyBzdG9yZSBsYXN0IHNjcmVlbgogICAgJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkF1dGhTZXNzaW9uJyktPlVwZGF0ZVNlc3Npb25JRCgKICAgICAgICBTZXNzaW9uSUQgPT4gJFNlbGYtPntTZXNzaW9uSUR9LAogICAgICAgIEtleSAgICAgICA9PiAnTGFzdFNjcmVlbicsCiAgICAgICAgVmFsdWUgICAgID0+CiAgICAgICAgICAgICJBY3Rpb249JFNlbGYtPntBY3Rpb259O1llYXI9JFBhcmFte1llYXJ9O01vbnRoPSRQYXJhbXtNb250aH0iLAogICAgKTsKCiAgICAkUGFyYW17TW9udGhfdG9fVGV4dH0gPSAkTW9udGhBcnJheVsgJFBhcmFte01vbnRofSBdOwoKICAgICMgY3JlYXRlIG9uZSBiYXNlIG9iamVjdAogICAgbXkgJERhdGVUaW1lT2JqZWN0R2l2ZW4gPSAkS2VybmVsOjpPTS0+Q3JlYXRlKAogICAgICAgICdLZXJuZWw6OlN5c3RlbTo6RGF0ZVRpbWUnLAogICAgICAgIE9iamVjdFBhcmFtcyA9PiB7CiAgICAgICAgICAgIFllYXIgID0+ICRQYXJhbXtZZWFyfSwKICAgICAgICAgICAgTW9udGggPT4gJFBhcmFte01vbnRofSwKICAgICAgICAgICAgRGF5ICAgPT4gMSwKICAgICAgICB9LAogICAgKTsKCiAgICBteSAkRGF0ZVRpbWVPYmplY3ROZXh0ID0gJERhdGVUaW1lT2JqZWN0R2l2ZW4tPkNsb25lKCk7CiAgICBteSAkRGF0ZVRpbWVPYmplY3RQcmV2ID0gJERhdGVUaW1lT2JqZWN0R2l2ZW4tPkNsb25lKCk7CiAgICBteSAkRGF0ZVBhcmFtc0N1cnJlbnQgID0gJERhdGVUaW1lT2JqZWN0R2l2ZW4tPkdldCgpOwoKICAgICMgY2FsY3VsYXRlIHRoZSBuZXh0IG1vbnRoCiAgICAkRGF0ZVRpbWVPYmplY3ROZXh0LT5BZGQoCiAgICAgICAgTW9udGhzID0+IDEsCiAgICApOwoKICAgIG15ICREYXRlUGFyYW1zTmV4dCA9ICREYXRlVGltZU9iamVjdE5leHQtPkdldCgpOwoKICAgICRQYXJhbXtZZWFyTmV4dH0gID0gJERhdGVQYXJhbXNOZXh0LT57WWVhcn07CiAgICAkUGFyYW17TW9udGhOZXh0fSA9ICREYXRlUGFyYW1zTmV4dC0+e01vbnRofTsKICAgICRQYXJhbXtEYXlOZXh0fSAgID0gJERhdGVQYXJhbXNOZXh0LT57RGF5fTsKCiAgICAjIGNhbGN1bGF0ZSB0aGUgbmV4dCBtb250aAogICAgJERhdGVUaW1lT2JqZWN0UHJldi0+U3VidHJhY3QoCiAgICAgICAgTW9udGhzID0+IDEsCiAgICApOwoKICAgIG15ICREYXRlUGFyYW1zQmFjayA9ICREYXRlVGltZU9iamVjdFByZXYtPkdldCgpOwogICAgJFBhcmFte1llYXJCYWNrfSAgPSAkRGF0ZVBhcmFtc0JhY2stPntZZWFyfTsKICAgICRQYXJhbXtNb250aEJhY2t9ID0gJERhdGVQYXJhbXNCYWNrLT57TW9udGh9OwogICAgJFBhcmFte0RheUJhY2t9ICAgPSAkRGF0ZVBhcmFtc0JhY2stPntEYXl9OwoKICAgICMgT3ZlcnZpZXcgcGVyIGRheQogICAgbXkgJExhc3REYXlPZk1vbnRoID0gJERhdGVUaW1lT2JqZWN0R2l2ZW4tPkxhc3REYXlPZk1vbnRoR2V0KCk7CiAgICBteSAkRGF5c09mTW9udGggICAgPSAkTGFzdERheU9mTW9udGgtPntEYXl9OwoKICAgIG15ICVVc2VyRGF0YSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+VXNlckdldCgKICAgICAgICBVc2VySUQgPT4gJFBhcmFte1VzZXJJRH0sCiAgICApOwoKICAgIGZvciBteSAkRGF5ICggMSAuLiAkRGF5c09mTW9udGggKSB7CiAgICAgICAgJFBhcmFte0RheX0gPSBzcHJpbnRmKCAiJTAyZCIsICREYXkgKTsKCiAgICAgICAgJFBhcmFte1dlZWtkYXl9ID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5EYXlPZldlZWsoICRQYXJhbXtZZWFyfSwgJFBhcmFte01vbnRofSwgJFBhcmFte0RheX0gKTsKCiAgICAgICAgbXkgJFZhY2F0aW9uQ2hlY2sgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlZhY2F0aW9uQ2hlY2soCiAgICAgICAgICAgIFllYXIgICAgID0+ICRQYXJhbXtZZWFyfSwKICAgICAgICAgICAgTW9udGggICAgPT4gJFBhcmFte01vbnRofSwKICAgICAgICAgICAgRGF5ICAgICAgPT4gJERheSwKICAgICAgICAgICAgQ2FsZW5kYXIgPT4gJFVzZXJEYXRhe0NhbGVuZGFyfSwKICAgICAgICApOwoKICAgICAgICBteSAkRGF0ZSAgICAgICAgICAgICAgICA9IHNwcmludGYoICIlMDRkLSUwMmQtJTAyZCIsICRQYXJhbXtZZWFyfSwgJFBhcmFte01vbnRofSwgJERheSApOwogICAgICAgIG15ICREYXRlVGltZU9iamVjdFN0YXJ0ID0gJEtlcm5lbDo6T00tPkNyZWF0ZSgKICAgICAgICAgICAgJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScsCiAgICAgICAgICAgIE9iamVjdFBhcmFtcyA9PiB7CiAgICAgICAgICAgICAgICBTdHJpbmcgPT4gJERhdGUgLiAnIDAwOjAwOjAwJywKICAgICAgICAgICAgfQogICAgICAgICk7CiAgICAgICAgbXkgJERheVN0YXJ0VGltZSA9ICREYXRlVGltZU9iamVjdFN0YXJ0LT5Ub0Vwb2NoKCk7CgogICAgICAgIG15ICREYXRlVGltZU9iamVjdFN0b3AgPSAkS2VybmVsOjpPTS0+Q3JlYXRlKAogICAgICAgICAgICAnS2VybmVsOjpTeXN0ZW06OkRhdGVUaW1lJywKICAgICAgICAgICAgT2JqZWN0UGFyYW1zID0+IHsKICAgICAgICAgICAgICAgIFN0cmluZyA9PiAkRGF0ZSAuICcgMjM6NTk6NTknLAogICAgICAgICAgICB9CiAgICAgICAgKTsKICAgICAgICBteSAkRGF5U3RvcFRpbWUgPSAkRGF0ZVRpbWVPYmplY3RTdG9wLT5Ub0Vwb2NoKCk7CgogICAgICAgICMgYWRkIHRpbWUgem9uZSB0byBjYWxjdWxhdGlvbgogICAgICAgIG15ICRVc2VyQ2FsZW5kYXIgPSAkVXNlckRhdGF7Q2FsZW5kYXJ9IHx8ICcnOwogICAgICAgIG15ICRab25lICAgICAgICAgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OkNvbmZpZycpLT5HZXQoICJUaW1lWm9uZTo6Q2FsZW5kYXIiIC4gJFVzZXJDYWxlbmRhciApOwogICAgICAgIGlmICgkWm9uZSkgewogICAgICAgICAgICBteSAkWm9uZVNlY29uZHMgPSAkWm9uZSAqIDYwICogNjA7CiAgICAgICAgICAgICREYXlTdGFydFRpbWUgPSAkRGF5U3RhcnRUaW1lIC0gJFpvbmVTZWNvbmRzOwogICAgICAgICAgICAkRGF5U3RvcFRpbWUgID0gJERheVN0b3BUaW1lIC0gJFpvbmVTZWNvbmRzOwogICAgICAgIH0KCiAgICAgICAgbXkgJFRoaXNEYXlXb3JraW5nVGltZSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+V29ya2luZ1RpbWUoCiAgICAgICAgICAgIFN0YXJ0VGltZSA9PiAkRGF5U3RhcnRUaW1lLAogICAgICAgICAgICBTdG9wVGltZSAgPT4gJERheVN0b3BUaW1lLAogICAgICAgICAgICBDYWxlbmRhciAgPT4gJFVzZXJDYWxlbmRhciwKICAgICAgICApIHx8ICcwJzsKCiAgICAgICAgaWYgKCAkUGFyYW17WWVhcn0gZXEgJFllYXIgJiYgJFBhcmFte01vbnRofSBlcSAkTW9udGggJiYgJEN1cnJlbnREYXkgZXEgJERheSApIHsKICAgICAgICAgICAgJFBhcmFte0NsYXNzfSA9ICdBY3RpdmUnOwogICAgICAgIH0KICAgICAgICBlbHNpZiAoJFZhY2F0aW9uQ2hlY2spIHsKICAgICAgICAgICAgJFBhcmFte0NsYXNzfSAgID0gJ1ZhY2F0aW9uJzsKICAgICAgICAgICAgJFBhcmFte0NvbW1lbnR9ID0gJFZhY2F0aW9uQ2hlY2s7CiAgICAgICAgfQogICAgICAgIGVsc2lmICgkVGhpc0RheVdvcmtpbmdUaW1lKSB7CiAgICAgICAgICAgICRQYXJhbXtDbGFzc30gPSAnV29ya2luZ0RheSc7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICAkUGFyYW17Q2xhc3N9ID0gJ05vbldvcmtpbmdEYXknOwogICAgICAgIH0KCiAgICAgICAgbXkgJURhdGEgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPldvcmtpbmdVbml0c0dldCgKICAgICAgICAgICAgWWVhciAgID0+ICRQYXJhbXtZZWFyfSwKICAgICAgICAgICAgTW9udGggID0+ICRQYXJhbXtNb250aH0sCiAgICAgICAgICAgIERheSAgICA9PiAkUGFyYW17RGF5fSwKICAgICAgICAgICAgVXNlcklEID0+ICRQYXJhbXtVc2VySUR9LAogICAgICAgICk7CgogICAgICAgICRQYXJhbXtDb21tZW50fSA9ICREYXRhe1NpY2t9CiAgICAgICAgICAgID8gVHJhbnNsYXRhYmxlKCdTaWNrIGxlYXZlJykKICAgICAgICAgICAgOiAkRGF0YXtMZWF2ZURheX0gPyBUcmFuc2xhdGFibGUoJ09uIHZhY2F0aW9uJykKICAgICAgICAgICAgOiAkRGF0YXtPdmVydGltZX0gPyBUcmFuc2xhdGFibGUoJ09uIG92ZXJ0aW1lIGxlYXZlJykKICAgICAgICAgICAgOiAgICAgICAgICAgICAgICAgICAnJzsKCiAgICAgICAgJFBhcmFte1dvcmtpbmdIb3Vyc30gPSAkRGF0YXtUb3RhbH0gPyBzcHJpbnRmKCAiJS4yZiIsICREYXRhe1RvdGFsfSApIDogJyc7CgogICAgICAgICRQYXJhbXtXZWVrZGF5X3RvX1RleHR9ID0gJFdlZWtkYXlBcnJheVsgJFBhcmFte1dlZWtkYXl9IC0gMSBdOwogICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICBOYW1lID0+ICdSb3cnLAogICAgICAgICAgICBEYXRhID0+IHslUGFyYW19LAogICAgICAgICk7CiAgICAgICAgJFBhcmFte0NvbW1lbnR9ID0gJyc7CiAgICB9CgogICAgbXkgJVVzZXJSZXBvcnQgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlVzZXJSZXBvcnRpbmcoCiAgICAgICAgWWVhciAgPT4gJFBhcmFte1llYXJ9LAogICAgICAgIE1vbnRoID0+ICRQYXJhbXtNb250aH0sCiAgICApOwogICAgZm9yIG15ICRSZXBvcnRFbGVtZW50ICgKICAgICAgICBxdyhUYXJnZXRTdGF0ZSBUYXJnZXRTdGF0ZVRvdGFsIFdvcmtpbmdIb3Vyc1RvdGFsIFdvcmtpbmdIb3VycwogICAgICAgIE92ZXJ0aW1lIE92ZXJ0aW1lVG90YWwgT3ZlcnRpbWVVbnRpbCBMZWF2ZURheSBMZWF2ZURheVRvdGFsCiAgICAgICAgTGVhdmVEYXlSZW1haW5pbmcgU2ljayBTaWNrVG90YWwgU2lja1JlbWFpbmluZykKICAgICAgICApCiAgICB7CiAgICAgICAgJFVzZXJSZXBvcnR7ICRQYXJhbXtVc2VySUR9IH17JFJlcG9ydEVsZW1lbnR9IHx8PSAwOwogICAgICAgICRQYXJhbXskUmVwb3J0RWxlbWVudH0gPSBzcHJpbnRmKCAiJS4yZiIsICRVc2VyUmVwb3J0eyAkUGFyYW17VXNlcklEfSB9eyRSZXBvcnRFbGVtZW50fSApOwogICAgfQoKICAgIGlmICggJFVzZXJEYXRhe1Nob3dPdmVydGltZX0gKSB7CiAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgIE5hbWUgPT4gJ092ZXJ0aW1lJywKICAgICAgICAgICAgRGF0YSA9PiBcJVBhcmFtLAogICAgICAgICk7CiAgICB9CgogICAgIyBPdmVydmlldyBwZXIgcHJvamVjdCBhbmQgYWN0aW9uCiAgICBteSAlUHJvamVjdERhdGEgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlByb2plY3RBY3Rpb25SZXBvcnRpbmcoCiAgICAgICAgWWVhciAgID0+ICRQYXJhbXtZZWFyfSwKICAgICAgICBNb250aCAgPT4gJFBhcmFte01vbnRofSwKICAgICAgICBVc2VySUQgPT4gJFBhcmFte1VzZXJJRH0sCiAgICApOwoKICAgIGlmICggSXNIYXNoUmVmV2l0aERhdGEoIFwlUHJvamVjdERhdGEgKSApIHsKCiAgICAgICAgIyBzaG93IHRoZSByZXBvcnQgc29ydCBieSBwcm9qZWN0cwogICAgICAgIGlmICggISRQYXJhbXtQcm9qZWN0U3RhdHVzU2hvd30gfHwgJFBhcmFte1Byb2plY3RTdGF0dXNTaG93fSBlcSAndmFsaWQnICkgewogICAgICAgICAgICAkUGFyYW17UHJvamVjdFN0YXR1c1Nob3d9ID0gJ2FsbCc7CiAgICAgICAgfQogICAgICAgIGVsc2lmICggJFBhcmFte1Byb2plY3RTdGF0dXNTaG93fSBlcSAnYWxsJyApIHsKICAgICAgICAgICAgJFBhcmFte1Byb2plY3RTdGF0dXNTaG93fSA9ICd2YWxpZCc7CiAgICAgICAgfQoKICAgICAgICAkUGFyYW17U2hvd1Byb2plY3RzfSA9ICdTaG93ICcgLiAkUGFyYW17UHJvamVjdFN0YXR1c1Nob3d9IC4gJyBwcm9qZWN0cyc7CgogICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICBOYW1lID0+ICdQcm9qZWN0VGFibGUnLAogICAgICAgICAgICBEYXRhID0+IHslUGFyYW19LAogICAgICAgICk7CgogICAgICAgIFBST0pFQ1RJRDoKICAgICAgICBmb3IgbXkgJFByb2plY3RJRCAoCiAgICAgICAgICAgIHNvcnQgeyAkUHJvamVjdERhdGF7JGF9e05hbWV9IGNtcCAkUHJvamVjdERhdGF7JGJ9e05hbWV9IH0ga2V5cyAlUHJvamVjdERhdGEKICAgICAgICAgICAgKQogICAgICAgIHsKICAgICAgICAgICAgbXkgJFByb2plY3RSZWYgPSAkUHJvamVjdERhdGF7JFByb2plY3RJRH07CiAgICAgICAgICAgIG15ICRBY3Rpb25zUmVmID0gJFByb2plY3RSZWYtPntBY3Rpb25zfTsKCiAgICAgICAgICAgICRQYXJhbXtQcm9qZWN0fSA9ICcnOwogICAgICAgICAgICAkUGFyYW17U3RhdHVzfSAgPSAkUHJvamVjdFJlZi0+e1N0YXR1c30gPyAnJyA6ICdwYXNzaXYnOwoKICAgICAgICAgICAgbXkgJFRvdGFsICAgICAgPSAwOwogICAgICAgICAgICBteSAkVG90YWxUb3RhbCA9IDA7CgogICAgICAgICAgICBuZXh0IFBST0pFQ1RJRCBpZiAkUGFyYW17UHJvamVjdFN0YXR1c1Nob3d9IGVxICdhbGwnICYmICRQYXJhbXtTdGF0dXN9OwoKICAgICAgICAgICAgaWYgKCRBY3Rpb25zUmVmKSB7CiAgICAgICAgICAgICAgICBmb3IgbXkgJEFjdGlvbklEICgKICAgICAgICAgICAgICAgICAgICBzb3J0IHsgJEFjdGlvbnNSZWYtPnskYX17TmFtZX0gY21wICRBY3Rpb25zUmVmLT57JGJ9e05hbWV9IH0KICAgICAgICAgICAgICAgICAgICBrZXlzICV7JEFjdGlvbnNSZWZ9CiAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIG15ICRBY3Rpb25SZWYgPSAkQWN0aW9uc1JlZi0+eyRBY3Rpb25JRH07CgogICAgICAgICAgICAgICAgICAgICRQYXJhbXtBY3Rpb259ICAgICA9ICRBY3Rpb25SZWYtPntOYW1lfTsKICAgICAgICAgICAgICAgICAgICAkUGFyYW17SG91cnN9ICAgICAgPSBzcHJpbnRmKCAiJS4yZiIsICRBY3Rpb25SZWYtPntQZXJNb250aH0gfHwgMCApOwogICAgICAgICAgICAgICAgICAgICRQYXJhbXtIb3Vyc1RvdGFsfSA9IHNwcmludGYoICIlLjJmIiwgJEFjdGlvblJlZi0+e1RvdGFsfSAgICB8fCAwICk7CiAgICAgICAgICAgICAgICAgICAgJFRvdGFsICAgICAgKz0gJFBhcmFte0hvdXJzfTsKICAgICAgICAgICAgICAgICAgICAkVG90YWxUb3RhbCArPSAkUGFyYW17SG91cnNUb3RhbH07CiAgICAgICAgICAgICAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUgPT4gJ0FjdGlvbicsCiAgICAgICAgICAgICAgICAgICAgICAgIERhdGEgPT4geyVQYXJhbX0sCiAgICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgICAgICBpZiAoICEkUGFyYW17UHJvamVjdH0gKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRQYXJhbXtQcm9qZWN0fSA9ICRQcm9qZWN0UmVmLT57TmFtZX07CiAgICAgICAgICAgICAgICAgICAgICAgIG15ICRQcm9qZWN0RGVzY3JpcHRpb24gPSAkTGF5b3V0T2JqZWN0LT5Bc2NpaTJIdG1sKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgVGV4dCAgICAgICAgICAgPT4gJFByb2plY3RSZWYtPntEZXNjcmlwdGlvbn0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBIVE1MUmVzdWx0TW9kZSA9PiAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgTmV3TGluZSAgICAgICAgPT4gNTAsCiAgICAgICAgICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICAgICAgICAgICRQcm9qZWN0RGVzY3JpcHRpb24gPX4gc3xcPGJyXC9cPnxcbnxnOwoKICAgICAgICAgICAgICAgICAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBOYW1lID0+ICdQcm9qZWN0JywKICAgICAgICAgICAgICAgICAgICAgICAgICAgIERhdGEgPT4gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJvd1NwYW4gPT4gKCAxICsgc2NhbGFyIGtleXMgJXskQWN0aW9uc1JlZn0gKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdGF0dXMgID0+ICRQYXJhbXtTdGF0dXN9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgKTsKCiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkUHJvamVjdERlc2NyaXB0aW9uKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOYW1lID0+ICdQcm9qZWN0RGVzY3JpcHRpb24nLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERhdGEgPT4gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcm9qZWN0RGVzY3JpcHRpb24gPT4gJFByb2plY3REZXNjcmlwdGlvbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCAkVXNlckRhdGF7Q3JlYXRlUHJvamVjdH0gKSB7CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBwZXJzb25zIHdobyBhcmUgYWxsb3dlZCB0byBzZWUgdGhlIGNyZWF0ZSBvYmplY3QgbGluayBhcmUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgYWxsb3dlZCB0byBzZWUgdGhlIHByb2plY3QgcmVwb3J0aW5nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOYW1lID0+ICdQcm9qZWN0TGluaycsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGF0YSA9PiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByb2plY3QgICA9PiAkUHJvamVjdFJlZi0+e05hbWV9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcm9qZWN0SUQgPT4gJFByb2plY3RJRCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUgPT4gJ1Byb2plY3ROb0xpbmsnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERhdGEgPT4geyBQcm9qZWN0ID0+ICRQcm9qZWN0UmVmLT57TmFtZX0gfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgIyBOb3cgc2hvdyByb3cgd2l0aCB0b3RhbCByZXN1bHQgb2YgYWxsIGFjdGlvbnMgb2YgdGhpcyBwcm9qZWN0CiAgICAgICAgICAgICAgICAkUGFyYW17SG91cnN9ICAgICAgPSBzcHJpbnRmKCAiJS4yZiIsICRUb3RhbCApOwogICAgICAgICAgICAgICAgJFBhcmFte0hvdXJzVG90YWx9ID0gc3ByaW50ZiggIiUuMmYiLCAkVG90YWxUb3RhbCApOwogICAgICAgICAgICAgICAgJFBhcmFte1RvdGFsSG91cnN9ICAgICAgKz0gJFRvdGFsOwogICAgICAgICAgICAgICAgJFBhcmFte1RvdGFsSG91cnNUb3RhbH0gKz0gJFRvdGFsVG90YWw7CiAgICAgICAgICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgICAgICAgICBOYW1lID0+ICdBY3Rpb25Ub3RhbCcsCiAgICAgICAgICAgICAgICAgICAgRGF0YSA9PiB7JVBhcmFtfSwKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKCBkZWZpbmVkKCAkUGFyYW17VG90YWxIb3Vyc30gKSApIHsKICAgICAgICAgICAgJFBhcmFte1RvdGFsSG91cnN9ID0gc3ByaW50ZiggIiUuMmYiLCAkUGFyYW17VG90YWxIb3Vyc30gKTsKICAgICAgICB9CiAgICAgICAgaWYgKCBkZWZpbmVkKCAkUGFyYW17VG90YWxIb3Vyc1RvdGFsfSApICkgewogICAgICAgICAgICAkUGFyYW17VG90YWxIb3Vyc1RvdGFsfSA9IHNwcmludGYoICIlLjJmIiwgJFBhcmFte1RvdGFsSG91cnNUb3RhbH0gKTsKICAgICAgICB9CiAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgIE5hbWUgPT4gJ0dyYW5kVG90YWwnLAogICAgICAgICAgICBEYXRhID0+IHslUGFyYW19LAogICAgICAgICk7CiAgICB9CgogICAgIyBidWlsZCBvdXRwdXQKICAgIG15ICRPdXRwdXQgPSAkTGF5b3V0T2JqZWN0LT5IZWFkZXIoCiAgICAgICAgVGl0bGUgPT4gVHJhbnNsYXRhYmxlKCdPdmVydmlldycpLAogICAgKTsKICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+TmF2aWdhdGlvbkJhcigpOwogICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5PdXRwdXQoCiAgICAgICAgRGF0YSAgICAgICAgID0+IFwlUGFyYW0sCiAgICAgICAgVGVtcGxhdGVGaWxlID0+ICdBZ2VudFRpbWVBY2NvdW50aW5nT3ZlcnZpZXcnCiAgICApOwogICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5Gb290ZXIoKTsKCiAgICByZXR1cm4gJE91dHB1dDsKfQoKc3ViIF9DaGVja1ZhbGlkaXR5VXNlclBlcmlvZHMgewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICBteSAlRXJyb3JzID0gKCk7CiAgICBteSAlR2V0UGFyYW07CgogICAgIyBnZXQgdGltZSBvYmplY3QKICAgIG15ICRUaW1lQWNjb3VudGluZ09iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycpOwoKICAgIGZvciAoIG15ICRQZXJpb2QgPSAxOyAkUGVyaW9kIDw9ICRQYXJhbXtQZXJpb2R9OyAkUGVyaW9kKysgKSB7CgogICAgICAgICMgY2hlY2sgZm9yIG5lZWRlZCBkYXRhCiAgICAgICAgZm9yIG15ICRQYXJhbWV0ZXIgKHF3KERhdGVTdGFydCBEYXRlRW5kIExlYXZlRGF5cykpIHsKICAgICAgICAgICAgJEdldFBhcmFteyRQYXJhbWV0ZXJ9CiAgICAgICAgICAgICAgICA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpXZWI6OlJlcXVlc3QnKS0+R2V0UGFyYW0oIFBhcmFtID0+ICRQYXJhbWV0ZXIgLiAiWyRQZXJpb2RdIiApOwogICAgICAgICAgICBpZiAoICEkR2V0UGFyYW17JFBhcmFtZXRlcn0gKSB7CiAgICAgICAgICAgICAgICAkRXJyb3JzeyAkUGFyYW1ldGVyIC4gJy0nIC4gJFBlcmlvZCAuICdJbnZhbGlkJyB9ICAgPSAnU2VydmVyRXJyb3InOwogICAgICAgICAgICAgICAgJEVycm9yc3sgJFBhcmFtZXRlciAuICctJyAuICRQZXJpb2QgLiAnRXJyb3JUeXBlJyB9ID0gJ01pc3NpbmdWYWx1ZSc7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgbXkgKCAkWWVhciwgJE1vbnRoLCAkRGF5ICkgPSBzcGxpdCggLy0vLCAkR2V0UGFyYW17RGF0ZVN0YXJ0fSApOwogICAgICAgIG15ICRTdGFydERhdGUgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPkRhdGUyU3lzdGVtVGltZSgKICAgICAgICAgICAgWWVhciAgID0+ICRZZWFyLAogICAgICAgICAgICBNb250aCAgPT4gJE1vbnRoLAogICAgICAgICAgICBEYXkgICAgPT4gJERheSwKICAgICAgICAgICAgSG91ciAgID0+IDAsCiAgICAgICAgICAgIE1pbnV0ZSA9PiAwLAogICAgICAgICAgICBTZWNvbmQgPT4gMCwKICAgICAgICApOwogICAgICAgICggJFllYXIsICRNb250aCwgJERheSApID0gc3BsaXQoIC8tLywgJEdldFBhcmFte0RhdGVFbmR9ICk7CiAgICAgICAgbXkgJEVuZERhdGUgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPkRhdGUyU3lzdGVtVGltZSgKICAgICAgICAgICAgWWVhciAgID0+ICRZZWFyLAogICAgICAgICAgICBNb250aCAgPT4gJE1vbnRoLAogICAgICAgICAgICBEYXkgICAgPT4gJERheSwKICAgICAgICAgICAgSG91ciAgID0+IDAsCiAgICAgICAgICAgIE1pbnV0ZSA9PiAwLAogICAgICAgICAgICBTZWNvbmQgPT4gMCwKICAgICAgICApOwogICAgICAgIGlmICggISRTdGFydERhdGUgKSB7CiAgICAgICAgICAgICRFcnJvcnN7ICdEYXRlU3RhcnQtJyAuICRQZXJpb2QgLiAnSW52YWxpZCcgfSAgID0gJ1NlcnZlckVycm9yJzsKICAgICAgICAgICAgJEVycm9yc3sgJ0RhdGVTdGFydC0nIC4gJFBlcmlvZCAuICdFcnJvclR5cGUnIH0gPSAnSW52YWxpZCc7CiAgICAgICAgfQogICAgICAgIGlmICggISRFbmREYXRlICkgewogICAgICAgICAgICAkRXJyb3JzeyAnRGF0ZUVuZC0nIC4gJFBlcmlvZCAuICdJbnZhbGlkJyB9ICAgPSAnU2VydmVyRXJyb3InOwogICAgICAgICAgICAkRXJyb3JzeyAnRGF0ZUVuZC0nIC4gJFBlcmlvZCAuICdFcnJvclR5cGUnIH0gPSAnSW52YWxpZCc7CiAgICAgICAgfQogICAgICAgIGlmICggJFN0YXJ0RGF0ZSAmJiAkRW5kRGF0ZSAmJiAkU3RhcnREYXRlID49ICRFbmREYXRlICkgewogICAgICAgICAgICAkRXJyb3JzeyAnRGF0ZUVuZC0nIC4gJFBlcmlvZCAuICdJbnZhbGlkJyB9ICAgPSAnU2VydmVyRXJyb3InOwogICAgICAgICAgICAkRXJyb3JzeyAnRGF0ZUVuZC0nIC4gJFBlcmlvZCAuICdFcnJvclR5cGUnIH0gPSAnQmVmb3JlRGF0ZVN0YXJ0JzsKICAgICAgICB9CiAgICB9CgogICAgcmV0dXJuICVFcnJvcnM7Cn0KCjE7Cg==</File>
        <File Location="Kernel/Modules/AgentTimeAccountingReporting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TW9kdWxlczo6QWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZzsKCnVzZSBzdHJpY3Q7CnVzZSB3YXJuaW5nczsKCnVzZSBLZXJuZWw6Okxhbmd1YWdlIHF3KFRyYW5zbGF0YWJsZSk7Cgp1c2UgS2VybmVsOjpTeXN0ZW06OlZhcmlhYmxlQ2hlY2sgcXcoOmFsbCk7CgpvdXIgJE9iamVjdE1hbmFnZXJEaXNhYmxlZCA9IDE7CgpzdWIgbmV3IHsKICAgIG15ICggJFR5cGUsICVQYXJhbSApID0gQF87CgogICAgIyBhbGxvY2F0ZSBuZXcgaGFzaCBmb3Igb2JqZWN0CiAgICBteSAkU2VsZiA9IHslUGFyYW19OwogICAgYmxlc3MoICRTZWxmLCAkVHlwZSApOwoKICAgIG15ICREYXRlVGltZU9iamVjdCA9ICRLZXJuZWw6Ok9NLT5DcmVhdGUoJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScpOwoKICAgICRTZWxmLT57VGltZVpvbmV9ID0gJFBhcmFte1RpbWVab25lfQogICAgICAgIHx8ICRQYXJhbXtVc2VyVGltZVpvbmV9CiAgICAgICAgfHwgJERhdGVUaW1lT2JqZWN0LT5PVE9CT1RpbWVab25lR2V0KCk7CgogICAgcmV0dXJuICRTZWxmOwp9CgpzdWIgUnVuIHsKICAgIG15ICggJFNlbGYsICVQYXJhbSApID0gQF87CgogICAgbXkgQE1vbnRoQXJyYXkgPSAoCiAgICAgICAgJycsICAgICAnSmFudWFyeScsICdGZWJydWFyeScsICdNYXJjaCcsICAgICAnQXByaWwnLCAgICdNYXknLAogICAgICAgICdKdW5lJywgJ0p1bHknLCAgICAnQXVndXN0JywgICAnU2VwdGVtYmVyJywgJ09jdG9iZXInLCAnTm92ZW1iZXInLAogICAgICAgICdEZWNlbWJlcicsCiAgICApOwogICAgbXkgQFdlZWtkYXlBcnJheSA9ICggJ01vbicsICdUdWUnLCAnV2VkJywgJ1RodScsICdGcmknLCAnU2F0JywgJ1N1bicsICk7CgogICAgIyBnZXQgbmVlZGVkIG9iamVjdHMKICAgIG15ICRMYXlvdXRPYmplY3QgICAgICAgICAgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6Ok91dHB1dDo6SFRNTDo6TGF5b3V0Jyk7CiAgICBteSAkUGFyYW1PYmplY3QgICAgICAgICAgID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OldlYjo6UmVxdWVzdCcpOwogICAgbXkgJFRpbWVBY2NvdW50aW5nT2JqZWN0ICA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycpOwogICAgbXkgJERhdGVUaW1lT2JqZWN0Q3VycmVudCA9ICRLZXJuZWw6Ok9NLT5DcmVhdGUoJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScpOwogICAgbXkgJFVzZXJPYmplY3QgICAgICAgICAgICA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpVc2VyJyk7CgogICAgIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKICAgICMgdGltZSBhY2NvdW50aW5nIHByb2plY3QgcmVwb3J0aW5nCiAgICAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIwogICAgaWYgKCAkU2VsZi0+e1N1YmFjdGlvbn0gZXEgJ1JlcG9ydGluZ1Byb2plY3QnICkgewoKICAgICAgICBteSAkQ29uZmlnID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpDb25maWcnKS0+R2V0KCJUaW1lQWNjb3VudGluZzo6RnJvbnRlbmQ6OiRTZWxmLT57U3ViYWN0aW9ufSIpOwoKICAgICAgICBteSAlRnJvbnRlbmQgPSAoKTsKCiAgICAgICAgIyBwZXJtaXNzaW9uIGNoZWNrCiAgICAgICAgaWYgKCAhJFNlbGYtPntBY2Nlc3NSb30gKSB7CiAgICAgICAgICAgIHJldHVybiAkTGF5b3V0T2JqZWN0LT5Ob1Blcm1pc3Npb24oCiAgICAgICAgICAgICAgICBXaXRoSGVhZGVyID0+ICd5ZXMnLAogICAgICAgICAgICApOwogICAgICAgIH0KCiAgICAgICAgIyBnZXQgcGFyYW1zCiAgICAgICAgJFBhcmFte1Byb2plY3RJRH0gPSAkUGFyYW1PYmplY3QtPkdldFBhcmFtKCBQYXJhbSA9PiAnUHJvamVjdElEJyApOwoKICAgICAgICAjIGNoZWNrIG5lZWRlZCBwYXJhbXMKICAgICAgICBpZiAoICEkUGFyYW17UHJvamVjdElEfSApIHsKCiAgICAgICAgICAgIHJldHVybiAkTGF5b3V0T2JqZWN0LT5FcnJvclNjcmVlbigKICAgICAgICAgICAgICAgIE1lc3NhZ2UgPT4gVHJhbnNsYXRhYmxlKCdSZXBvcnRpbmdQcm9qZWN0OiBOZWVkIFByb2plY3RJRCcpCiAgICAgICAgICAgICk7CiAgICAgICAgfQoKICAgICAgICBteSAlQWN0aW9uICA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+QWN0aW9uU2V0dGluZ3NHZXQoKTsKICAgICAgICBteSAlUHJvamVjdCA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+UHJvamVjdFNldHRpbmdzR2V0KCk7CiAgICAgICAgJFBhcmFte1Byb2plY3R9ID0gJFByb2plY3R7UHJvamVjdH0tPnsgJFBhcmFte1Byb2plY3RJRH0gfTsKCiAgICAgICAgIyBnZXQgc3lzdGVtIHVzZXJzCiAgICAgICAgbXkgJVNob3duVXNlcnMgPSAkVXNlck9iamVjdC0+VXNlckxpc3QoCiAgICAgICAgICAgIFR5cGUgID0+ICdMb25nJywKICAgICAgICAgICAgVmFsaWQgPT4gMAogICAgICAgICk7CgogICAgICAgICRQYXJhbXtTaG93T25seUFjdGl2ZVVzZXJzfSA9ICRDb25maWctPntTaG93T25seUFjdGl2ZVVzZXJzfTsKCiAgICAgICAgaWYgKCAkUGFyYW17U2hvd09ubHlBY3RpdmVVc2Vyc30gKSB7CgogICAgICAgICAgICAjIGdldCByZWdpc3RlcmVkIHVzZXJzCiAgICAgICAgICAgIG15ICVSZWdpc3RlcmVkVXNlcnMgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlVzZXJMaXN0KCk7CgogICAgICAgICAgICAjIHJlZHVjZSBzaG93biB1c2VycyB0byBvbmx5IHRoZSBvbmVzIHRoYXQgYXJlIHJlZ2lzdGVyZWQgaW4gdGltZSBhY2NvdW50aW5nCiAgICAgICAgICAgICVTaG93blVzZXJzID0gbWFwIHsgJF8gPT4gJFNob3duVXNlcnN7JF99IH0ga2V5cyAlUmVnaXN0ZXJlZFVzZXJzOwogICAgICAgIH0KCiAgICAgICAgIyBuZWNlc3NhcnkgYmVjYXVzZSB0aGUgUHJvamVjdEFjdGlvblJlcG9ydGluZyBpcyBub3QgcmV3b3JrZWQKICAgICAgICBteSAoICRTZWMsICRNaW4sICRIb3VyLCAkQ3VycmVudERheSwgJE1vbnRoLCAkWWVhciApID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5TeXN0ZW1UaW1lMkRhdGUoCiAgICAgICAgICAgIFN5c3RlbVRpbWUgPT4gJERhdGVUaW1lT2JqZWN0Q3VycmVudC0+VG9FcG9jaCgpLAogICAgICAgICk7CiAgICAgICAgbXkgJVByb2plY3REYXRhID0gKCk7CiAgICAgICAgbXkgJVByb2plY3RUaW1lID0gKCk7CgogICAgICAgIG15IEBVc2VyV2hpdGVMaXN0OwoKICAgICAgICAjIE9ubHkgb25lIGZ1bmN0aW9uIHNob3VsZCBiZSBlbm91Z2gKICAgICAgICBmb3IgbXkgJFVzZXJJRCAoIHNvcnQga2V5cyAlU2hvd25Vc2VycyApIHsKCiAgICAgICAgICAgICMgT3ZlcnZpZXcgcGVyIHByb2plY3QgYW5kIGFjdGlvbgogICAgICAgICAgICAjIFJFTUFSSzogVGhpcyBpcyB0aGUgd3JvbmcgZnVuY3Rpb24gdG8gZ2V0IHRoaXMgaW5mb3JtYXRpb24KICAgICAgICAgICAgJVByb2plY3REYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Qcm9qZWN0QWN0aW9uUmVwb3J0aW5nKAogICAgICAgICAgICAgICAgWWVhciAgID0+ICRZZWFyLAogICAgICAgICAgICAgICAgTW9udGggID0+ICRNb250aCwKICAgICAgICAgICAgICAgIFVzZXJJRCA9PiAkVXNlcklELAogICAgICAgICAgICApOwogICAgICAgICAgICBpZiAoICRQcm9qZWN0RGF0YXsgJFBhcmFte1Byb2plY3RJRH0gfSApIHsKICAgICAgICAgICAgICAgIG15ICRVc2VyVG90YWxIb3Vyc0luUHJvamVjdDsKICAgICAgICAgICAgICAgIG15ICRBY3Rpb25zUmVmID0gJFByb2plY3REYXRheyAkUGFyYW17UHJvamVjdElEfSB9LT57QWN0aW9uc307CiAgICAgICAgICAgICAgICBmb3IgbXkgJEFjdGlvbklEICggc29ydCBrZXlzICV7JEFjdGlvbnNSZWZ9ICkgewogICAgICAgICAgICAgICAgICAgICRQcm9qZWN0VGltZXskQWN0aW9uSUR9LT57JFVzZXJJRH0tPntIb3Vyc30gPSAkQWN0aW9uc1JlZi0+eyRBY3Rpb25JRH0tPntUb3RhbH07CgogICAgICAgICAgICAgICAgICAgICMgcmVtZW1iZXIgdGhlIHN1bSBvZiBhbGwgaG91cnMgb2YgYWxsIHRhc2tzCiAgICAgICAgICAgICAgICAgICAgJFVzZXJUb3RhbEhvdXJzSW5Qcm9qZWN0ICs9ICRBY3Rpb25zUmVmLT57JEFjdGlvbklEfS0+e1RvdGFsfSB8fCAwOwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICMgcmVtZW1iZXIgb25seSB0aGUgdXNlcnMgdGhhdCBoYXMgYmVlbiBhZGRlZCBob3VycyB0byB0aGlzIHByb2plY3QKICAgICAgICAgICAgICAgIGlmICggZGVmaW5lZCAkVXNlclRvdGFsSG91cnNJblByb2plY3QgJiYgJFVzZXJUb3RhbEhvdXJzSW5Qcm9qZWN0ID4gMCApIHsKICAgICAgICAgICAgICAgICAgICBwdXNoIEBVc2VyV2hpdGVMaXN0LCAkVXNlcklEOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBpZiAoICRQYXJhbXtTaG93T25seUFjdGl2ZVVzZXJzfSApIHsKCiAgICAgICAgICAgICMgcmVkdWNlIHNob3duIHVzZXJzIHRvIG9ubHkgdGhlIG9uZXMgdGhhdCBhcmUgYWN0aXZlIGluIHRoZSBwcm9qZWN0IChieSBhZGRpbmcgaG91cnMpCiAgICAgICAgICAgICVTaG93blVzZXJzID0gbWFwIHsgJF8gPT4gJFNob3duVXNlcnN7JF99IH0gQFVzZXJXaGl0ZUxpc3Q7CiAgICAgICAgfQoKICAgICAgICBpZiAoICFJc0hhc2hSZWZXaXRoRGF0YSggXCVTaG93blVzZXJzICkgKSB7CiAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICAgICAgTmFtZSA9PiAnTm9Vc2VyRGF0YUZvdW5kTXNnJywKICAgICAgICAgICAgICAgIERhdGEgPT4ge30sCiAgICAgICAgICAgICk7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgICAgIE5hbWUgPT4gJ1VzZXJUYWJsZScsCiAgICAgICAgICAgICAgICBEYXRhID0+IHt9LAogICAgICAgICAgICApOwoKICAgICAgICAgICAgIyBzaG93IHRoZSBoZWFkZXIgbGluZQogICAgICAgICAgICBmb3IgbXkgJFVzZXJJRCAoIHNvcnQgeyAkU2hvd25Vc2Vyc3skYX0gY21wICRTaG93blVzZXJzeyRifSB9IGtleXMgJVNob3duVXNlcnMgKSB7CiAgICAgICAgICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgICAgICAgICBOYW1lID0+ICdVc2VyTmFtZScsCiAgICAgICAgICAgICAgICAgICAgRGF0YSA9PiB7IFVzZXIgPT4gJFNob3duVXNlcnN7JFVzZXJJRH0gfSwKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgICMgYmV0dGVyIHNvbHV0aW9uIGZvciBzb3J0IGFjdGlvbnMgbmVjZXNzYXJ5CiAgICAgICAgICAgIG15ICVOZXdBY3Rpb24gPSAoKTsKICAgICAgICAgICAgZm9yIG15ICRBY3Rpb25JRCAoIHNvcnQga2V5cyAlUHJvamVjdFRpbWUgKSB7CiAgICAgICAgICAgICAgICAkTmV3QWN0aW9ueyRBY3Rpb25JRH0gPSAkQWN0aW9ueyRBY3Rpb25JRH0tPntBY3Rpb259OwogICAgICAgICAgICB9CiAgICAgICAgICAgICVBY3Rpb24gPSAlTmV3QWN0aW9uOwoKICAgICAgICAgICAgIyBzaG93IHRoZSByZXN1bHRzCiAgICAgICAgICAgIG15ICVUb3RhbCA9ICgpOwogICAgICAgICAgICBmb3IgbXkgJEFjdGlvbklEICggc29ydCB7ICRBY3Rpb257JGF9IGNtcCAkQWN0aW9ueyRifSB9IGtleXMgJUFjdGlvbiApIHsKICAgICAgICAgICAgICAgIG15ICRUb3RhbEhvdXJzID0gMDsKICAgICAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICAgICAgICAgIE5hbWUgPT4gJ0FjdGlvbicsCiAgICAgICAgICAgICAgICAgICAgRGF0YSA9PiB7CiAgICAgICAgICAgICAgICAgICAgICAgIEFjdGlvbiA9PiAkQWN0aW9ueyRBY3Rpb25JRH0sCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICBmb3IgbXkgJFVzZXJJRCAoIHNvcnQgeyAkU2hvd25Vc2Vyc3skYX0gY21wICRTaG93blVzZXJzeyRifSB9IGtleXMgJVNob3duVXNlcnMgKSB7CiAgICAgICAgICAgICAgICAgICAgJFRvdGFsSG91cnMgICAgICs9ICRQcm9qZWN0VGltZXskQWN0aW9uSUR9eyRVc2VySUR9e0hvdXJzfSB8fCAwOwogICAgICAgICAgICAgICAgICAgICRUb3RhbHskVXNlcklEfSArPSAkUHJvamVjdFRpbWV7JEFjdGlvbklEfXskVXNlcklEfXtIb3Vyc30gfHwgMDsKICAgICAgICAgICAgICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgICAgICAgICAgICAgTmFtZSA9PiAnVXNlcicsCiAgICAgICAgICAgICAgICAgICAgICAgIERhdGEgPT4gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgSG91cnMgPT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcHJpbnRmKCAiJS4yZiIsICRQcm9qZWN0VGltZXskQWN0aW9uSUR9eyRVc2VySUR9e0hvdXJzfSB8fCAwICksCiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAjIFRvdGFsCiAgICAgICAgICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgICAgICAgICBOYW1lID0+ICdVc2VyJywKICAgICAgICAgICAgICAgICAgICBEYXRhID0+IHsKICAgICAgICAgICAgICAgICAgICAgICAgSG91cnMgPT4gc3ByaW50ZiggIiUuMmYiLCAkVG90YWxIb3VycyApLAogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CiAgICAgICAgICAgICRQYXJhbXtUb3RhbEFsbH0gPSAwOwogICAgICAgICAgICBmb3IgbXkgJFVzZXJJRCAoIHNvcnQgeyAkU2hvd25Vc2Vyc3skYX0gY21wICRTaG93blVzZXJzeyRifSB9IGtleXMgJVNob3duVXNlcnMgKSB7CiAgICAgICAgICAgICAgICAkUGFyYW17VG90YWxBbGx9ICs9ICRUb3RhbHskVXNlcklEfTsKICAgICAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICAgICAgICAgIE5hbWUgPT4gJ1VzZXJUb3RhbCcsCiAgICAgICAgICAgICAgICAgICAgRGF0YSA9PiB7CiAgICAgICAgICAgICAgICAgICAgICAgIFRvdGFsID0+IHNwcmludGYoICIlLjJmIiwgJFRvdGFseyRVc2VySUR9ICksCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICAgICAgTmFtZSA9PiAnVXNlclRvdGFsQWxsJywKICAgICAgICAgICAgICAgIERhdGEgPT4gewogICAgICAgICAgICAgICAgICAgIFRvdGFsQWxsID0+IHNwcmludGYoICIlLjJmIiwgJFBhcmFte1RvdGFsQWxsfSApLAogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgKTsKICAgICAgICB9CiAgICAgICAgbXkgQFByb2plY3RIaXN0b3J5QXJyYXkgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlByb2plY3RIaXN0b3J5KAogICAgICAgICAgICBQcm9qZWN0SUQgPT4gJFBhcmFte1Byb2plY3RJRH0sCiAgICAgICAgKTsKCiAgICAgICAgaWYgKCAhSXNBcnJheVJlZldpdGhEYXRhKCBcQFByb2plY3RIaXN0b3J5QXJyYXkgKSApIHsKICAgICAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgICAgICBOYW1lID0+ICdOb1Byb2plY3REYXRhRm91bmRNc2cnLAogICAgICAgICAgICAgICAgRGF0YSA9PiB7fSwKICAgICAgICAgICAgKTsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICAgICAgTmFtZSA9PiAnUHJvamVjdFRhYmxlJywKICAgICAgICAgICAgICAgIERhdGEgPT4gewogICAgICAgICAgICAgICAgICAgICVQYXJhbSwKICAgICAgICAgICAgICAgICAgICAlRnJvbnRlbmQKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICk7CgogICAgICAgICAgICBmb3IgbXkgJFJvdyAoQFByb2plY3RIaXN0b3J5QXJyYXkpIHsKICAgICAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICAgICAgICAgIE5hbWUgPT4gJ1JvdycsCiAgICAgICAgICAgICAgICAgICAgRGF0YSA9PiB7CiAgICAgICAgICAgICAgICAgICAgICAgIFVzZXIgICA9PiAkUm93LT57VXNlcn0sCiAgICAgICAgICAgICAgICAgICAgICAgIEFjdGlvbiA9PiAkUm93LT57QWN0aW9ufSwKICAgICAgICAgICAgICAgICAgICAgICAgUmVtYXJrID0+ICRSb3ctPntSZW1hcmt9IHx8ICctLScsCiAgICAgICAgICAgICAgICAgICAgICAgIFBlcmlvZCA9PiBzcHJpbnRmKCAiJS4yZiIsICRSb3ctPntQZXJpb2R9ICksCiAgICAgICAgICAgICAgICAgICAgICAgIERhdGUgICA9PiAkUm93LT57RGF0ZX0sCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgICMgc2hvdyB0aGUgdG90YWwgc3VtIG9mIGhvdXJzIGF0IHRoZSBlbmQgb2YgdGhlIGhpc3RvcnkgbGlzdAogICAgICAgICAgICAjIEkgYWxzbyBjYW4gdXNlICRQYXJhbXtUb3RhbEFsbH0KICAgICAgICAgICAgbXkgJFByb2plY3RUb3RhbEhvdXJzID0gc3ByaW50ZigKICAgICAgICAgICAgICAgICIlLjJmIiwKICAgICAgICAgICAgICAgICRUaW1lQWNjb3VudGluZ09iamVjdC0+UHJvamVjdFRvdGFsSG91cnMoCiAgICAgICAgICAgICAgICAgICAgUHJvamVjdElEID0+ICRQYXJhbXtQcm9qZWN0SUR9LAogICAgICAgICAgICAgICAgKQogICAgICAgICAgICApOwoKICAgICAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgICAgICBOYW1lID0+ICdIaXN0b3J5VG90YWwnLAogICAgICAgICAgICAgICAgRGF0YSA9PiB7CiAgICAgICAgICAgICAgICAgICAgSGlzdG9yeVRvdGFsID0+ICRQcm9qZWN0VG90YWxIb3VycyB8fCAwLAogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgICMgYnVpbGQgb3V0cHV0CiAgICAgICAgbXkgJE91dHB1dCA9ICRMYXlvdXRPYmplY3QtPkhlYWRlcigKICAgICAgICAgICAgVGl0bGUgPT4gVHJhbnNsYXRhYmxlKCdSZXBvcnRpbmcgUHJvamVjdCcpLAogICAgICAgICk7CiAgICAgICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5OYXZpZ2F0aW9uQmFyKCk7CiAgICAgICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5PdXRwdXQoCiAgICAgICAgICAgIERhdGEgPT4gewogICAgICAgICAgICAgICAgJVBhcmFtLAogICAgICAgICAgICAgICAgJUZyb250ZW5kLAogICAgICAgICAgICB9LAogICAgICAgICAgICBUZW1wbGF0ZUZpbGUgPT4gJ0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmdQcm9qZWN0JywKICAgICAgICApOwogICAgICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+Rm9vdGVyKCk7CgogICAgICAgIHJldHVybiAkT3V0cHV0OwogICAgfQoKICAgICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCiAgICAjIHRpbWUgYWNjb3VudGluZyByZXBvcnRpbmcKICAgICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCiAgICBteSAlRnJvbnRlbmQgICA9ICgpOwogICAgbXkgJVNob3duVXNlcnMgPSAkVXNlck9iamVjdC0+VXNlckxpc3QoCiAgICAgICAgVHlwZSAgPT4gJ0xvbmcnLAogICAgICAgIFZhbGlkID0+IDAKICAgICk7CiAgICBteSAoICRTZWMsICRNaW4sICRIb3VyLCAkQ3VycmVudERheSwgJE1vbnRoLCAkWWVhciApID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5TeXN0ZW1UaW1lMkRhdGUoCiAgICAgICAgU3lzdGVtVGltZSA9PiAkRGF0ZVRpbWVPYmplY3RDdXJyZW50LT5Ub0Vwb2NoKCksCiAgICApOwoKICAgICMgcGVybWlzc2lvbiBjaGVjawogICAgaWYgKCAhJFNlbGYtPntBY2Nlc3NSd30gKSB7CiAgICAgICAgcmV0dXJuICRMYXlvdXRPYmplY3QtPk5vUGVybWlzc2lvbigKICAgICAgICAgICAgV2l0aEhlYWRlciA9PiAneWVzJywKICAgICAgICApOwogICAgfQoKICAgIGZvciBteSAkUGFyYW1ldGVyIChxdyhTdGF0dXMgTW9udGggWWVhciBQcm9qZWN0U3RhdHVzU2hvdykpIHsKICAgICAgICAkUGFyYW17JFBhcmFtZXRlcn0gPSAkUGFyYW1PYmplY3QtPkdldFBhcmFtKCBQYXJhbSA9PiAkUGFyYW1ldGVyICk7CiAgICB9CgogICAgIyBDaGVjayBEYXRlCiAgICBpZiAoICEkUGFyYW17WWVhcn0gfHwgISRQYXJhbXtNb250aH0gKSB7CiAgICAgICAgJFBhcmFte1llYXJ9ICA9ICRZZWFyOwogICAgICAgICRQYXJhbXtNb250aH0gPSAkTW9udGg7CiAgICB9CiAgICBlbHNlIHsKICAgICAgICAkUGFyYW17TW9udGh9ID0gc3ByaW50ZiggIiUwMmQiLCAkUGFyYW17TW9udGh9ICk7CiAgICB9CgogICAgIyBzdG9yZSBsYXN0IHNjcmVlbgogICAgJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkF1dGhTZXNzaW9uJyktPlVwZGF0ZVNlc3Npb25JRCgKICAgICAgICBTZXNzaW9uSUQgPT4gJFNlbGYtPntTZXNzaW9uSUR9LAogICAgICAgIEtleSAgICAgICA9PiAnTGFzdFNjcmVlbicsCiAgICAgICAgVmFsdWUgICAgID0+CiAgICAgICAgICAgICJBY3Rpb249JFNlbGYtPntBY3Rpb259O1llYXI9JFBhcmFte1llYXJ9O01vbnRoPSRQYXJhbXtNb250aH0iLAogICAgKTsKCiAgICAkUGFyYW17TW9udGhfdG9fVGV4dH0gPSAkTW9udGhBcnJheVsgJFBhcmFte01vbnRofSBdOwoKICAgIG15ICVNb250aCA9ICgpOwogICAgZm9yIG15ICRJRCAoIDEgLi4gMTIgKSB7CiAgICAgICAgJE1vbnRoeyBzcHJpbnRmKCAiJTAyZCIsICRJRCApIH0gPSAkTW9udGhBcnJheVskSURdOwogICAgfQoKICAgICRGcm9udGVuZHtNb250aE9wdGlvbn0gPSAkTGF5b3V0T2JqZWN0LT5CdWlsZFNlbGVjdGlvbigKICAgICAgICBEYXRhICAgICAgICA9PiBcJU1vbnRoLAogICAgICAgIFNlbGVjdGVkSUQgID0+ICRQYXJhbXtNb250aH0gfHwgJycsCiAgICAgICAgTmFtZSAgICAgICAgPT4gJ01vbnRoJywKICAgICAgICBTb3J0ICAgICAgICA9PiAnTnVtZXJpY0tleScsCiAgICAgICAgVHJhbnNsYXRpb24gPT4gMSwKICAgICAgICBUaXRsZSAgICAgICA9PiAkTGF5b3V0T2JqZWN0LT57TGFuZ3VhZ2VPYmplY3R9LT5UcmFuc2xhdGUoIk1vbnRoIiksCiAgICApOwoKICAgIG15IEBZZWFyID0gKCAkWWVhciAtIDQgLi4gJFllYXIgKyAxICk7CgogICAgJEZyb250ZW5ke1llYXJPcHRpb259ID0gJExheW91dE9iamVjdC0+QnVpbGRTZWxlY3Rpb24oCiAgICAgICAgRGF0YSAgICAgICAgPT4gXEBZZWFyLAogICAgICAgIFNlbGVjdGVkSUQgID0+ICRQYXJhbXtZZWFyfSB8fCAnJywKICAgICAgICBOYW1lICAgICAgICA9PiAnWWVhcicsCiAgICAgICAgVHJhbnNsYXRpb24gPT4gMCwKICAgICAgICBUaXRsZSAgICAgICA9PiAkTGF5b3V0T2JqZWN0LT57TGFuZ3VhZ2VPYmplY3R9LT5UcmFuc2xhdGUoIlllYXIiKSwKICAgICk7CgogICAgKCAkUGFyYW17WWVhckJhY2t9LCAkUGFyYW17TW9udGhCYWNrfSwgJFBhcmFte0RheUJhY2t9ICkKICAgICAgICA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+QWRkRGVsdGFZTUQoICRQYXJhbXtZZWFyfSwgJFBhcmFte01vbnRofSwgMSwgMCwgLTEsIDAgKTsKICAgICggJFBhcmFte1llYXJOZXh0fSwgJFBhcmFte01vbnRoTmV4dH0sICRQYXJhbXtEYXlOZXh0fSApCiAgICAgICAgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPkFkZERlbHRhWU1EKCAkUGFyYW17WWVhcn0sICRQYXJhbXtNb250aH0sIDEsIDAsIDEsIDAgKTsKCiAgICBteSAlVXNlclJlcG9ydCA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+VXNlclJlcG9ydGluZygKICAgICAgICBZZWFyICAgPT4gJFBhcmFte1llYXJ9LAogICAgICAgIE1vbnRoICA9PiAkUGFyYW17TW9udGh9LAogICAgICAgIFVzZXJJRCA9PiAkUGFyYW17VXNlcklEfSwKICAgICk7CgogICAgbXkgJVVzZXJCYXNpY3MgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlVzZXJMaXN0KCk7CgogICAgaWYgKCAhSXNIYXNoUmVmV2l0aERhdGEoIFwlU2hvd25Vc2VycyApIHx8ICFJc0hhc2hSZWZXaXRoRGF0YSggXCVVc2VyUmVwb3J0ICkgKSB7CiAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgIE5hbWUgPT4gJ05vVXNlckRhdGFGb3VuZE1zZycsCiAgICAgICAgICAgIERhdGEgPT4ge30sCiAgICAgICAgKTsKICAgIH0KICAgIGVsc2UgewoKICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgTmFtZSA9PiAnVXNlclRhYmxlJywKICAgICAgICAgICAgRGF0YSA9PiB7ICVQYXJhbSwgJUZyb250ZW5kIH0sCiAgICAgICAgKTsKCiAgICAgICAgVVNFUklEOgogICAgICAgIGZvciBteSAkVXNlcklEICggc29ydCB7ICRTaG93blVzZXJzeyRhfSBjbXAgJFNob3duVXNlcnN7JGJ9IH0ga2V5cyAlU2hvd25Vc2VycyApIHsKICAgICAgICAgICAgbmV4dCBVU0VSSUQgaWYgISRVc2VyUmVwb3J0eyRVc2VySUR9OwoKICAgICAgICAgICAgZm9yIG15ICRQYXJhbWV0ZXIgKAogICAgICAgICAgICAgICAgcXcoTGVhdmVEYXkgT3ZlcnRpbWUgV29ya2luZ0hvdXJzIFNpY2sgTGVhdmVEYXlSZW1haW5pbmcgT3ZlcnRpbWVUb3RhbCkKICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgJFBhcmFteyRQYXJhbWV0ZXJ9ID0gc3ByaW50ZiggIiUuMmYiLCAoICRVc2VyUmVwb3J0eyRVc2VySUR9eyRQYXJhbWV0ZXJ9IHx8IDAgKSApOwogICAgICAgICAgICAgICAgJFBhcmFteyAnVG90YWwnIC4gJFBhcmFtZXRlciB9ICs9ICRQYXJhbXskUGFyYW1ldGVyfTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgIyBTaG93IE92ZXJ0aW1lIGlmIGFsbG93ZWQKICAgICAgICAgICAgaWYgKCAhJFVzZXJCYXNpY3N7JFVzZXJJRH17U2hvd092ZXJ0aW1lfSApIHsKICAgICAgICAgICAgICAgICRQYXJhbXtPdmVydGltZX0gICAgICA9ICcnOwogICAgICAgICAgICAgICAgJFBhcmFte092ZXJ0aW1lVG90YWx9ID0gJyc7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgICRQYXJhbXtVc2VyfSAgID0gJFNob3duVXNlcnN7JFVzZXJJRH07CiAgICAgICAgICAgICRQYXJhbXtVc2VySUR9ID0gJFVzZXJJRDsKICAgICAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgICAgICBOYW1lID0+ICdVc2VyJywKICAgICAgICAgICAgICAgIERhdGEgPT4geyAlUGFyYW0sICVGcm9udGVuZCB9LAogICAgICAgICAgICApOwogICAgICAgIH0KCiAgICAgICAgZm9yIG15ICRQYXJhbWV0ZXIgKAogICAgICAgICAgICBxdyhUb3RhbExlYXZlRGF5IFRvdGFsT3ZlcnRpbWUgVG90YWxXb3JraW5nSG91cnMKICAgICAgICAgICAgVG90YWxTaWNrIFRvdGFsTGVhdmVEYXlSZW1haW5pbmcgVG90YWxPdmVydGltZVRvdGFsKQogICAgICAgICAgICApCiAgICAgICAgewogICAgICAgICAgICAkUGFyYW17JFBhcmFtZXRlcn0gPSBzcHJpbnRmKCAiJS4yZiIsICggJFBhcmFteyRQYXJhbWV0ZXJ9ICkgfHwgMCApOwogICAgICAgIH0KCiAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgIE5hbWUgPT4gJ1VzZXJHcmFuZFRvdGFsJywKICAgICAgICAgICAgRGF0YSA9PiB7JVBhcmFtfSwKICAgICAgICApOwogICAgfQoKICAgICMgc2hvdyB0aGUgcmVwb3J0IHNvcnQgYnkgcHJvamVjdHMKICAgIGlmICggISRQYXJhbXtQcm9qZWN0U3RhdHVzU2hvd30gfHwgJFBhcmFte1Byb2plY3RTdGF0dXNTaG93fSBlcSAndmFsaWQnICkgewogICAgICAgICRQYXJhbXtQcm9qZWN0U3RhdHVzU2hvd30gPSAnYWxsJzsKICAgIH0KICAgIGVsc2lmICggJFBhcmFte1Byb2plY3RTdGF0dXNTaG93fSBlcSAnYWxsJyApIHsKICAgICAgICAkUGFyYW17UHJvamVjdFN0YXR1c1Nob3d9ID0gJ3ZhbGlkJzsKICAgIH0KCiAgICAkUGFyYW17U2hvd1Byb2plY3RzfSA9ICdTaG93ICcgLiAkUGFyYW17UHJvamVjdFN0YXR1c1Nob3d9IC4gJyBwcm9qZWN0cyc7CgogICAgbXkgJVByb2plY3REYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Qcm9qZWN0QWN0aW9uUmVwb3J0aW5nKAogICAgICAgIFllYXIgID0+ICRQYXJhbXtZZWFyfSwKICAgICAgICBNb250aCA9PiAkUGFyYW17TW9udGh9LAogICAgKTsKCiAgICBpZiAoICFJc0hhc2hSZWZXaXRoRGF0YSggXCVQcm9qZWN0RGF0YSApICkgewogICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICBOYW1lID0+ICdOb1Byb2plY3REYXRhRm91bmRNc2cnLAogICAgICAgICAgICBEYXRhID0+IHt9LAogICAgICAgICk7CiAgICAgICAgJFBhcmFte1Byb2plY3RTdGF0dXNMaW5rQ2xhc3N9ID0gJ0hpZGRlbic7CiAgICB9CiAgICBlbHNlIHsKICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgTmFtZSA9PiAnUHJvamVjdFRhYmxlJywKICAgICAgICAgICAgRGF0YSA9PiB7ICVQYXJhbSwgJUZyb250ZW5kIH0sCiAgICAgICAgKTsKCiAgICAgICAgIyBSRU1BUks6IG1lcmdlIHRoaXMgcHJvamVjdCByZXBvcnRpbmcgbGlzdCB3aXRoIHRoZSBsaXN0IGluIG92ZXJ2aWV3CiAgICAgICAgUFJPSkVDVElEOgogICAgICAgIGZvciBteSAkUHJvamVjdElEICgKICAgICAgICAgICAgc29ydCB7ICRQcm9qZWN0RGF0YXskYX0tPntOYW1lfSBjbXAgJFByb2plY3REYXRheyRifS0+e05hbWV9IH0KICAgICAgICAgICAga2V5cyAlUHJvamVjdERhdGEKICAgICAgICAgICAgKQogICAgICAgIHsKICAgICAgICAgICAgbXkgJFByb2plY3RSZWYgPSAkUHJvamVjdERhdGF7JFByb2plY3RJRH07CiAgICAgICAgICAgIG15ICRBY3Rpb25zUmVmID0gJFByb2plY3RSZWYtPntBY3Rpb25zfTsKCiAgICAgICAgICAgICRQYXJhbXtQcm9qZWN0fSA9ICcnOwogICAgICAgICAgICAkUGFyYW17U3RhdHVzfSAgPSAkUHJvamVjdFJlZi0+e1N0YXR1c30gPyAnJyA6ICdwYXNzaXYnOwoKICAgICAgICAgICAgbXkgJFRvdGFsICAgICAgPSAwOwogICAgICAgICAgICBteSAkVG90YWxUb3RhbCA9IDA7CgogICAgICAgICAgICBuZXh0IFBST0pFQ1RJRCBpZiAkUGFyYW17UHJvamVjdFN0YXR1c1Nob3d9IGVxICdhbGwnICYmICRQYXJhbXtTdGF0dXN9OwoKICAgICAgICAgICAgZm9yIG15ICRBY3Rpb25JRCAoCiAgICAgICAgICAgICAgICBzb3J0IHsgJEFjdGlvbnNSZWYtPnskYX0tPntOYW1lfSBjbXAgJEFjdGlvbnNSZWYtPnskYn0tPntOYW1lfSB9CiAgICAgICAgICAgICAgICBrZXlzICV7JEFjdGlvbnNSZWZ9CiAgICAgICAgICAgICAgICApCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIG15ICRBY3Rpb25SZWYgPSAkQWN0aW9uc1JlZi0+eyRBY3Rpb25JRH07CgogICAgICAgICAgICAgICAgJFBhcmFte1Byb2plY3RJRH0gID0gJFByb2plY3RJRDsKICAgICAgICAgICAgICAgICRQYXJhbXtBY3Rpb259ICAgICA9ICRBY3Rpb25SZWYtPntOYW1lfTsKICAgICAgICAgICAgICAgICRQYXJhbXtIb3Vyc30gICAgICA9IHNwcmludGYoICIlLjJmIiwgJEFjdGlvblJlZi0+e1Blck1vbnRofSB8fCAwICk7CiAgICAgICAgICAgICAgICAkUGFyYW17SG91cnNUb3RhbH0gPSBzcHJpbnRmKCAiJS4yZiIsICRBY3Rpb25SZWYtPntUb3RhbH0gICAgfHwgMCApOwogICAgICAgICAgICAgICAgJFRvdGFsICAgICAgKz0gJFBhcmFte0hvdXJzfTsKICAgICAgICAgICAgICAgICRUb3RhbFRvdGFsICs9ICRQYXJhbXtIb3Vyc1RvdGFsfTsKICAgICAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICAgICAgICAgIE5hbWUgPT4gJ0FjdGlvbicsCiAgICAgICAgICAgICAgICAgICAgRGF0YSA9PiB7JVBhcmFtfSwKICAgICAgICAgICAgICAgICk7CgogICAgICAgICAgICAgICAgaWYgKCAhJFBhcmFte1Byb2plY3R9ICkgewogICAgICAgICAgICAgICAgICAgICRQYXJhbXtQcm9qZWN0fSA9ICRQcm9qZWN0UmVmLT57TmFtZX07CiAgICAgICAgICAgICAgICAgICAgbXkgJFByb2plY3REZXNjcmlwdGlvbiA9ICRMYXlvdXRPYmplY3QtPkFzY2lpMkh0bWwoCiAgICAgICAgICAgICAgICAgICAgICAgIFRleHQgICAgICAgICAgID0+ICRQcm9qZWN0UmVmLT57RGVzY3JpcHRpb259LAogICAgICAgICAgICAgICAgICAgICAgICBIVE1MUmVzdWx0TW9kZSA9PiAxLAogICAgICAgICAgICAgICAgICAgICAgICBOZXdMaW5lICAgICAgICA9PiA1MCwKICAgICAgICAgICAgICAgICAgICApOwoKICAgICAgICAgICAgICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgICAgICAgICAgICAgTmFtZSA9PiAnUHJvamVjdCcsCiAgICAgICAgICAgICAgICAgICAgICAgIERhdGEgPT4gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUm93U3BhbiAgICAgICAgICAgID0+ICggMSArIHNjYWxhciBrZXlzICV7JEFjdGlvbnNSZWZ9ICksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdGF0dXMgICAgICAgICAgICAgPT4gJFBhcmFte1N0YXR1c30sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcm9qZWN0RGVzY3JpcHRpb24gPT4gJFByb2plY3REZXNjcmlwdGlvbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByb2plY3QgICAgICAgICAgICA9PiAkUHJvamVjdFJlZi0+e05hbWV9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJvamVjdElEICAgICAgICAgID0+ICRQcm9qZWN0SUQsCiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgJFBhcmFte0hvdXJzfSAgICAgID0gc3ByaW50ZiggIiUuMmYiLCAkVG90YWwgKTsKICAgICAgICAgICAgJFBhcmFte0hvdXJzVG90YWx9ID0gc3ByaW50ZiggIiUuMmYiLCAkVG90YWxUb3RhbCApOwogICAgICAgICAgICAkUGFyYW17VG90YWxIb3Vyc30gICAgICArPSAkVG90YWw7CiAgICAgICAgICAgICRQYXJhbXtUb3RhbEhvdXJzVG90YWx9ICs9ICRUb3RhbFRvdGFsOwogICAgICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgICAgIE5hbWUgPT4gJ0FjdGlvblRvdGFsJywKICAgICAgICAgICAgICAgIERhdGEgPT4geyAlUGFyYW0sICVGcm9udGVuZCB9LAogICAgICAgICAgICApOwogICAgICAgIH0KCiAgICAgICAgJFBhcmFte1RvdGFsSG91cnN9ICAgICAgfHw9IDA7CiAgICAgICAgJFBhcmFte1RvdGFsSG91cnNUb3RhbH0gfHw9IDA7CgogICAgICAgICRQYXJhbXtUb3RhbEhvdXJzfSAgICAgID0gc3ByaW50ZiggIiUuMmYiLCAkUGFyYW17VG90YWxIb3Vyc30gKTsKICAgICAgICAkUGFyYW17VG90YWxIb3Vyc1RvdGFsfSA9IHNwcmludGYoICIlLjJmIiwgJFBhcmFte1RvdGFsSG91cnNUb3RhbH0gKTsKCiAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgIE5hbWUgPT4gJ1Byb2plY3RHcmFuZFRvdGFsJywKICAgICAgICAgICAgRGF0YSA9PiB7ICVQYXJhbSwgJUZyb250ZW5kIH0sCiAgICAgICAgKTsKICAgIH0KCiAgICAjIGJ1aWxkIG91dHB1dAogICAgbXkgJE91dHB1dCA9ICRMYXlvdXRPYmplY3QtPkhlYWRlcigKICAgICAgICBUaXRsZSA9PiBUcmFuc2xhdGFibGUoJ1JlcG9ydGluZycpLAogICAgKTsKICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+TmF2aWdhdGlvbkJhcigpOwogICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5PdXRwdXQoCiAgICAgICAgRGF0YSAgICAgICAgID0+IHsgJVBhcmFtLCAlRnJvbnRlbmQgfSwKICAgICAgICBUZW1wbGF0ZUZpbGUgPT4gJ0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcnCiAgICApOwogICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5Gb290ZXIoKTsKCiAgICByZXR1cm4gJE91dHB1dDsKfQoKMTsK</File>
        <File Location="Kernel/Modules/AgentTimeAccountingReportingTicket.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TW9kdWxlczo6QWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldDsKCnVzZSBzdHJpY3Q7CnVzZSB3YXJuaW5nczsKCnVzZSBLZXJuZWw6Okxhbmd1YWdlIHF3KFRyYW5zbGF0YWJsZSk7Cgp1c2UgS2VybmVsOjpTeXN0ZW06OlZhcmlhYmxlQ2hlY2sgcXcoOmFsbCk7CgpvdXIgJE9iamVjdE1hbmFnZXJEaXNhYmxlZCA9IDE7CgpzdWIgbmV3IHsKICAgIG15ICggJFR5cGUsICVQYXJhbSApID0gQF87CgogICAgIyBhbGxvY2F0ZSBuZXcgaGFzaCBmb3Igb2JqZWN0CiAgICBteSAkU2VsZiA9IHslUGFyYW19OwogICAgYmxlc3MoICRTZWxmLCAkVHlwZSApOwoKICAgIG15ICREYXRlVGltZU9iamVjdCA9ICRLZXJuZWw6Ok9NLT5DcmVhdGUoJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScpOwoKICAgICRTZWxmLT57VGltZVpvbmV9ID0gJFBhcmFte1RpbWVab25lfQogICAgICAgIHx8ICRQYXJhbXtVc2VyVGltZVpvbmV9CiAgICAgICAgfHwgJERhdGVUaW1lT2JqZWN0LT5PVE9CT1RpbWVab25lR2V0KCk7CgogICAgcmV0dXJuICRTZWxmOwp9CgpzdWIgUnVuIHsKICAgIG15ICggJFNlbGYsICVQYXJhbSApID0gQF87CgogICAgbXkgQE1vbnRoQXJyYXkgPSAoCiAgICAgICAgJycsICAgICAnSmFudWFyeScsICdGZWJydWFyeScsICdNYXJjaCcsICAgICAnQXByaWwnLCAgICdNYXknLAogICAgICAgICdKdW5lJywgJ0p1bHknLCAgICAnQXVndXN0JywgICAnU2VwdGVtYmVyJywgJ09jdG9iZXInLCAnTm92ZW1iZXInLAogICAgICAgICdEZWNlbWJlcicsCiAgICApOwogICAgbXkgQFdlZWtkYXlBcnJheSA9ICggJ01vbicsICdUdWUnLCAnV2VkJywgJ1RodScsICdGcmknLCAnU2F0JywgJ1N1bicsICk7CgogICAgIyBnZXQgbmVlZGVkIG9iamVjdHMKICAgIG15ICRMYXlvdXRPYmplY3QgICAgICAgICAgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6Ok91dHB1dDo6SFRNTDo6TGF5b3V0Jyk7CiAgICBteSAkUGFyYW1PYmplY3QgICAgICAgICAgID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OldlYjo6UmVxdWVzdCcpOwogICAgbXkgJFRpbWVBY2NvdW50aW5nT2JqZWN0ICA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycpOwogICAgbXkgJERhdGVUaW1lT2JqZWN0Q3VycmVudCA9ICRLZXJuZWw6Ok9NLT5DcmVhdGUoJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScpOwogICAgbXkgJFVzZXJPYmplY3QgICAgICAgICAgICA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpVc2VyJyk7CgogICAgIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKICAgICMgdGltZSBhY2NvdW50aW5nIHRpY2tldCByZXBvcnRpbmcKICAgICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCiAgICBteSAkQ29uZmlnID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpDb25maWcnKS0+R2V0KCJUaW1lQWNjb3VudGluZzo6RnJvbnRlbmQ6OlJlcG9ydGluZ1Byb2plY3QiKTsKCiAgICBteSAlRnJvbnRlbmQgPSAoKTsKCiAgICAjIHBlcm1pc3Npb24gY2hlY2sKICAgIGlmICggISRTZWxmLT57QWNjZXNzUm99ICkgewogICAgICAgIHJldHVybiAkTGF5b3V0T2JqZWN0LT5Ob1Blcm1pc3Npb24oCiAgICAgICAgICAgIFdpdGhIZWFkZXIgPT4gJ3llcycsCiAgICAgICAgKTsKICAgIH0KCiAgICAjIGdldCBwYXJhbXMKICAgICRQYXJhbXtUaWNrZXRJRH0gPSAkUGFyYW1PYmplY3QtPkdldFBhcmFtKCBQYXJhbSA9PiAnVGlja2V0SUQnICk7CgogICAgIyBjaGVjayBuZWVkZWQgcGFyYW1zCiAgICBpZiAoICEkUGFyYW17VGlja2V0SUR9ICkgewogICAgICAgIHJldHVybiAkTGF5b3V0T2JqZWN0LT5FcnJvclNjcmVlbigKICAgICAgICAgICAgTWVzc2FnZSA9PiBUcmFuc2xhdGFibGUoJ1JlcG9ydGluZ1Byb2plY3Q6IE5lZWQgVGlja2V0SUQnKQogICAgICAgICk7CiAgICB9CgogICAgIyBnZXQgbmVlZGVkIG9iamVjdHMKICAgIG15ICRUaWNrZXRPYmplY3QgID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlRpY2tldCcpOwogICAgbXkgJEFydGljbGVPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VGlja2V0OjpBcnRpY2xlJyk7CgogICAgIyBjaGVjayBwZXJtaXNzaW9ucwogICAgbXkgJEFjY2VzcyA9ICRUaWNrZXRPYmplY3QtPlRpY2tldFBlcm1pc3Npb24oCiAgICAgICAgVHlwZSAgICAgPT4gJ3JvJywKICAgICAgICBUaWNrZXRJRCA9PiAkUGFyYW17VGlja2V0SUR9LAogICAgICAgIFVzZXJJRCAgID0+ICRTZWxmLT57VXNlcklEfQogICAgKTsKCiAgICAjIGVycm9yIHNjcmVlbiwgZG9uJ3Qgc2hvdyB0aWNrZXQKICAgIHJldHVybiAkTGF5b3V0T2JqZWN0LT5Ob1Blcm1pc3Npb24oCiAgICAgICAgTWVzc2FnZSA9PiBUcmFuc2xhdGFibGUoCiAgICAgICAgICAgICJUaGlzIHRpY2tldCBkb2VzIG5vdCBleGlzdCwgb3IgeW91IGRvbid0IGhhdmUgcGVybWlzc2lvbnMgdG8gYWNjZXNzIGl0IGluIGl0cyBjdXJyZW50IHN0YXRlLiIKICAgICAgICApLAogICAgICAgIFdpdGhIZWFkZXIgPT4gJFNlbGYtPntTdWJhY3Rpb259ICYmICRTZWxmLT57U3ViYWN0aW9ufSBlcSAnQXJ0aWNsZVVwZGF0ZScgPyAnbm8nIDogJ3llcycsCiAgICApIGlmICEkQWNjZXNzOwoKICAgICMgZ2V0IHRpY2tldCBhdHRyaWJ1dGVzCiAgICBteSAlVGlja2V0ID0gJFRpY2tldE9iamVjdC0+VGlja2V0R2V0KAogICAgICAgIFRpY2tldElEICAgICAgPT4gJFBhcmFte1RpY2tldElEfSwKICAgICAgICBEeW5hbWljRmllbGRzID0+IDEsCiAgICApOwoKICAgICMgZ2V0IEFDTCByZXN0cmljdGlvbnMKICAgIG15ICVQb3NzaWJsZUFjdGlvbnMgPSAoCiAgICAgICAgQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldCA9PiAnQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZ1RpY2tldCcsCiAgICApOwoKICAgIG15ICRBQ0wgPSAkVGlja2V0T2JqZWN0LT5UaWNrZXRBY2woCiAgICAgICAgRGF0YSAgICAgICAgICA9PiBcJVBvc3NpYmxlQWN0aW9ucywKICAgICAgICBBY3Rpb24gICAgICAgID0+ICRTZWxmLT57QWN0aW9ufSwKICAgICAgICBUaWNrZXRJRCAgICAgID0+ICRQYXJhbXtUaWNrZXRJRH0sCiAgICAgICAgUmV0dXJuVHlwZSAgICA9PiAnQWN0aW9uJywKICAgICAgICBSZXR1cm5TdWJUeXBlID0+ICctJywKICAgICAgICBVc2VySUQgICAgICAgID0+ICRTZWxmLT57VXNlcklEfSwKICAgICk7CgogICAgbXkgJUFjbEFjdGlvbiA9ICVQb3NzaWJsZUFjdGlvbnM7CiAgICBpZiAoJEFDTCkgewogICAgICAgICVBY2xBY3Rpb24gPSAkVGlja2V0T2JqZWN0LT5UaWNrZXRBY2xBY3Rpb25EYXRhKCk7CiAgICB9CgogICAgIyBjaGVjayBpZiBBQ0wgcmVzdHJpY3Rpb25zIGV4aXN0CiAgICBteSAlQWNsQWN0aW9uTG9va3VwID0gcmV2ZXJzZSAlQWNsQWN0aW9uOwoKICAgICMgc2hvdyBlcnJvciBzY3JlZW4gaWYgQUNMIHByb2hpYml0cyB0aGlzIGFjdGlvbgogICAgaWYgKCAhJEFjbEFjdGlvbkxvb2t1cHtBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0fSApIHsKICAgICAgICByZXR1cm4gJExheW91dE9iamVjdC0+Tm9QZXJtaXNzaW9uKCBXaXRoSGVhZGVyID0+ICd5ZXMnICk7CiAgICB9CgogICAgbXkgJFByb2plY3ROYW1lID0gJFNlbGYtPl9DaGVja1Byb2plY3ROYW1lKAogICAgICAgIFByb2plY3ROYW1lID0+ICRUaWNrZXR7Q3VzdG9tZXJJRH0gfHwgJycsCiAgICApOwoKICAgIG15ICVQcm9qZWN0RGF0YSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+UHJvamVjdEdldCgKICAgICAgICBQcm9qZWN0ID0+ICRQcm9qZWN0TmFtZQogICAgKTsKCiAgICBteSAkUHJvamVjdElEID0gJFByb2plY3REYXRhe0lEfTsKCiAgICAjIGNoZWNrIG5lZWRlZCBwYXJhbXMKICAgIGlmICggISRQcm9qZWN0SUQgKSB7CiAgICAgICAgcmV0dXJuICRMYXlvdXRPYmplY3QtPkVycm9yU2NyZWVuKAogICAgICAgICAgICBNZXNzYWdlID0+IFRyYW5zbGF0YWJsZSgnUmVwb3J0aW5nUHJvamVjdDogTm8gUHJvamVjdCBmb3IgVGlja2V0IGZvdW5kLicpCiAgICAgICAgKTsKICAgIH0KCiAgICBteSAlQWN0aW9uICA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+QWN0aW9uU2V0dGluZ3NHZXQoKTsKICAgIG15ICVQcm9qZWN0ID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Qcm9qZWN0U2V0dGluZ3NHZXQoKTsKICAgICRQYXJhbXtQcm9qZWN0fSA9ICRQcm9qZWN0e1Byb2plY3R9LT57JFByb2plY3RJRH07CgogICAgIyBnZXQgc3lzdGVtIHVzZXJzCiAgICBteSAlU2hvd25Vc2VycyA9ICRVc2VyT2JqZWN0LT5Vc2VyTGlzdCgKICAgICAgICBUeXBlICA9PiAnTG9uZycsCiAgICAgICAgVmFsaWQgPT4gMAogICAgKTsKCiAgICAkUGFyYW17U2hvd09ubHlBY3RpdmVVc2Vyc30gPSAkQ29uZmlnLT57U2hvd09ubHlBY3RpdmVVc2Vyc307CgogICAgaWYgKCAkUGFyYW17U2hvd09ubHlBY3RpdmVVc2Vyc30gKSB7CgogICAgICAgICMgZ2V0IHJlZ2lzdGVyZWQgdXNlcnMKICAgICAgICBteSAlUmVnaXN0ZXJlZFVzZXJzID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyTGlzdCgpOwoKICAgICAgICAjIHJlZHVjZSBzaG93biB1c2VycyB0byBvbmx5IHRoZSBvbmVzIHRoYXQgYXJlIHJlZ2lzdGVyZWQgaW4gdGltZSBhY2NvdW50aW5nCiAgICAgICAgJVNob3duVXNlcnMgPSBtYXAgeyAkXyA9PiAkU2hvd25Vc2Vyc3skX30gfSBrZXlzICVSZWdpc3RlcmVkVXNlcnM7CiAgICB9CgogICAgIyBuZWNlc3NhcnkgYmVjYXVzZSB0aGUgUHJvamVjdEFjdGlvblJlcG9ydGluZyBpcyBub3QgcmV3b3JrZWQKICAgIG15ICggJFNlYywgJE1pbiwgJEhvdXIsICRDdXJyZW50RGF5LCAkTW9udGgsICRZZWFyICkgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlN5c3RlbVRpbWUyRGF0ZSgKICAgICAgICBTeXN0ZW1UaW1lID0+ICREYXRlVGltZU9iamVjdEN1cnJlbnQtPlRvRXBvY2goKSwKICAgICk7CiAgICAlUHJvamVjdERhdGEgPSAoKTsKICAgIG15ICVQcm9qZWN0VGltZSA9ICgpOwoKICAgIG15IEBVc2VyV2hpdGVMaXN0OwoKICAgICMgT25seSBvbmUgZnVuY3Rpb24gc2hvdWxkIGJlIGVub3VnaAogICAgZm9yIG15ICRVc2VySUQgKCBzb3J0IGtleXMgJVNob3duVXNlcnMgKSB7CgogICAgICAgICMgT3ZlcnZpZXcgcGVyIHByb2plY3QgYW5kIGFjdGlvbgogICAgICAgICMgUkVNQVJLOiBUaGlzIGlzIHRoZSB3cm9uZyBmdW5jdGlvbiB0byBnZXQgdGhpcyBpbmZvcm1hdGlvbgogICAgICAgICVQcm9qZWN0RGF0YSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+UHJvamVjdEFjdGlvblJlcG9ydGluZygKICAgICAgICAgICAgWWVhciAgICAgPT4gJFllYXIsCiAgICAgICAgICAgIE1vbnRoICAgID0+ICRNb250aCwKICAgICAgICAgICAgVXNlcklEICAgPT4gJFVzZXJJRCwKICAgICAgICAgICAgVGlja2V0SUQgPT4gJFRpY2tldHtUaWNrZXRJRH0sCiAgICAgICAgKTsKICAgICAgICBpZiAoICRQcm9qZWN0RGF0YXskUHJvamVjdElEfSApIHsKICAgICAgICAgICAgbXkgJFVzZXJUb3RhbEhvdXJzSW5Qcm9qZWN0OwogICAgICAgICAgICBteSAkQWN0aW9uc1JlZiA9ICRQcm9qZWN0RGF0YXskUHJvamVjdElEfS0+e0FjdGlvbnN9OwogICAgICAgICAgICBmb3IgbXkgJEFjdGlvbklEICggc29ydCBrZXlzICV7JEFjdGlvbnNSZWZ9ICkgewogICAgICAgICAgICAgICAgJFByb2plY3RUaW1leyRBY3Rpb25JRH0tPnskVXNlcklEfS0+e0hvdXJzfSA9ICRBY3Rpb25zUmVmLT57JEFjdGlvbklEfS0+e1RvdGFsfTsKCiAgICAgICAgICAgICAgICAjIHJlbWVtYmVyIHRoZSBzdW0gb2YgYWxsIGhvdXJzIG9mIGFsbCB0YXNrcwogICAgICAgICAgICAgICAgJFVzZXJUb3RhbEhvdXJzSW5Qcm9qZWN0ICs9ICRBY3Rpb25zUmVmLT57JEFjdGlvbklEfS0+e1RvdGFsfSB8fCAwOwogICAgICAgICAgICB9CgogICAgICAgICAgICAjIHJlbWVtYmVyIG9ubHkgdGhlIHVzZXJzIHRoYXQgaGFzIGJlZW4gYWRkZWQgaG91cnMgdG8gdGhpcyBwcm9qZWN0CiAgICAgICAgICAgIGlmICggZGVmaW5lZCAkVXNlclRvdGFsSG91cnNJblByb2plY3QgJiYgJFVzZXJUb3RhbEhvdXJzSW5Qcm9qZWN0ID4gMCApIHsKICAgICAgICAgICAgICAgIHB1c2ggQFVzZXJXaGl0ZUxpc3QsICRVc2VySUQ7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgaWYgKCAkUGFyYW17U2hvd09ubHlBY3RpdmVVc2Vyc30gKSB7CgogICAgICAgICMgcmVkdWNlIHNob3duIHVzZXJzIHRvIG9ubHkgdGhlIG9uZXMgdGhhdCBhcmUgYWN0aXZlIGluIHRoZSBwcm9qZWN0IChieSBhZGRpbmcgaG91cnMpCiAgICAgICAgJVNob3duVXNlcnMgPSBtYXAgeyAkXyA9PiAkU2hvd25Vc2Vyc3skX30gfSBAVXNlcldoaXRlTGlzdDsKICAgIH0KCiAgICBpZiAoICFJc0hhc2hSZWZXaXRoRGF0YSggXCVTaG93blVzZXJzICkgKSB7CiAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgIE5hbWUgPT4gJ05vVXNlckRhdGFGb3VuZE1zZycsCiAgICAgICAgICAgIERhdGEgPT4ge30sCiAgICAgICAgKTsKICAgIH0KICAgIGVsc2UgewogICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICBOYW1lID0+ICdVc2VyVGFibGUnLAogICAgICAgICAgICBEYXRhID0+IHt9LAogICAgICAgICk7CgogICAgICAgICMgc2hvdyB0aGUgaGVhZGVyIGxpbmUKICAgICAgICBmb3IgbXkgJFVzZXJJRCAoIHNvcnQgeyAkU2hvd25Vc2Vyc3skYX0gY21wICRTaG93blVzZXJzeyRifSB9IGtleXMgJVNob3duVXNlcnMgKSB7CiAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICAgICAgTmFtZSA9PiAnVXNlck5hbWUnLAogICAgICAgICAgICAgICAgRGF0YSA9PiB7IFVzZXIgPT4gJFNob3duVXNlcnN7JFVzZXJJRH0gfSwKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgICMgYmV0dGVyIHNvbHV0aW9uIGZvciBzb3J0IGFjdGlvbnMgbmVjZXNzYXJ5CiAgICAgICAgbXkgJU5ld0FjdGlvbiA9ICgpOwogICAgICAgIGZvciBteSAkQWN0aW9uSUQgKCBzb3J0IGtleXMgJVByb2plY3RUaW1lICkgewogICAgICAgICAgICAkTmV3QWN0aW9ueyRBY3Rpb25JRH0gPSAkQWN0aW9ueyRBY3Rpb25JRH0tPntBY3Rpb259OwogICAgICAgIH0KICAgICAgICAlQWN0aW9uID0gJU5ld0FjdGlvbjsKCiAgICAgICAgIyBzaG93IHRoZSByZXN1bHRzCiAgICAgICAgbXkgJVRvdGFsID0gKCk7CiAgICAgICAgZm9yIG15ICRBY3Rpb25JRCAoIHNvcnQgeyAkQWN0aW9ueyRhfSBjbXAgJEFjdGlvbnskYn0gfSBrZXlzICVBY3Rpb24gKSB7CiAgICAgICAgICAgIG15ICRUb3RhbEhvdXJzID0gMDsKICAgICAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgICAgICBOYW1lID0+ICdBY3Rpb24nLAogICAgICAgICAgICAgICAgRGF0YSA9PiB7CiAgICAgICAgICAgICAgICAgICAgQWN0aW9uID0+ICRBY3Rpb257JEFjdGlvbklEfSwKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICk7CiAgICAgICAgICAgIGZvciBteSAkVXNlcklEICggc29ydCB7ICRTaG93blVzZXJzeyRhfSBjbXAgJFNob3duVXNlcnN7JGJ9IH0ga2V5cyAlU2hvd25Vc2VycyApIHsKICAgICAgICAgICAgICAgICRUb3RhbEhvdXJzICAgICArPSAkUHJvamVjdFRpbWV7JEFjdGlvbklEfXskVXNlcklEfXtIb3Vyc30gfHwgMDsKICAgICAgICAgICAgICAgICRUb3RhbHskVXNlcklEfSArPSAkUHJvamVjdFRpbWV7JEFjdGlvbklEfXskVXNlcklEfXtIb3Vyc30gfHwgMDsKICAgICAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICAgICAgICAgIE5hbWUgPT4gJ1VzZXInLAogICAgICAgICAgICAgICAgICAgIERhdGEgPT4gewogICAgICAgICAgICAgICAgICAgICAgICBIb3VycyA9PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgc3ByaW50ZiggIiUuMmYiLCAkUHJvamVjdFRpbWV7JEFjdGlvbklEfXskVXNlcklEfXtIb3Vyc30gfHwgMCApLAogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CgogICAgICAgICAgICAjIFRvdGFsCiAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICAgICAgTmFtZSA9PiAnVXNlcicsCiAgICAgICAgICAgICAgICBEYXRhID0+IHsKICAgICAgICAgICAgICAgICAgICBIb3VycyA9PiBzcHJpbnRmKCAiJS4yZiIsICRUb3RhbEhvdXJzICksCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICApOwogICAgICAgIH0KICAgICAgICAkUGFyYW17VG90YWxBbGx9ID0gMDsKICAgICAgICBmb3IgbXkgJFVzZXJJRCAoIHNvcnQgeyAkU2hvd25Vc2Vyc3skYX0gY21wICRTaG93blVzZXJzeyRifSB9IGtleXMgJVNob3duVXNlcnMgKSB7CiAgICAgICAgICAgICRQYXJhbXtUb3RhbEFsbH0gKz0gJFRvdGFseyRVc2VySUR9OwogICAgICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgICAgIE5hbWUgPT4gJ1VzZXJUb3RhbCcsCiAgICAgICAgICAgICAgICBEYXRhID0+IHsKICAgICAgICAgICAgICAgICAgICBUb3RhbCA9PiBzcHJpbnRmKCAiJS4yZiIsICRUb3RhbHskVXNlcklEfSApLAogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICBOYW1lID0+ICdVc2VyVG90YWxBbGwnLAogICAgICAgICAgICBEYXRhID0+IHsKICAgICAgICAgICAgICAgIFRvdGFsQWxsID0+IHNwcmludGYoICIlLjJmIiwgJFBhcmFte1RvdGFsQWxsfSApLAogICAgICAgICAgICB9LAogICAgICAgICk7CiAgICB9CiAgICBteSBAUHJvamVjdEhpc3RvcnlBcnJheSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+UHJvamVjdEhpc3RvcnkoCiAgICAgICAgUHJvamVjdElEID0+ICRQcm9qZWN0SUQsCiAgICAgICAgVGlja2V0SUQgID0+ICRUaWNrZXR7VGlja2V0SUR9LAogICAgKTsKCiAgICBpZiAoICFJc0FycmF5UmVmV2l0aERhdGEoIFxAUHJvamVjdEhpc3RvcnlBcnJheSApICkgewogICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICBOYW1lID0+ICdOb1Byb2plY3REYXRhRm91bmRNc2cnLAogICAgICAgICAgICBEYXRhID0+IHt9LAogICAgICAgICk7CiAgICB9CiAgICBlbHNlIHsKICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgTmFtZSA9PiAnUHJvamVjdFRhYmxlJywKICAgICAgICAgICAgRGF0YSA9PiB7CiAgICAgICAgICAgICAgICAlUGFyYW0sCiAgICAgICAgICAgICAgICAlRnJvbnRlbmQKICAgICAgICAgICAgfSwKICAgICAgICApOwoKICAgICAgICBmb3IgbXkgJFJvdyAoQFByb2plY3RIaXN0b3J5QXJyYXkpIHsKICAgICAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgICAgICBOYW1lID0+ICdSb3cnLAogICAgICAgICAgICAgICAgRGF0YSA9PiB7CiAgICAgICAgICAgICAgICAgICAgVXNlciAgID0+ICRSb3ctPntVc2VyfSwKICAgICAgICAgICAgICAgICAgICBBY3Rpb24gPT4gJFJvdy0+e0FjdGlvbn0sCiAgICAgICAgICAgICAgICAgICAgUmVtYXJrID0+ICRSb3ctPntSZW1hcmt9IHx8ICctLScsCiAgICAgICAgICAgICAgICAgICAgUGVyaW9kID0+IHNwcmludGYoICIlLjJmIiwgJFJvdy0+e1BlcmlvZH0gKSwKICAgICAgICAgICAgICAgICAgICBEYXRlICAgPT4gJFJvdy0+e0RhdGV9LAogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgICMgc2hvdyB0aGUgdG90YWwgc3VtIG9mIGhvdXJzIGF0IHRoZSBlbmQgb2YgdGhlIGhpc3RvcnkgbGlzdAogICAgICAgICMgSSBhbHNvIGNhbiB1c2UgJFBhcmFte1RvdGFsQWxsfQogICAgICAgIG15ICRQcm9qZWN0VG90YWxIb3VycyA9IHNwcmludGYoCiAgICAgICAgICAgICIlLjJmIiwKICAgICAgICAgICAgJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Qcm9qZWN0VG90YWxIb3VycygKICAgICAgICAgICAgICAgIFByb2plY3RJRCA9PiAkUHJvamVjdElELAogICAgICAgICAgICAgICAgVGlja2V0SUQgID0+ICRUaWNrZXR7VGlja2V0SUR9LAogICAgICAgICAgICApCiAgICAgICAgKTsKCiAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgIE5hbWUgPT4gJ0hpc3RvcnlUb3RhbCcsCiAgICAgICAgICAgIERhdGEgPT4gewogICAgICAgICAgICAgICAgSGlzdG9yeVRvdGFsID0+ICRQcm9qZWN0VG90YWxIb3VycyB8fCAwLAogICAgICAgICAgICB9LAogICAgICAgICk7CiAgICB9CgogICAgIyBidWlsZCBvdXRwdXQKICAgIG15ICRPdXRwdXQgPSAkTGF5b3V0T2JqZWN0LT5IZWFkZXIoCiAgICAgICAgVGl0bGUgPT4gVHJhbnNsYXRhYmxlKCdSZXBvcnRpbmcgUHJvamVjdCcpLAogICAgKTsKICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+TmF2aWdhdGlvbkJhcigpOwogICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5PdXRwdXQoCiAgICAgICAgRGF0YSA9PiB7CiAgICAgICAgICAgICVUaWNrZXQsCiAgICAgICAgICAgICVQYXJhbSwKICAgICAgICAgICAgJUZyb250ZW5kLAogICAgICAgIH0sCiAgICAgICAgVGVtcGxhdGVGaWxlID0+ICdBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nVGlja2V0JywKICAgICk7CiAgICAkT3V0cHV0IC49ICRMYXlvdXRPYmplY3QtPkZvb3RlcigpOwoKICAgIHJldHVybiAkT3V0cHV0Owp9CgpzdWIgX0NoZWNrUHJvamVjdE5hbWUgewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICBteSAkVGltZUFjY291bnRpbmdPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VGltZUFjY291bnRpbmcnKTsKICAgIG15ICRDb25maWdPYmplY3QgICAgICAgICA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6Q29uZmlnJyk7CgogICAgbXkgJERlZmF1bHRQcm9qZWN0SUQgPSAkQ29uZmlnT2JqZWN0LT5HZXQoJ1RpbWVBY2NvdW50aW5nOjpUaWNrZXRTeW5jOjpEZWZhdWx0UHJvamVjdElEJyk7CiAgICBteSAlRGVmYXVsdFByb2plY3QgICA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+UHJvamVjdEdldCggSUQgPT4gJERlZmF1bHRQcm9qZWN0SUQgKTsKICAgIG15ICREZWZhdWx0TmFtZSAgICAgID0gJERlZmF1bHRQcm9qZWN0e1Byb2plY3R9OwoKICAgICMgY2hlY2sgbmVlZGVkIHN0dWZmCiAgICBpZiAoICEkUGFyYW17UHJvamVjdE5hbWV9ICkgewogICAgICAgIHJldHVybiAkRGVmYXVsdE5hbWU7CiAgICB9CgogICAgIyBJZiB0aGlzIG9wdGlvbiBpcyBkaXNhYmxlZCwgcmV0dXJuLiBXZSBkbyBub3QgY3JlYXRlIGEgcHJvamVjdC4KICAgIGlmICggISRDb25maWdPYmplY3QtPkdldCgnVGltZUFjY291bnRpbmc6OlRpY2tldFN5bmM6OkNyZWF0ZVByb2plY3RGcm9tQ3VzdG9tZXJJRCcpICkgewogICAgICAgIHJldHVybiAkRGVmYXVsdE5hbWU7CiAgICB9CgogICAgIyBOb3cgd2UgbmVlZCB0byBjaGVjayBpZiB0aGUgY3VzdG9tZXIgY29tcGFueSBleGlzdHMgYWxyZWFkeSBleGlzdHMgaW5zaWRlIHRoZSBkYXRhYmFzZQogICAgbXkgJEN1c3RvbWVyQ29tcGFueU9iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpDdXN0b21lckNvbXBhbnknKTsKCiAgICAjIENoZWNrIGlmIGEgY3VzdG9tZXIgY29tcGFueSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgY3VzdG9tZXIgY29tcGFueSBkYXRhYmFzZQogICAgbXkgJUN1c3RvbWVyQ29tcGFueSA9ICRDdXN0b21lckNvbXBhbnlPYmplY3QtPkN1c3RvbWVyQ29tcGFueUdldCgKICAgICAgICBDdXN0b21lcklEID0+ICRQYXJhbXtQcm9qZWN0TmFtZX0sCiAgICApOwoKICAgICMgUmV0dXJuIHJlZ3VsYXIgcHJvamVjdCBjYXVzZSBjdXN0b21lcmNvbXBhbnkgZXhpc3RzCiAgICBpZiAoIElzSGFzaFJlZldpdGhEYXRhKCBcJUN1c3RvbWVyQ29tcGFueSApICkgewogICAgICAgIG15ICVQcm9qZWN0RGF0YSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+UHJvamVjdEdldCggUHJvamVjdCA9PiAkUGFyYW17UHJvamVjdE5hbWV9ICk7CgogICAgICAgIGlmICggSXNIYXNoUmVmV2l0aERhdGEoIFwlUHJvamVjdERhdGEgKSApIHsKICAgICAgICAgICAgcmV0dXJuICRQcm9qZWN0RGF0YXtQcm9qZWN0fTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuICRQYXJhbXtQcm9qZWN0TmFtZX07CiAgICB9CgogICAgIyBDdXN0b21lciBjb21wYW55IG5vdCBleGlzdCwgc28gd2UgbmVlZCB0byBjaGVjayBpZiB3ZSBjcmVhdGUgcHJvamVjdHMgZnJvbSB0bXAgY3VzdG9tZXJzLgogICAgaWYgKCAhJENvbmZpZ09iamVjdC0+R2V0KCdUaW1lQWNjb3VudGluZzo6VGlja2V0U3luYzo6Q3JlYXRlUHJvamVjdEZyb21UTVBDdXN0b21lcklEJykgKSB7CiAgICAgICAgcmV0dXJuICREZWZhdWx0TmFtZTsKICAgIH0KCiAgICAjIE5vdyB3ZSBub3cgdGhhdCB3ZSBuZWVkIHRvIGNyZWF0ZSB0aGUgcHJvamVjdCBpZiBpdCBub3QgZXhpc3QKICAgIG15ICggJFVzZXIsICREb21haW4gKSA9IHNwbGl0KCAvQC8sICRQYXJhbXtQcm9qZWN0TmFtZX0gKTsKICAgIG15ICVQcm9qZWN0RGF0YSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+UHJvamVjdEdldCggUHJvamVjdCA9PiAkRG9tYWluICk7CgogICAgaWYgKCBJc0hhc2hSZWZXaXRoRGF0YSggXCVQcm9qZWN0RGF0YSApICkgewogICAgICAgIHJldHVybiAkUHJvamVjdERhdGF7UHJvamVjdH07CiAgICB9CiAgICBlbHNlIHsKCiAgICAgICAgcmV0dXJuICREb21haW47CiAgICB9CiAgICByZXR1cm4gJERlZmF1bHROYW1lOwp9CgoxOwo=</File>
        <File Location="Kernel/Modules/AgentTimeAccountingSetting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TW9kdWxlczo6QWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmc7Cgp1c2Ugc3RyaWN0Owp1c2Ugd2FybmluZ3M7Cgp1c2UgS2VybmVsOjpMYW5ndWFnZSBxdyhUcmFuc2xhdGFibGUpOwoKb3VyICRPYmplY3RNYW5hZ2VyRGlzYWJsZWQgPSAxOwoKc3ViIG5ldyB7CiAgICBteSAoICRUeXBlLCAlUGFyYW0gKSA9IEBfOwoKICAgICMgYWxsb2NhdGUgbmV3IGhhc2ggZm9yIG9iamVjdAogICAgbXkgJFNlbGYgPSB7JVBhcmFtfTsKICAgIGJsZXNzKCAkU2VsZiwgJFR5cGUgKTsKCiAgICByZXR1cm4gJFNlbGY7Cn0KCnN1YiBSdW4gewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICAjIGdldCBuZWVkZWQgb2JqZWN0cwogICAgbXkgJFBhcmFtT2JqZWN0ICAgICAgICAgID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OldlYjo6UmVxdWVzdCcpOwogICAgbXkgJFRpbWVBY2NvdW50aW5nT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlRpbWVBY2NvdW50aW5nJyk7CiAgICBteSAkTGF5b3V0T2JqZWN0ICAgICAgICAgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6Ok91dHB1dDo6SFRNTDo6TGF5b3V0Jyk7CiAgICBteSAkTG9nT2JqZWN0ICAgICAgICAgICAgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6TG9nJyk7CiAgICBteSAkVXNlck9iamVjdCAgICAgICAgICAgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VXNlcicpOwoKICAgICMgZXhwcmVzc2lvbiBhZGQgdGltZSBwZXJpb2Qgd2FzIHByZXNzZWQKICAgIGlmICgKICAgICAgICAkUGFyYW1PYmplY3QtPkdldFBhcmFtKCBQYXJhbSA9PiAnQWRkUGVyaW9kJyApCiAgICAgICAgfHwgJFBhcmFtT2JqZWN0LT5HZXRQYXJhbSggUGFyYW0gPT4gJ1N1Ym1pdFVzZXJEYXRhJyApCiAgICAgICAgKQogICAgewoKICAgICAgICBteSAlR2V0UGFyYW0gPSAoKTsKCiAgICAgICAgJEdldFBhcmFte1VzZXJJRH0gPSAkUGFyYW1PYmplY3QtPkdldFBhcmFtKCBQYXJhbSA9PiAnVXNlcklEJyApOwogICAgICAgIG15ICRQZXJpb2RzID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyTGFzdFBlcmlvZE51bWJlckdldCgKICAgICAgICAgICAgVXNlcklEID0+ICRHZXRQYXJhbXtVc2VySUR9LAogICAgICAgICk7CgogICAgICAgICMgY2hlY2sgdmFsaWRpdHkgb2YgcGVyaW9kcwogICAgICAgIG15ICVFcnJvcnMgPSAkU2VsZi0+X0NoZWNrVmFsaWRpdHlVc2VyUGVyaW9kcygKICAgICAgICAgICAgUGVyaW9kID0+ICRQZXJpb2RzLAogICAgICAgICk7CgogICAgICAgICMgaWYgdGhlIHBlcmlvZCBkYXRhIGlzIE9LCiAgICAgICAgaWYgKCAhJUVycm9ycyApIHsKCiAgICAgICAgICAgICMgZ2V0IGFsbCBwYXJhbWV0ZXJzCiAgICAgICAgICAgIGZvciBteSAkUGFyYW1ldGVyIChxdyhTdWJhY3Rpb24gRGVzY3JpcHRpb24gQ2FsZW5kYXIpKSB7CiAgICAgICAgICAgICAgICAkR2V0UGFyYW17JFBhcmFtZXRlcn0gPSAkUGFyYW1PYmplY3QtPkdldFBhcmFtKCBQYXJhbSA9PiAkUGFyYW1ldGVyICk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZm9yIG15ICRQYXJhbWV0ZXIgKHF3KFNob3dPdmVydGltZSBDcmVhdGVQcm9qZWN0IEFsbG93U2tpcCkpIHsKICAgICAgICAgICAgICAgICRHZXRQYXJhbXskUGFyYW1ldGVyfSA9ICRQYXJhbU9iamVjdC0+R2V0UGFyYW0oIFBhcmFtID0+ICRQYXJhbWV0ZXIgKSB8fCAwOwogICAgICAgICAgICB9CgogICAgICAgICAgICBteSAkUGVyaW9kID0gMTsKICAgICAgICAgICAgbXkgJVBlcmlvZERhdGE7CgogICAgICAgICAgICBteSAlVXNlckRhdGEgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlNpbmdsZVVzZXJTZXR0aW5nc0dldCgKICAgICAgICAgICAgICAgIFVzZXJJRCA9PiAkR2V0UGFyYW17VXNlcklEfQogICAgICAgICAgICApOwoKICAgICAgICAgICAgIyBnZXQgcGFyYW1ldGVycyBmb3IgYWxsIHJlZ2lzdGVyZWQgcGVyaW9kcwogICAgICAgICAgICB3aGlsZSAoICRVc2VyRGF0YXskUGVyaW9kfSApIHsKICAgICAgICAgICAgICAgIGZvciBteSAkUGFyYW1ldGVyIChxdyhXZWVrbHlIb3VycyBPdmVydGltZSBEYXRlU3RhcnQgRGF0ZUVuZCBMZWF2ZURheXMpKSB7CiAgICAgICAgICAgICAgICAgICAgJFBlcmlvZERhdGF7JFBlcmlvZH17JFBhcmFtZXRlcn0gPSAkUGFyYW1PYmplY3QtPkdldFBhcmFtKCBQYXJhbSA9PiAkUGFyYW1ldGVyIC4gIlskUGVyaW9kXSIgKQogICAgICAgICAgICAgICAgICAgICAgICB8fCAkVXNlckRhdGF7JFBlcmlvZH17JFBhcmFtZXRlcn07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAkUGVyaW9kRGF0YXskUGVyaW9kfXtVc2VyU3RhdHVzfSA9ICRQYXJhbU9iamVjdC0+R2V0UGFyYW0oIFBhcmFtID0+ICJQZXJpb2RTdGF0dXNbJFBlcmlvZF0iICkgfHwgMDsKICAgICAgICAgICAgICAgICRQZXJpb2QrKzsKICAgICAgICAgICAgfQogICAgICAgICAgICAkR2V0UGFyYW17UGVyaW9kfSA9IFwlUGVyaW9kRGF0YTsKCiAgICAgICAgICAgICMgdXBkYXRlIHBlcmlvZHMKICAgICAgICAgICAgaWYgKCAhJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyU2V0dGluZ3NVcGRhdGUoJUdldFBhcmFtKSApIHsKCiAgICAgICAgICAgICAgICByZXR1cm4gJExheW91dE9iamVjdC0+RXJyb3JTY3JlZW4oCiAgICAgICAgICAgICAgICAgICAgTWVzc2FnZSA9PiBUcmFuc2xhdGFibGUoJ1VuYWJsZSB0byB1cGRhdGUgdXNlciBzZXR0aW5ncyEnKSwKICAgICAgICAgICAgICAgICAgICBDb21tZW50ID0+IFRyYW5zbGF0YWJsZSgnUGxlYXNlIGNvbnRhY3QgdGhlIGFkbWluaXN0cmF0b3IuJyksCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICggJFBhcmFtT2JqZWN0LT5HZXRQYXJhbSggUGFyYW0gPT4gJ0FkZFBlcmlvZCcgKSApIHsKCiAgICAgICAgICAgICAgICAjIHNob3cgdGhlIGVkaXQgdGltZSBzZXR0aW5ncyBhZ2FpbiwgYnV0IG5vdyB3aXRoIGEgbmV3IGVtcHR5IHRpbWUgcGVyaW9kIGxpbmUKICAgICAgICAgICAgICAgIHJldHVybiAkTGF5b3V0T2JqZWN0LT5SZWRpcmVjdCgKICAgICAgICAgICAgICAgICAgICBPUCA9PgogICAgICAgICAgICAgICAgICAgICAgICAiQWN0aW9uPUFnZW50VGltZUFjY291bnRpbmdTZXR0aW5nO1N1YmFjdGlvbj0kR2V0UGFyYW17U3ViYWN0aW9ufTtVc2VySUQ9JEdldFBhcmFte1VzZXJJRH07IgogICAgICAgICAgICAgICAgICAgICAgICAuICJOZXdUaW1lUGVyaW9kPTEiLAogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIHsKCiAgICAgICAgICAgICAgICAjIHNob3cgdGhlIG92ZXJ2aWV3IG9mIHRhc2tzIGFuZCB1c2VycwogICAgICAgICAgICAgICAgcmV0dXJuICRMYXlvdXRPYmplY3QtPlJlZGlyZWN0KAogICAgICAgICAgICAgICAgICAgIE9QID0+ICJBY3Rpb249QWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmc7VXNlcj0kU2VsZi0+e1N1YmFjdGlvbn0iLAogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIwogICAgIyBhZGQgcHJvamVjdAogICAgIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKICAgIGlmICggJFNlbGYtPntTdWJhY3Rpb259IGVxICdBZGRQcm9qZWN0JyApIHsKICAgICAgICBteSAkT3V0cHV0ID0gJExheW91dE9iamVjdC0+SGVhZGVyKCk7CiAgICAgICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5OYXZpZ2F0aW9uQmFyKCk7CiAgICAgICAgJFNlbGYtPl9Qcm9qZWN0U2V0dGluZ3NFZGl0KCBBY3Rpb24gPT4gJ0FkZFByb2plY3QnICk7CiAgICAgICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5PdXRwdXQoCiAgICAgICAgICAgIFRlbXBsYXRlRmlsZSA9PiAnQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcnLAogICAgICAgICAgICBEYXRhICAgICAgICAgPT4gXCVQYXJhbSwKICAgICAgICApOwogICAgICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+Rm9vdGVyKCk7CiAgICAgICAgcmV0dXJuICRPdXRwdXQ7CiAgICB9CgogICAgIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKICAgICMgYWRkIHByb2plY3QgYWN0aW9uCiAgICAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIwogICAgZWxzaWYgKCAkU2VsZi0+e1N1YmFjdGlvbn0gZXEgJ0FkZFByb2plY3RBY3Rpb24nICkgewoKICAgICAgICAjIGNoYWxsZW5nZSB0b2tlbiBjaGVjayBmb3Igd3JpdGUgYWN0aW9uCiAgICAgICAgJExheW91dE9iamVjdC0+Q2hhbGxlbmdlVG9rZW5DaGVjaygpOwoKICAgICAgICBteSAkTm90ZSA9ICcnOwogICAgICAgIG15ICRQcm9qZWN0SUQ7CiAgICAgICAgbXkgKCAlR2V0UGFyYW0sICVFcnJvcnMgKTsKCiAgICAgICAgIyBnZXQgcGFyYW1ldGVycwogICAgICAgIGZvciBteSAkUGFyYW1ldGVyIChxdyhQcm9qZWN0IFByb2plY3REZXNjcmlwdGlvbikpIHsKICAgICAgICAgICAgJEdldFBhcmFteyRQYXJhbWV0ZXJ9ID0gJFBhcmFtT2JqZWN0LT5HZXRQYXJhbSggUGFyYW0gPT4gJFBhcmFtZXRlciApIHx8ICcnOwogICAgICAgIH0KICAgICAgICAkR2V0UGFyYW17UHJvamVjdFN0YXR1c30gPSAkUGFyYW1PYmplY3QtPkdldFBhcmFtKCBQYXJhbSA9PiAnUHJvamVjdFN0YXR1cycgKQogICAgICAgICAgICB8fCAnMCc7CgogICAgICAgICMgY2hlY2sgZm9yIG5lZWRlZCBkYXRhCiAgICAgICAgaWYgKCAhJEdldFBhcmFte1Byb2plY3R9ICkgewogICAgICAgICAgICAkRXJyb3Jze1Byb2plY3RJbnZhbGlkfSAgID0gJ1NlcnZlckVycm9yJzsKICAgICAgICAgICAgJEVycm9yc3tQcm9qZWN0RXJyb3JUeXBlfSA9ICdQcm9qZWN0TWlzc2luZ1ZhbHVlJzsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CgogICAgICAgICAgICAjIGNoZWNrIHRoYXQgdGhlIG5hbWUgaXMgdW5pcXVlCiAgICAgICAgICAgIG15ICVFeGlzdGluZ1Byb2plY3QgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlByb2plY3RHZXQoCiAgICAgICAgICAgICAgICBQcm9qZWN0ID0+ICRHZXRQYXJhbXtQcm9qZWN0fSwKICAgICAgICAgICAgKTsKICAgICAgICAgICAgaWYgKCVFeGlzdGluZ1Byb2plY3QpIHsKICAgICAgICAgICAgICAgICRFcnJvcnN7UHJvamVjdEludmFsaWR9ICAgPSAnU2VydmVyRXJyb3InOwogICAgICAgICAgICAgICAgJEVycm9yc3tQcm9qZWN0RXJyb3JUeXBlfSA9ICdQcm9qZWN0RHVwbGljYXRlTmFtZSc7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgICMgaWYgbm8gZXJyb3JzIG9jY3VycmVkCiAgICAgICAgaWYgKCAhJUVycm9ycyApIHsKCiAgICAgICAgICAgICMgYWRkIHByb2plY3QKICAgICAgICAgICAgJFByb2plY3RJRCA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+UHJvamVjdFNldHRpbmdzSW5zZXJ0KAogICAgICAgICAgICAgICAgJUdldFBhcmFtLAogICAgICAgICAgICApOwoKICAgICAgICAgICAgaWYgKCRQcm9qZWN0SUQpIHsKCiAgICAgICAgICAgICAgICAjIGJ1aWxkIHRoZSBvdXRwdXQKICAgICAgICAgICAgICAgICRTZWxmLT5fU2V0dGluZ092ZXJ2aWV3KCk7CiAgICAgICAgICAgICAgICBteSAkT3V0cHV0ID0gJExheW91dE9iamVjdC0+SGVhZGVyKCk7CiAgICAgICAgICAgICAgICAkT3V0cHV0IC49ICRMYXlvdXRPYmplY3QtPk5hdmlnYXRpb25CYXIoKTsKICAgICAgICAgICAgICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+Tm90aWZ5KAogICAgICAgICAgICAgICAgICAgIEluZm8gPT4gVHJhbnNsYXRhYmxlKCdQcm9qZWN0IGFkZGVkIScpLAogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+T3V0cHV0KAogICAgICAgICAgICAgICAgICAgIFRlbXBsYXRlRmlsZSA9PiAnQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcnLAogICAgICAgICAgICAgICAgICAgIERhdGEgICAgICAgICA9PiB7JUdldFBhcmFtfSwKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICAkT3V0cHV0IC49ICRMYXlvdXRPYmplY3QtPkZvb3RlcigpOwoKICAgICAgICAgICAgICAgIHJldHVybiAkT3V0cHV0OwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgJE5vdGUgPSAkTG9nT2JqZWN0LT5HZXRMb2dFbnRyeSgKICAgICAgICAgICAgICAgICAgICBUeXBlID0+ICdFcnJvcicsCiAgICAgICAgICAgICAgICAgICAgV2hhdCA9PiAnTWVzc2FnZScsCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICAjIHNvbWV0aGluZyB3ZW50IHdyb25nCiAgICAgICAgbXkgJE91dHB1dCA9ICRMYXlvdXRPYmplY3QtPkhlYWRlcigpOwogICAgICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+TmF2aWdhdGlvbkJhcigpOwogICAgICAgICRPdXRwdXQgLj0gJE5vdGUKICAgICAgICAgICAgPyAkTGF5b3V0T2JqZWN0LT5Ob3RpZnkoCiAgICAgICAgICAgICAgICBQcmlvcml0eSA9PiAnRXJyb3InLAogICAgICAgICAgICAgICAgSW5mbyAgICAgPT4gJE5vdGUsCiAgICAgICAgICAgICkKICAgICAgICAgICAgOiAnJzsKICAgICAgICAkU2VsZi0+X1Byb2plY3RTZXR0aW5nc0VkaXQoCiAgICAgICAgICAgIEFjdGlvbiA9PiAnQWRkUHJvamVjdCcsCiAgICAgICAgICAgICVHZXRQYXJhbSwKICAgICAgICAgICAgJUVycm9ycywKICAgICAgICApOwogICAgICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+T3V0cHV0KAogICAgICAgICAgICBUZW1wbGF0ZUZpbGUgPT4gJ0FnZW50VGltZUFjY291bnRpbmdTZXR0aW5nJywKICAgICAgICAgICAgRGF0YSAgICAgICAgID0+IFwlUGFyYW0sCiAgICAgICAgKTsKICAgICAgICAkT3V0cHV0IC49ICRMYXlvdXRPYmplY3QtPkZvb3RlcigpOwoKICAgICAgICByZXR1cm4gJE91dHB1dDsKICAgIH0KCiAgICAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIwogICAgIyBlZGl0IHByb2plY3QKICAgICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCiAgICBlbHNpZiAoICRTZWxmLT57U3ViYWN0aW9ufSBlcSAnRWRpdFByb2plY3QnICkgewogICAgICAgIG15ICRJRCA9ICRQYXJhbU9iamVjdC0+R2V0UGFyYW0oIFBhcmFtID0+ICdJRCcgKTsKCiAgICAgICAgIyBnZXQgcHJvamVjdCBkYXRhCiAgICAgICAgbXkgJVByb2plY3QgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlByb2plY3RHZXQoCiAgICAgICAgICAgIElEID0+ICRJRCwKICAgICAgICApOwoKICAgICAgICBteSAkT3V0cHV0ID0gJExheW91dE9iamVjdC0+SGVhZGVyKCk7CiAgICAgICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5OYXZpZ2F0aW9uQmFyKCk7CiAgICAgICAgJFNlbGYtPl9Qcm9qZWN0U2V0dGluZ3NFZGl0KAogICAgICAgICAgICBBY3Rpb24gPT4gJ0VkaXRQcm9qZWN0JywKICAgICAgICAgICAgJVByb2plY3QsCiAgICAgICAgKTsKICAgICAgICAkT3V0cHV0IC49ICRMYXlvdXRPYmplY3QtPk91dHB1dCgKICAgICAgICAgICAgVGVtcGxhdGVGaWxlID0+ICdBZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZycsCiAgICAgICAgICAgIERhdGEgICAgICAgICA9PiBcJVBhcmFtLAogICAgICAgICk7CiAgICAgICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5Gb290ZXIoKTsKCiAgICAgICAgcmV0dXJuICRPdXRwdXQ7CiAgICB9CgogICAgIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKICAgICMgZWRpdCBwcm9qZWN0IGFjdGlvbgogICAgIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKICAgIGVsc2lmICggJFNlbGYtPntTdWJhY3Rpb259IGVxICdFZGl0UHJvamVjdEFjdGlvbicgKSB7CgogICAgICAgICMgY2hhbGxlbmdlIHRva2VuIGNoZWNrIGZvciB3cml0ZSBhY3Rpb24KICAgICAgICAkTGF5b3V0T2JqZWN0LT5DaGFsbGVuZ2VUb2tlbkNoZWNrKCk7CgogICAgICAgIG15ICROb3RlID0gJyc7CiAgICAgICAgbXkgKCAlR2V0UGFyYW0sICVFcnJvcnMgKTsKCiAgICAgICAgIyBnZXQgcGFyYW1ldGVycwogICAgICAgICRHZXRQYXJhbXtJRH0gICAgICAgICAgICA9ICRQYXJhbU9iamVjdC0+R2V0UGFyYW0oIFBhcmFtID0+ICdJRCcgKSB8fCAnJzsKICAgICAgICAkR2V0UGFyYW17UHJvamVjdFN0YXR1c30gPSAkUGFyYW1PYmplY3QtPkdldFBhcmFtKCBQYXJhbSA9PiAnUHJvamVjdFN0YXR1cycgKQogICAgICAgICAgICB8fCAnMCc7CiAgICAgICAgZm9yIG15ICRQYXJhbWV0ZXIgKHF3KFByb2plY3QgUHJvamVjdERlc2NyaXB0aW9uKSkgewogICAgICAgICAgICAkR2V0UGFyYW17JFBhcmFtZXRlcn0gPSAkUGFyYW1PYmplY3QtPkdldFBhcmFtKCBQYXJhbSA9PiAkUGFyYW1ldGVyICkgfHwgJyc7CiAgICAgICAgfQoKICAgICAgICAjIGNoZWNrIGZvciBuZWVkZWQgZGF0YQogICAgICAgIGlmICggISRHZXRQYXJhbXtQcm9qZWN0fSApIHsKICAgICAgICAgICAgJEVycm9yc3tQcm9qZWN0SW52YWxpZH0gPSAnU2VydmVyRXJyb3InOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKCiAgICAgICAgICAgICMgY2hlY2sgdGhhdCB0aGUgbmFtZSBpcyB1bmlxdWUKICAgICAgICAgICAgbXkgJUV4aXN0aW5nUHJvamVjdCA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+UHJvamVjdEdldCgKICAgICAgICAgICAgICAgIFByb2plY3QgPT4gJEdldFBhcmFte1Byb2plY3R9LAogICAgICAgICAgICApOwoKICAgICAgICAgICAgIyBpZiB0aGUgcHJvamVjdCBuYW1lIGlzIGZvdW5kLCBjaGVjayB0aGF0IHRoZSBJRCBpcyBkaWZmZXJlbnQKICAgICAgICAgICAgaWYgKCAlRXhpc3RpbmdQcm9qZWN0ICYmICRFeGlzdGluZ1Byb2plY3R7SUR9IG5lICRHZXRQYXJhbXtJRH0gKSB7CiAgICAgICAgICAgICAgICAkRXJyb3Jze1Byb2plY3RJbnZhbGlkfSAgID0gJ1NlcnZlckVycm9yJzsKICAgICAgICAgICAgICAgICRFcnJvcnN7UHJvamVjdEVycm9yVHlwZX0gPSAnUHJvamVjdER1cGxpY2F0ZU5hbWUnOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICAjIGlmIG5vIGVycm9ycyBvY2N1cnJlZAogICAgICAgIGlmICggISVFcnJvcnMgKSB7CgogICAgICAgICAgICAjIGVkaXQgcHJvamVjdAogICAgICAgICAgICBpZiAoICRUaW1lQWNjb3VudGluZ09iamVjdC0+UHJvamVjdFNldHRpbmdzVXBkYXRlKCVHZXRQYXJhbSkgKSB7CgogICAgICAgICAgICAgICAgJFNlbGYtPl9TZXR0aW5nT3ZlcnZpZXcoKTsKICAgICAgICAgICAgICAgIG15ICRPdXRwdXQgPSAkTGF5b3V0T2JqZWN0LT5IZWFkZXIoKTsKICAgICAgICAgICAgICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+TmF2aWdhdGlvbkJhcigpOwogICAgICAgICAgICAgICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5Ob3RpZnkoCiAgICAgICAgICAgICAgICAgICAgSW5mbyA9PiBUcmFuc2xhdGFibGUoJ1Byb2plY3QgdXBkYXRlZCEnKSwKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICAkT3V0cHV0IC49ICRMYXlvdXRPYmplY3QtPk91dHB1dCgKICAgICAgICAgICAgICAgICAgICBUZW1wbGF0ZUZpbGUgPT4gJ0FnZW50VGltZUFjY291bnRpbmdTZXR0aW5nJywKICAgICAgICAgICAgICAgICAgICBEYXRhICAgICAgICAgPT4gXCVQYXJhbSwKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICAkT3V0cHV0IC49ICRMYXlvdXRPYmplY3QtPkZvb3RlcigpOwoKICAgICAgICAgICAgICAgIHJldHVybiAkT3V0cHV0OwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgJE5vdGUgPSAkTG9nT2JqZWN0LT5HZXRMb2dFbnRyeSgKICAgICAgICAgICAgICAgICAgICBUeXBlID0+ICdFcnJvcicsCiAgICAgICAgICAgICAgICAgICAgV2hhdCA9PiAnTWVzc2FnZScsCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICAjIHNvbWV0aGluZyB3ZW50IHdyb25nCiAgICAgICAgbXkgJE91dHB1dCA9ICRMYXlvdXRPYmplY3QtPkhlYWRlcigpOwogICAgICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+TmF2aWdhdGlvbkJhcigpOwogICAgICAgICRPdXRwdXQgLj0gJE5vdGUKICAgICAgICAgICAgPyAkTGF5b3V0T2JqZWN0LT5Ob3RpZnkoCiAgICAgICAgICAgICAgICBQcmlvcml0eSA9PiAnRXJyb3InLAogICAgICAgICAgICAgICAgSW5mbyAgICAgPT4gJE5vdGUsCiAgICAgICAgICAgICkKICAgICAgICAgICAgOiAnJzsKICAgICAgICAkU2VsZi0+X1Byb2plY3RTZXR0aW5nc0VkaXQoCiAgICAgICAgICAgIEFjdGlvbiA9PiAnRWRpdFByb2plY3QnLAogICAgICAgICAgICAlR2V0UGFyYW0sCiAgICAgICAgICAgICVQYXJhbSwKICAgICAgICAgICAgJUVycm9ycywKICAgICAgICApOwogICAgICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+T3V0cHV0KAogICAgICAgICAgICBUZW1wbGF0ZUZpbGUgPT4gJ0FnZW50VGltZUFjY291bnRpbmdTZXR0aW5nJywKICAgICAgICAgICAgRGF0YSAgICAgICAgID0+IFwlUGFyYW0sCiAgICAgICAgKTsKICAgICAgICAkT3V0cHV0IC49ICRMYXlvdXRPYmplY3QtPkZvb3RlcigpOwoKICAgICAgICByZXR1cm4gJE91dHB1dDsKICAgIH0KCiAgICAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIwogICAgIyBhZGQgdGFzawogICAgIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKICAgIGVsc2lmICggJFNlbGYtPntTdWJhY3Rpb259IGVxICdBZGRUYXNrJyApIHsKICAgICAgICBteSAkT3V0cHV0ID0gJExheW91dE9iamVjdC0+SGVhZGVyKCk7CiAgICAgICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5OYXZpZ2F0aW9uQmFyKCk7CiAgICAgICAgJFNlbGYtPl9UYXNrU2V0dGluZ3NFZGl0KCBBY3Rpb24gPT4gJ0FkZFRhc2snICk7CiAgICAgICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5PdXRwdXQoCiAgICAgICAgICAgIFRlbXBsYXRlRmlsZSA9PiAnQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcnLAogICAgICAgICAgICBEYXRhICAgICAgICAgPT4gXCVQYXJhbSwKICAgICAgICApOwogICAgICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+Rm9vdGVyKCk7CgogICAgICAgIHJldHVybiAkT3V0cHV0OwogICAgfQoKICAgICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCiAgICAjIGFkZCB0YXNrIGFjdGlvbgogICAgIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKICAgIGVsc2lmICggJFNlbGYtPntTdWJhY3Rpb259IGVxICdBZGRUYXNrQWN0aW9uJyApIHsKCiAgICAgICAgIyBjaGFsbGVuZ2UgdG9rZW4gY2hlY2sgZm9yIHdyaXRlIGFjdGlvbgogICAgICAgICRMYXlvdXRPYmplY3QtPkNoYWxsZW5nZVRva2VuQ2hlY2soKTsKCiAgICAgICAgbXkgJE5vdGUgPSAnJzsKICAgICAgICBteSAkVGFza0lEOwogICAgICAgIG15ICggJUdldFBhcmFtLCAlRXJyb3JzICk7CgogICAgICAgICMgZ2V0IHBhcmFtZXRlcnMKICAgICAgICAkR2V0UGFyYW17VGFza30gICAgICAgPSAkUGFyYW1PYmplY3QtPkdldFBhcmFtKCBQYXJhbSA9PiAnVGFzaycgKSB8fCAnJzsKICAgICAgICAkR2V0UGFyYW17VGFza1N0YXR1c30gPSAkUGFyYW1PYmplY3QtPkdldFBhcmFtKCBQYXJhbSA9PiAnVGFza1N0YXR1cycgKQogICAgICAgICAgICB8fCAnMCc7CgogICAgICAgICMgY2hlY2sgZm9yIG5lZWRlZCBkYXRhCiAgICAgICAgaWYgKCAhJEdldFBhcmFte1Rhc2t9ICkgewogICAgICAgICAgICAkRXJyb3Jze1Rhc2tJbnZhbGlkfSAgID0gJ1NlcnZlckVycm9yJzsKICAgICAgICAgICAgJEVycm9yc3tUYXNrRXJyb3JUeXBlfSA9ICdUYXNrTWlzc2luZ1ZhbHVlJzsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CgogICAgICAgICAgICAjIGNoZWNrIHRoYXQgdGhlIG5hbWUgaXMgdW5pcXVlCiAgICAgICAgICAgIG15ICVFeGlzdGluZ1Rhc2sgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPkFjdGlvbkdldCgKICAgICAgICAgICAgICAgIEFjdGlvbiA9PiAkR2V0UGFyYW17VGFza30sCiAgICAgICAgICAgICk7CiAgICAgICAgICAgIGlmICglRXhpc3RpbmdUYXNrKSB7CiAgICAgICAgICAgICAgICAkRXJyb3Jze1Rhc2tJbnZhbGlkfSAgID0gJ1NlcnZlckVycm9yJzsKICAgICAgICAgICAgICAgICRFcnJvcnN7VGFza0Vycm9yVHlwZX0gPSAnVGFza0R1cGxpY2F0ZU5hbWUnOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICAjIGlmIG5vIGVycm9ycyBvY2N1cnJlZAogICAgICAgIGlmICggISVFcnJvcnMgKSB7CgogICAgICAgICAgICAjIGFkZCB0YXNrCiAgICAgICAgICAgICRUYXNrSUQgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPkFjdGlvblNldHRpbmdzSW5zZXJ0KAogICAgICAgICAgICAgICAgQWN0aW9uICAgICAgID0+ICRHZXRQYXJhbXtUYXNrfSwKICAgICAgICAgICAgICAgIEFjdGlvblN0YXR1cyA9PiAkR2V0UGFyYW17VGFza1N0YXR1c30sCiAgICAgICAgICAgICk7CgogICAgICAgICAgICBpZiAoJFRhc2tJRCkgewoKICAgICAgICAgICAgICAgICMgYnVpbGQgdGhlIG91dHB1dAogICAgICAgICAgICAgICAgJFNlbGYtPl9TZXR0aW5nT3ZlcnZpZXcoKTsKICAgICAgICAgICAgICAgIG15ICRPdXRwdXQgPSAkTGF5b3V0T2JqZWN0LT5IZWFkZXIoKTsKICAgICAgICAgICAgICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+TmF2aWdhdGlvbkJhcigpOwogICAgICAgICAgICAgICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5Ob3RpZnkoCiAgICAgICAgICAgICAgICAgICAgSW5mbyA9PiBUcmFuc2xhdGFibGUoJ1Rhc2sgYWRkZWQhJyksCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5PdXRwdXQoCiAgICAgICAgICAgICAgICAgICAgVGVtcGxhdGVGaWxlID0+ICdBZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZycsCiAgICAgICAgICAgICAgICAgICAgRGF0YSAgICAgICAgID0+IHt9LAogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+Rm9vdGVyKCk7CgogICAgICAgICAgICAgICAgcmV0dXJuICRPdXRwdXQ7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAkTm90ZSA9ICRMb2dPYmplY3QtPkdldExvZ0VudHJ5KAogICAgICAgICAgICAgICAgICAgIFR5cGUgPT4gJ0Vycm9yJywKICAgICAgICAgICAgICAgICAgICBXaGF0ID0+ICdNZXNzYWdlJywKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgICMgc29tZXRoaW5nIHdlbnQgd3JvbmcKICAgICAgICBteSAkT3V0cHV0ID0gJExheW91dE9iamVjdC0+SGVhZGVyKCk7CiAgICAgICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5OYXZpZ2F0aW9uQmFyKCk7CiAgICAgICAgJE91dHB1dCAuPSAkTm90ZQogICAgICAgICAgICA/ICRMYXlvdXRPYmplY3QtPk5vdGlmeSgKICAgICAgICAgICAgICAgIFByaW9yaXR5ID0+ICdFcnJvcicsCiAgICAgICAgICAgICAgICBJbmZvICAgICA9PiAkTm90ZSwKICAgICAgICAgICAgKQogICAgICAgICAgICA6ICcnOwogICAgICAgICRTZWxmLT5fVGFza1NldHRpbmdzRWRpdCgKICAgICAgICAgICAgQWN0aW9uID0+ICdBZGRUYXNrJywKICAgICAgICAgICAgJUdldFBhcmFtLAogICAgICAgICAgICAlRXJyb3JzLAogICAgICAgICk7CiAgICAgICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5PdXRwdXQoCiAgICAgICAgICAgIFRlbXBsYXRlRmlsZSA9PiAnQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcnLAogICAgICAgICAgICBEYXRhICAgICAgICAgPT4gXCVQYXJhbSwKICAgICAgICApOwogICAgICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+Rm9vdGVyKCk7CgogICAgICAgIHJldHVybiAkT3V0cHV0OwogICAgfQoKICAgICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCiAgICAjIGVkaXQgdGFzawogICAgIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKICAgIGVsc2lmICggJFNlbGYtPntTdWJhY3Rpb259IGVxICdFZGl0VGFzaycgKSB7CiAgICAgICAgbXkgJElEID0gJFBhcmFtT2JqZWN0LT5HZXRQYXJhbSggUGFyYW0gPT4gJ0FjdGlvbklEJyApIHx8ICcnOwoKICAgICAgICAjIGdldCBwcm9qZWN0IGRhdGEKICAgICAgICBteSAlVGFzayA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+QWN0aW9uR2V0KAogICAgICAgICAgICBJRCA9PiAkSUQsCiAgICAgICAgKTsKCiAgICAgICAgbXkgJVRhc2tEYXRhID0gKAogICAgICAgICAgICBUYXNrICAgICAgID0+ICRUYXNre0FjdGlvbn0sCiAgICAgICAgICAgIFRhc2tTdGF0dXMgPT4gJFRhc2t7QWN0aW9uU3RhdHVzfSwKICAgICAgICApOwoKICAgICAgICBteSAkT3V0cHV0ID0gJExheW91dE9iamVjdC0+SGVhZGVyKCk7CiAgICAgICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5OYXZpZ2F0aW9uQmFyKCk7CiAgICAgICAgJFNlbGYtPl9UYXNrU2V0dGluZ3NFZGl0KAogICAgICAgICAgICBBY3Rpb24gICA9PiAnRWRpdFRhc2snLAogICAgICAgICAgICBBY3Rpb25JRCA9PiAkSUQsCiAgICAgICAgICAgICVUYXNrRGF0YSwKICAgICAgICApOwogICAgICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+T3V0cHV0KAogICAgICAgICAgICBUZW1wbGF0ZUZpbGUgPT4gJ0FnZW50VGltZUFjY291bnRpbmdTZXR0aW5nJywKICAgICAgICAgICAgRGF0YSAgICAgICAgID0+IFwlUGFyYW0sCiAgICAgICAgKTsKICAgICAgICAkT3V0cHV0IC49ICRMYXlvdXRPYmplY3QtPkZvb3RlcigpOwoKICAgICAgICByZXR1cm4gJE91dHB1dDsKICAgIH0KCiAgICAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIwogICAgIyBlZGl0IHByb2plY3QgYWN0aW9uCiAgICAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIwogICAgZWxzaWYgKCAkU2VsZi0+e1N1YmFjdGlvbn0gZXEgJ0VkaXRUYXNrQWN0aW9uJyApIHsKCiAgICAgICAgIyBjaGFsbGVuZ2UgdG9rZW4gY2hlY2sgZm9yIHdyaXRlIGFjdGlvbgogICAgICAgICRMYXlvdXRPYmplY3QtPkNoYWxsZW5nZVRva2VuQ2hlY2soKTsKCiAgICAgICAgbXkgJE5vdGUgPSAnJzsKICAgICAgICBteSAoICVHZXRQYXJhbSwgJUVycm9ycyApOwoKICAgICAgICAjIGdldCBwYXJhbWV0ZXJzCiAgICAgICAgJEdldFBhcmFte0FjdGlvbklEfSAgID0gJFBhcmFtT2JqZWN0LT5HZXRQYXJhbSggUGFyYW0gPT4gJ0FjdGlvbklEJyApICAgfHwgJyc7CiAgICAgICAgJEdldFBhcmFte1Rhc2tTdGF0dXN9ID0gJFBhcmFtT2JqZWN0LT5HZXRQYXJhbSggUGFyYW0gPT4gJ1Rhc2tTdGF0dXMnICkgfHwgJzAnOwogICAgICAgICRHZXRQYXJhbXtUYXNrfSAgICAgICA9ICRQYXJhbU9iamVjdC0+R2V0UGFyYW0oIFBhcmFtID0+ICdUYXNrJyApICAgICAgIHx8ICcnOwoKICAgICAgICAjIGNoZWNrIGZvciBuZWVkZWQgZGF0YQogICAgICAgIGlmICggISRHZXRQYXJhbXtUYXNrfSApIHsKICAgICAgICAgICAgJEVycm9yc3tUYXNrSW52YWxpZH0gPSAnU2VydmVyRXJyb3InOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKCiAgICAgICAgICAgICMgY2hlY2sgdGhhdCB0aGUgbmFtZSBpcyB1bmlxdWUKICAgICAgICAgICAgbXkgJUV4aXN0aW5nVGFzayA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+QWN0aW9uR2V0KAogICAgICAgICAgICAgICAgQWN0aW9uID0+ICRHZXRQYXJhbXtUYXNrfSwKICAgICAgICAgICAgKTsKCiAgICAgICAgICAgICMgaWYgdGhlIHRhc2sgbmFtZSBpcyBmb3VuZCwgY2hlY2sgdGhhdCB0aGUgSUQgaXMgZGlmZmVyZW50CiAgICAgICAgICAgIGlmICggJUV4aXN0aW5nVGFzayAmJiAkRXhpc3RpbmdUYXNre0lEfSBuZSAkR2V0UGFyYW17QWN0aW9uSUR9ICkgewogICAgICAgICAgICAgICAgJEVycm9yc3tUYXNrSW52YWxpZH0gICA9ICdTZXJ2ZXJFcnJvcic7CiAgICAgICAgICAgICAgICAkRXJyb3Jze1Rhc2tFcnJvclR5cGV9ID0gJ1Rhc2tEdXBsaWNhdGVOYW1lJzsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgIyBpZiBubyBlcnJvcnMgb2NjdXJyZWQKICAgICAgICBpZiAoICElRXJyb3JzICkgewoKICAgICAgICAgICAgIyBlZGl0IGFjdGlvbiAodGFzaykKICAgICAgICAgICAgbXkgJEFjdGlvblVwZGF0ZSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+QWN0aW9uU2V0dGluZ3NVcGRhdGUoCiAgICAgICAgICAgICAgICBBY3Rpb25JRCAgICAgPT4gJEdldFBhcmFte0FjdGlvbklEfSwKICAgICAgICAgICAgICAgIEFjdGlvbiAgICAgICA9PiAkR2V0UGFyYW17VGFza30sCiAgICAgICAgICAgICAgICBBY3Rpb25TdGF0dXMgPT4gJEdldFBhcmFte1Rhc2tTdGF0dXN9LAogICAgICAgICAgICApOwoKICAgICAgICAgICAgaWYgKCRBY3Rpb25VcGRhdGUpIHsKICAgICAgICAgICAgICAgICRTZWxmLT5fU2V0dGluZ092ZXJ2aWV3KCk7CiAgICAgICAgICAgICAgICBteSAkT3V0cHV0ID0gJExheW91dE9iamVjdC0+SGVhZGVyKCk7CiAgICAgICAgICAgICAgICAkT3V0cHV0IC49ICRMYXlvdXRPYmplY3QtPk5hdmlnYXRpb25CYXIoKTsKICAgICAgICAgICAgICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+Tm90aWZ5KAogICAgICAgICAgICAgICAgICAgIEluZm8gPT4gVHJhbnNsYXRhYmxlKCdUYXNrIHVwZGF0ZWQhJyksCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5PdXRwdXQoCiAgICAgICAgICAgICAgICAgICAgVGVtcGxhdGVGaWxlID0+ICdBZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZycsCiAgICAgICAgICAgICAgICAgICAgRGF0YSAgICAgICAgID0+IFwlUGFyYW0sCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5Gb290ZXIoKTsKCiAgICAgICAgICAgICAgICByZXR1cm4gJE91dHB1dDsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICROb3RlID0gJExvZ09iamVjdC0+R2V0TG9nRW50cnkoCiAgICAgICAgICAgICAgICAgICAgVHlwZSA9PiAnRXJyb3InLAogICAgICAgICAgICAgICAgICAgIFdoYXQgPT4gJ01lc3NhZ2UnLAogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgIyBzb21ldGhpbmcgd2VudCB3cm9uZwogICAgICAgIG15ICRPdXRwdXQgPSAkTGF5b3V0T2JqZWN0LT5IZWFkZXIoKTsKICAgICAgICAkT3V0cHV0IC49ICRMYXlvdXRPYmplY3QtPk5hdmlnYXRpb25CYXIoKTsKICAgICAgICAkT3V0cHV0IC49ICROb3RlCiAgICAgICAgICAgID8gJExheW91dE9iamVjdC0+Tm90aWZ5KAogICAgICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ0Vycm9yJywKICAgICAgICAgICAgICAgIEluZm8gICAgID0+ICROb3RlLAogICAgICAgICAgICApCiAgICAgICAgICAgIDogJyc7CiAgICAgICAgJFNlbGYtPl9UYXNrU2V0dGluZ3NFZGl0KAogICAgICAgICAgICBBY3Rpb24gPT4gJ0VkaXRUYXNrJywKICAgICAgICAgICAgJUdldFBhcmFtLAogICAgICAgICAgICAlUGFyYW0sCiAgICAgICAgICAgICVFcnJvcnMsCiAgICAgICAgKTsKICAgICAgICAkT3V0cHV0IC49ICRMYXlvdXRPYmplY3QtPk91dHB1dCgKICAgICAgICAgICAgVGVtcGxhdGVGaWxlID0+ICdBZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZycsCiAgICAgICAgICAgIERhdGEgICAgICAgICA9PiBcJVBhcmFtLAogICAgICAgICk7CiAgICAgICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5Gb290ZXIoKTsKCiAgICAgICAgcmV0dXJuICRPdXRwdXQ7CiAgICB9CgogICAgIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKICAgICMgYWRkIHVzZXIKICAgICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCiAgICBlbHNpZiAoICRTZWxmLT57U3ViYWN0aW9ufSBlcSAnQWRkVXNlcicgKSB7CgogICAgICAgICMgZ2V0IHBhcmFtZXRlcnMKICAgICAgICBteSAkTmV3VXNlcklEID0gJFBhcmFtT2JqZWN0LT5HZXRQYXJhbSggUGFyYW0gPT4gJ05ld1VzZXJJRCcgKQogICAgICAgICAgICB8fCAkUGFyYW1PYmplY3QtPkdldFBhcmFtKCBQYXJhbSA9PiAnVXNlcklEJyApCiAgICAgICAgICAgIHx8ICcnOwogICAgICAgIGlmICggISROZXdVc2VySUQgKSB7CgogICAgICAgICAgICByZXR1cm4gJExheW91dE9iamVjdC0+RXJyb3JTY3JlZW4oCiAgICAgICAgICAgICAgICBNZXNzYWdlID0+IFRyYW5zbGF0YWJsZSgnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJyksCiAgICAgICAgICAgICk7CiAgICAgICAgfQoKICAgICAgICBteSAkTmV3VGltZVBlcmlvZCA9ICRQYXJhbU9iamVjdC0+R2V0UGFyYW0oIFBhcmFtID0+ICdOZXdUaW1lUGVyaW9kJyApOwoKICAgICAgICBteSAkTGFzdFBlcmlvZE51bWJlciA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+VXNlckxhc3RQZXJpb2ROdW1iZXJHZXQoCiAgICAgICAgICAgIFVzZXJJRCA9PiAkTmV3VXNlcklELAogICAgICAgICk7CgogICAgICAgIG15ICRTdWNjZXNzID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyU2V0dGluZ3NJbnNlcnQoCiAgICAgICAgICAgIFVzZXJJRCA9PiAkTmV3VXNlcklELAogICAgICAgICAgICBQZXJpb2QgPT4gJExhc3RQZXJpb2ROdW1iZXIgKyAxLAogICAgICAgICk7CgogICAgICAgICMgaWYgaXQgaXMgbm90IGFuIGFjdGlvbiBhYm91dCBhZGRpbmcgYSBuZXcgdGltZSBwZXJpb2QKICAgICAgICBpZiAoICEkTmV3VGltZVBlcmlvZCAmJiAhJFN1Y2Nlc3MgKSB7CiAgICAgICAgICAgIHJldHVybiAkTGF5b3V0T2JqZWN0LT5FcnJvclNjcmVlbigKICAgICAgICAgICAgICAgIE1lc3NhZ2UgPT4gVHJhbnNsYXRhYmxlKCdDYW5cJ3QgaW5zZXJ0IHVzZXIgZGF0YSEnKSwKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgIG15ICVVc2VyID0gJFVzZXJPYmplY3QtPkdldFVzZXJEYXRhKAogICAgICAgICAgICBVc2VySUQgPT4gJE5ld1VzZXJJRCwKICAgICAgICApOwogICAgICAgIG15ICRPdXRwdXQgPSAkTGF5b3V0T2JqZWN0LT5IZWFkZXIoKTsKICAgICAgICAkT3V0cHV0IC49ICRMYXlvdXRPYmplY3QtPk5hdmlnYXRpb25CYXIoKTsKICAgICAgICAkU2VsZi0+X1VzZXJTZXR0aW5nc0VkaXQoCiAgICAgICAgICAgIEFjdGlvbiAgICA9PiAnQWRkVXNlcicsCiAgICAgICAgICAgIFN1YmFjdGlvbiA9PiAnQWRkVXNlcicsCiAgICAgICAgICAgICVVc2VyLAogICAgICAgICk7CiAgICAgICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5PdXRwdXQoCiAgICAgICAgICAgIFRlbXBsYXRlRmlsZSA9PiAnQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcnLAogICAgICAgICAgICBEYXRhICAgICAgICAgPT4gXCVQYXJhbSwKICAgICAgICApOwogICAgICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+Rm9vdGVyKCk7CgogICAgICAgIHJldHVybiAkT3V0cHV0OwogICAgfQoKICAgICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjCiAgICAjIGVkaXQgdXNlciBzZXR0aW5ncwogICAgIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKICAgIGVsc2lmICggJFNlbGYtPntTdWJhY3Rpb259IGVxICdFZGl0VXNlcicgKSB7CiAgICAgICAgbXkgJElEID0gJFBhcmFtT2JqZWN0LT5HZXRQYXJhbSggUGFyYW0gPT4gJ1VzZXJJRCcgKSB8fCAnJzsKICAgICAgICBpZiAoICEkSUQgKSB7CgogICAgICAgICAgICByZXR1cm4gJExheW91dE9iamVjdC0+RXJyb3JTY3JlZW4oCiAgICAgICAgICAgICAgICBNZXNzYWdlID0+IFRyYW5zbGF0YWJsZSgnVGhlIFVzZXJJRCBpcyBub3QgdmFsaWQhJyksCiAgICAgICAgICAgICk7CiAgICAgICAgfQoKICAgICAgICBteSAkTmV3VGltZVBlcmlvZCAgICA9ICRQYXJhbU9iamVjdC0+R2V0UGFyYW0oIFBhcmFtID0+ICdOZXdUaW1lUGVyaW9kJyApOwogICAgICAgIG15ICRMYXN0UGVyaW9kTnVtYmVyID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyTGFzdFBlcmlvZE51bWJlckdldCgKICAgICAgICAgICAgVXNlcklEID0+ICRJRCwKICAgICAgICApOwoKICAgICAgICAjIGlmIGl0IGlzIGFuIGFjdGlvbiBhYm91dCBhZGRpbmcgYSBuZXcgdGltZSBwZXJpb2QsIGluc2VydCBpdAogICAgICAgIGlmICgkTmV3VGltZVBlcmlvZCkgewogICAgICAgICAgICBteSAkU3VjY2VzcyA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+VXNlclNldHRpbmdzSW5zZXJ0KAogICAgICAgICAgICAgICAgVXNlcklEID0+ICRJRCwKICAgICAgICAgICAgICAgIFBlcmlvZCA9PiAkTGFzdFBlcmlvZE51bWJlciArIDEsCiAgICAgICAgICAgICk7CiAgICAgICAgICAgIGlmICggISRTdWNjZXNzICkgewoKICAgICAgICAgICAgICAgIHJldHVybiAkTGF5b3V0T2JqZWN0LT5FcnJvclNjcmVlbigKICAgICAgICAgICAgICAgICAgICBNZXNzYWdlID0+IFRyYW5zbGF0YWJsZSgnVW5hYmxlIHRvIGFkZCB0aW1lIHBlcmlvZCEnKSwKICAgICAgICAgICAgICAgICAgICBDb21tZW50ID0+IFRyYW5zbGF0YWJsZSgnUGxlYXNlIGNvbnRhY3QgdGhlIGFkbWluaXN0cmF0b3IuJyksCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBteSAlRXJyb3JzID0gKCk7CgogICAgICAgIGlmICgKICAgICAgICAgICAgJFBhcmFtT2JqZWN0LT5HZXRQYXJhbSggUGFyYW0gPT4gJ0FkZFBlcmlvZCcgKQogICAgICAgICAgICB8fCAkUGFyYW1PYmplY3QtPkdldFBhcmFtKCBQYXJhbSA9PiAnU3VibWl0VXNlckRhdGEnICkKICAgICAgICAgICAgKQogICAgICAgIHsKCiAgICAgICAgICAgICMgY2hlY2sgdmFsaWRpdHkgb2YgcGVyaW9kcwogICAgICAgICAgICAlRXJyb3JzID0gJFNlbGYtPl9DaGVja1ZhbGlkaXR5VXNlclBlcmlvZHMoCiAgICAgICAgICAgICAgICBQZXJpb2QgPT4gJExhc3RQZXJpb2ROdW1iZXIsCiAgICAgICAgICAgICk7CiAgICAgICAgfQoKICAgICAgICAjIGdldCB1c2VyIGRhdGEKICAgICAgICBteSAlVXNlciA9ICRVc2VyT2JqZWN0LT5HZXRVc2VyRGF0YSgKICAgICAgICAgICAgVXNlcklEID0+ICRJRCwKICAgICAgICApOwoKICAgICAgICBteSAkT3V0cHV0ID0gJExheW91dE9iamVjdC0+SGVhZGVyKCk7CiAgICAgICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5OYXZpZ2F0aW9uQmFyKCk7CiAgICAgICAgJFNlbGYtPl9Vc2VyU2V0dGluZ3NFZGl0KAogICAgICAgICAgICBBY3Rpb24gICAgPT4gJ0VkaXRVc2VyJywKICAgICAgICAgICAgU3ViYWN0aW9uID0+ICdFZGl0VXNlcicsCiAgICAgICAgICAgIFVzZXJJRCAgICA9PiAkSUQsCiAgICAgICAgICAgIEVycm9ycyAgICA9PiBcJUVycm9ycywKICAgICAgICAgICAgUGVyaW9kcyAgID0+ICRMYXN0UGVyaW9kTnVtYmVyLAogICAgICAgICAgICAlVXNlciwKICAgICAgICApOwogICAgICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+T3V0cHV0KAogICAgICAgICAgICBUZW1wbGF0ZUZpbGUgPT4gJ0FnZW50VGltZUFjY291bnRpbmdTZXR0aW5nJywKICAgICAgICAgICAgRGF0YSAgICAgICAgID0+IFwlUGFyYW0sCiAgICAgICAgKTsKICAgICAgICAkT3V0cHV0IC49ICRMYXlvdXRPYmplY3QtPkZvb3RlcigpOwoKICAgICAgICByZXR1cm4gJE91dHB1dDsKICAgIH0KCiAgICAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIwogICAgIyBzZXR0aW5ncyBmb3IgaGFuZGxpbmcgdGltZSBhY2NvdW50aW5nCiAgICAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIwoKICAgICMgZ2V0IHVzZXIgZGF0YQogICAgbXkgJVVzZXJEYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyR2V0KAogICAgICAgIFVzZXJJRCA9PiAkU2VsZi0+e1VzZXJJRH0sCiAgICApOwoKICAgICMgcGVybWlzc2lvbiBjaGVjawogICAgaWYgKCAhJFVzZXJEYXRhe0NyZWF0ZVByb2plY3R9ICYmICEkU2VsZi0+e0FjY2Vzc1J3fSApIHsKCiAgICAgICAgIyByZXR1cm4gbm8gcGVybWlzc2lvbiBzY3JlZW4KICAgICAgICByZXR1cm4gJExheW91dE9iamVjdC0+Tm9QZXJtaXNzaW9uKAogICAgICAgICAgICBXaXRoSGVhZGVyID0+ICd5ZXMnLAogICAgICAgICk7CiAgICB9CgogICAgIyBnZXQgdGhlIHVzZXIgYWN0aW9uIHRvIHNob3cgYSBtZXNzYWdlIGlmIGFuIHVzZXIgd2FzIHVwZGF0ZWQgb3IgYWRkZWQKICAgIG15ICROb3RlID0gJFBhcmFtT2JqZWN0LT5HZXRQYXJhbSggUGFyYW0gPT4gJ1VzZXInICk7CgogICAgIyBidWlsZCBvdXRwdXQKICAgICRTZWxmLT5fU2V0dGluZ092ZXJ2aWV3KCk7CiAgICBteSAkT3V0cHV0ID0gJExheW91dE9iamVjdC0+SGVhZGVyKAogICAgICAgIFRpdGxlID0+IFRyYW5zbGF0YWJsZSgnU2V0dGluZycpLAogICAgKTsKICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+TmF2aWdhdGlvbkJhcigpOwoKICAgICMgc2hvdyBhIG5vdGlmaWNhdGlvbiBtZXNzYWdlIGlmIHByb3BlcgogICAgaWYgKCROb3RlKSB7CiAgICAgICAgJE91dHB1dCAuPSAkTm90ZSBlcSAnRWRpdFVzZXInCiAgICAgICAgICAgID8gJExheW91dE9iamVjdC0+Tm90aWZ5KAogICAgICAgICAgICAgICAgSW5mbyA9PiBUcmFuc2xhdGFibGUoJ1VzZXIgdXBkYXRlZCEnKSwKICAgICAgICAgICAgKQogICAgICAgICAgICA6ICRMYXlvdXRPYmplY3QtPk5vdGlmeSgKICAgICAgICAgICAgICAgIEluZm8gPT4gVHJhbnNsYXRhYmxlKCdVc2VyIGFkZGVkIScpLAogICAgICAgICAgICApOwogICAgfQoKICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+T3V0cHV0KAogICAgICAgIERhdGEgICAgICAgICA9PiBcJVBhcmFtLAogICAgICAgIFRlbXBsYXRlRmlsZSA9PiAnQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcnCiAgICApOwogICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5Gb290ZXIoKTsKCiAgICByZXR1cm4gJE91dHB1dDsKCn0KCnN1YiBfQ2hlY2tWYWxpZGl0eVVzZXJQZXJpb2RzIHsKICAgIG15ICggJFNlbGYsICVQYXJhbSApID0gQF87CgogICAgbXkgJUVycm9ycyA9ICgpOwogICAgbXkgJUdldFBhcmFtOwoKICAgIG15ICRUaW1lQWNjb3VudGluZ09iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycpOwoKICAgIGZvciAoIG15ICRQZXJpb2QgPSAxOyAkUGVyaW9kIDw9ICRQYXJhbXtQZXJpb2R9OyAkUGVyaW9kKysgKSB7CgogICAgICAgICMgY2hlY2sgZm9yIG5lZWRlZCBkYXRhCiAgICAgICAgZm9yIG15ICRQYXJhbWV0ZXIgKHF3KERhdGVTdGFydCBEYXRlRW5kIExlYXZlRGF5cykpIHsKICAgICAgICAgICAgJEdldFBhcmFteyRQYXJhbWV0ZXJ9CiAgICAgICAgICAgICAgICA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpXZWI6OlJlcXVlc3QnKS0+R2V0UGFyYW0oIFBhcmFtID0+ICRQYXJhbWV0ZXIgLiAiWyRQZXJpb2RdIiApOwogICAgICAgICAgICBpZiAoICEkR2V0UGFyYW17JFBhcmFtZXRlcn0gKSB7CiAgICAgICAgICAgICAgICAkRXJyb3JzeyAkUGFyYW1ldGVyIC4gJy0nIC4gJFBlcmlvZCAuICdJbnZhbGlkJyB9ICAgPSAnU2VydmVyRXJyb3InOwogICAgICAgICAgICAgICAgJEVycm9yc3sgJFBhcmFtZXRlciAuICctJyAuICRQZXJpb2QgLiAnRXJyb3JUeXBlJyB9ID0gJ01pc3NpbmdWYWx1ZSc7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgbXkgKCAkWWVhciwgJE1vbnRoLCAkRGF5ICkgPSBzcGxpdCggLy0vLCAkR2V0UGFyYW17RGF0ZVN0YXJ0fSApOwogICAgICAgIG15ICRTdGFydERhdGUgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPkRhdGUyU3lzdGVtVGltZSgKICAgICAgICAgICAgWWVhciAgID0+ICRZZWFyLAogICAgICAgICAgICBNb250aCAgPT4gJE1vbnRoLAogICAgICAgICAgICBEYXkgICAgPT4gJERheSwKICAgICAgICAgICAgSG91ciAgID0+IDAsCiAgICAgICAgICAgIE1pbnV0ZSA9PiAwLAogICAgICAgICAgICBTZWNvbmQgPT4gMCwKICAgICAgICApOwogICAgICAgICggJFllYXIsICRNb250aCwgJERheSApID0gc3BsaXQoIC8tLywgJEdldFBhcmFte0RhdGVFbmR9ICk7CiAgICAgICAgbXkgJEVuZERhdGUgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPkRhdGUyU3lzdGVtVGltZSgKICAgICAgICAgICAgWWVhciAgID0+ICRZZWFyLAogICAgICAgICAgICBNb250aCAgPT4gJE1vbnRoLAogICAgICAgICAgICBEYXkgICAgPT4gJERheSwKICAgICAgICAgICAgSG91ciAgID0+IDAsCiAgICAgICAgICAgIE1pbnV0ZSA9PiAwLAogICAgICAgICAgICBTZWNvbmQgPT4gMCwKICAgICAgICApOwogICAgICAgIGlmICggISRTdGFydERhdGUgKSB7CiAgICAgICAgICAgICRFcnJvcnN7ICdEYXRlU3RhcnQtJyAuICRQZXJpb2QgLiAnSW52YWxpZCcgfSAgID0gJ1NlcnZlckVycm9yJzsKICAgICAgICAgICAgJEVycm9yc3sgJ0RhdGVTdGFydC0nIC4gJFBlcmlvZCAuICdFcnJvclR5cGUnIH0gPSAnSW52YWxpZCc7CiAgICAgICAgfQogICAgICAgIGlmICggISRFbmREYXRlICkgewogICAgICAgICAgICAkRXJyb3JzeyAnRGF0ZUVuZC0nIC4gJFBlcmlvZCAuICdJbnZhbGlkJyB9ICAgPSAnU2VydmVyRXJyb3InOwogICAgICAgICAgICAkRXJyb3JzeyAnRGF0ZUVuZC0nIC4gJFBlcmlvZCAuICdFcnJvclR5cGUnIH0gPSAnSW52YWxpZCc7CiAgICAgICAgfQogICAgICAgIGlmICggJFN0YXJ0RGF0ZSAmJiAkRW5kRGF0ZSAmJiAkU3RhcnREYXRlID49ICRFbmREYXRlICkgewogICAgICAgICAgICAkRXJyb3JzeyAnRGF0ZUVuZC0nIC4gJFBlcmlvZCAuICdJbnZhbGlkJyB9ICAgPSAnU2VydmVyRXJyb3InOwogICAgICAgICAgICAkRXJyb3JzeyAnRGF0ZUVuZC0nIC4gJFBlcmlvZCAuICdFcnJvclR5cGUnIH0gPSAnQmVmb3JlRGF0ZVN0YXJ0JzsKICAgICAgICB9CiAgICB9CgogICAgcmV0dXJuICVFcnJvcnM7Cn0KCnN1YiBfUHJvamVjdFNldHRpbmdzRWRpdCB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgICMgZ2V0IGxheW91dCBvYmplY3QKICAgIG15ICRMYXlvdXRPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6Ok91dHB1dDo6SFRNTDo6TGF5b3V0Jyk7CgogICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgTmFtZSA9PiAnT3ZlcnZpZXdQcm9qZWN0JywKICAgICAgICBEYXRhID0+IFwlUGFyYW0sCiAgICApOwoKICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgIE5hbWUgPT4gJ0FjdGlvbkxpc3RQcm9qZWN0JywKICAgICAgICBEYXRhID0+IHt9LAogICAgKTsKICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgIE5hbWUgPT4gJ0FjdGlvblNldHRpbmdPdmVydmlldycsCiAgICAgICAgRGF0YSA9PiB7fSwKICAgICk7CgogICAgIyBkZWZpbmUgc3RhdHVzIGxpc3QKICAgIG15ICVTdGF0dXNMaXN0ID0gKAogICAgICAgIDEgPT4gVHJhbnNsYXRhYmxlKCd2YWxpZCcpLAogICAgICAgIDAgPT4gVHJhbnNsYXRhYmxlKCdpbnZhbGlkJyksCiAgICApOwoKICAgIG15ICRQcm9qZWN0U3RhdHVzID0gMTsKICAgIGlmICggZGVmaW5lZCAkUGFyYW17UHJvamVjdFN0YXR1c30gKSB7CiAgICAgICAgJFByb2plY3RTdGF0dXMgPSAkUGFyYW17UHJvamVjdFN0YXR1c307CiAgICB9CgogICAgJFBhcmFte1N0YXR1c09wdGlvbn0gPSAkTGF5b3V0T2JqZWN0LT5CdWlsZFNlbGVjdGlvbigKICAgICAgICBEYXRhICAgICAgID0+IFwlU3RhdHVzTGlzdCwKICAgICAgICBTZWxlY3RlZElEID0+ICRQcm9qZWN0U3RhdHVzLAogICAgICAgIE5hbWUgICAgICAgPT4gJ1Byb2plY3RTdGF0dXMnLAogICAgICAgIENsYXNzICAgICAgPT4gJ01vZGVybml6ZScsCiAgICApOwoKICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgIE5hbWUgPT4gJ092ZXJ2aWV3VXBkYXRlUHJvamVjdCcsCiAgICAgICAgRGF0YSA9PiBcJVBhcmFtLAogICAgKTsKCiAgICAjIHNob3dzIGhlYWRlcgogICAgaWYgKCAkUGFyYW17QWN0aW9ufSBlcSAnRWRpdFByb2plY3QnICkgewogICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICBOYW1lID0+ICdIZWFkZXJFZGl0UHJvamVjdCcsCiAgICAgICAgICAgIERhdGEgPT4ge30sCiAgICAgICAgKTsKICAgIH0KICAgIGVsc2UgewogICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICBOYW1lID0+ICdIZWFkZXJBZGRQcm9qZWN0JywKICAgICAgICAgICAgRGF0YSA9PiB7fSwKICAgICAgICApOwogICAgfQoKICAgICMgc2hvdyBzZXJ2ZXIgZXJyb3IgbWVzc2FnZSAoaWYgYW55KSBmb3IgdGhlIHByb2plY3QgbmFtZQogICAgaWYgKCAkUGFyYW17UHJvamVjdEVycm9yVHlwZX0gKSB7CiAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgIE5hbWUgPT4gJFBhcmFte1Byb2plY3RFcnJvclR5cGV9LAogICAgICAgICAgICBEYXRhID0+IHt9LAogICAgICAgICk7CiAgICB9CgogICAgcmV0dXJuIDE7Cn0KCnN1YiBfU2V0dGluZ092ZXJ2aWV3IHsKICAgIG15ICggJFNlbGYsICVQYXJhbSApID0gQF87CgogICAgbXkgJVByb2plY3QgPSAoKTsKICAgIG15ICVEYXRhICAgID0gKCk7CgogICAgIyBnZXQgbGF5b3V0IG9iamVjdAogICAgbXkgJExheW91dE9iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6T3V0cHV0OjpIVE1MOjpMYXlvdXQnKTsKCiAgICAjIGJ1aWxkIG91dHB1dAogICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgTmFtZSA9PiAnU2V0dGluZycsCiAgICAgICAgRGF0YSA9PiB7fSwKICAgICk7CiAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICBOYW1lID0+ICdBY3Rpb25MaXN0U2V0dGluZycsCiAgICAgICAgRGF0YSA9PiB7fSwKICAgICk7CiAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICBOYW1lID0+ICdBY3Rpb25BZGRQcm9qZWN0JywKICAgICAgICBEYXRhID0+IHt9LAogICAgKTsKCiAgICAjIGhhc2ggdG8gc2F2ZSByZWdpc3RlcmVkIHVzZXJzCiAgICBteSAlVXNlcjsKCiAgICAjIGdldCBuZWVkZWQgb2JqZWN0cwogICAgbXkgJFRpbWVBY2NvdW50aW5nT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlRpbWVBY2NvdW50aW5nJyk7CiAgICBteSAkVXNlck9iamVjdCAgICAgICAgICAgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VXNlcicpOwoKICAgIGlmICggJFNlbGYtPntBY2Nlc3NSd30gKSB7CiAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgIE5hbWUgPT4gJ0FjdGlvbkFkZFRhc2snLAogICAgICAgICAgICBEYXRhID0+IHt9LAogICAgICAgICk7CgogICAgICAgICMgZ2V0IHVzZXIgZGF0YQogICAgICAgIG15ICVTaG93blVzZXJzID0gJFVzZXJPYmplY3QtPlVzZXJMaXN0KAogICAgICAgICAgICBUeXBlICA9PiAnTG9uZycsCiAgICAgICAgICAgIFZhbGlkID0+IDEsCiAgICAgICAgKTsKCiAgICAgICAgIyBnZXQgbGlzdCBvZiByZWdpc3RlcmVkIHVzZXJzIChpZiBhbnkpCiAgICAgICAgJVVzZXIgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlVzZXJMaXN0KCk7CgogICAgICAgIFVTRVJJTkZPOgogICAgICAgIGZvciBteSAkVXNlckluZm8gKCBzb3J0IHsgJFNob3duVXNlcnN7JGF9IGNtcCAkU2hvd25Vc2Vyc3skYn0gfSBrZXlzICVTaG93blVzZXJzICkgewogICAgICAgICAgICBuZXh0IFVTRVJJTkZPIGlmICEkVXNlcnskVXNlckluZm99OwoKICAgICAgICAgICAgIyBkZWxldGUgYWxyZWFkeSByZWdpc3RlcmVkIHVzZXIgZnJvbSB0aGUgJ25ldycgbGlzdAogICAgICAgICAgICBkZWxldGUgJFNob3duVXNlcnN7JFVzZXJJbmZvfTsKICAgICAgICB9CgogICAgICAgIGlmICggc2NhbGFyIGtleXMgJVNob3duVXNlcnMgPj0gMSApIHsKICAgICAgICAgICAgbXkgJE5ld1VzZXJPcHRpb24gPSAkTGF5b3V0T2JqZWN0LT5CdWlsZFNlbGVjdGlvbigKICAgICAgICAgICAgICAgIERhdGEgICAgICAgICA9PiBcJVNob3duVXNlcnMsCiAgICAgICAgICAgICAgICBTZWxlY3RlZElEICAgPT4gJycsCiAgICAgICAgICAgICAgICBOYW1lICAgICAgICAgPT4gJ05ld1VzZXJJRCcsCiAgICAgICAgICAgICAgICBUcmFuc2xhdGlvbiAgPT4gMCwKICAgICAgICAgICAgICAgIFBvc3NpYmxlTm9uZSA9PiAwLAogICAgICAgICAgICAgICAgVGl0bGUgICAgICAgID0+ICRMYXlvdXRPYmplY3QtPntMYW5ndWFnZU9iamVjdH0tPlRyYW5zbGF0ZSgiTmV3IFVzZXIiKSwKICAgICAgICAgICAgICAgIENsYXNzICAgICAgICA9PiAnTW9kZXJuaXplJywKICAgICAgICAgICAgKTsKICAgICAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgICAgICBOYW1lID0+ICdBY3Rpb25BZGRVc2VyJywKICAgICAgICAgICAgICAgIERhdGEgPT4gewogICAgICAgICAgICAgICAgICAgIE5ld1VzZXJPcHRpb24gPT4gJE5ld1VzZXJPcHRpb24sCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICApOwogICAgICAgIH0KICAgIH0KCiAgICAjIFNob3cgcHJvamVjdCBkYXRhCiAgICAlUHJvamVjdCA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+UHJvamVjdFNldHRpbmdzR2V0KCk7CgogICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgTmFtZSA9PiAnT3ZlcnZpZXdSZXN1bHRQcm9qZWN0JywKICAgICAgICBEYXRhID0+IFwlUGFyYW0sCiAgICApOwoKICAgICMgZGVmaW5lIHN0YXR1cyBsaXN0CiAgICBteSAlU3RhdHVzTGlzdCA9ICgKICAgICAgICAxID0+IFRyYW5zbGF0YWJsZSgndmFsaWQnKSwKICAgICAgICAwID0+IFRyYW5zbGF0YWJsZSgnaW52YWxpZCcpLAogICAgKTsKCiAgICAjIHNob3cgbGlzdCBvZiBhdmFpbGFibGUgcHJvamVjdHMgKGlmIGFueSkKICAgIGlmICggJFByb2plY3R7UHJvamVjdH0gKSB7CgogICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICBOYW1lID0+ICdPdmVydmlld1Jlc3VsdFByb2plY3RUYWJsZScsCiAgICAgICAgICAgIERhdGEgPT4geyVQYXJhbX0sCiAgICAgICAgKTsKCiAgICAgICAgZm9yIG15ICRQcm9qZWN0SUQgKAogICAgICAgICAgICBzb3J0IHsgJFByb2plY3R7UHJvamVjdH17JGF9IGNtcCAkUHJvamVjdHtQcm9qZWN0fXskYn0gfQogICAgICAgICAgICBrZXlzICV7ICRQcm9qZWN0e1Byb2plY3R9IH0KICAgICAgICAgICAgKQogICAgICAgIHsKICAgICAgICAgICAgJFBhcmFte1Byb2plY3R9ICAgICAgICAgICAgPSAkUHJvamVjdHtQcm9qZWN0fXskUHJvamVjdElEfTsKICAgICAgICAgICAgJFBhcmFte1Byb2plY3REZXNjcmlwdGlvbn0gPSAkUHJvamVjdHtQcm9qZWN0RGVzY3JpcHRpb259eyRQcm9qZWN0SUR9OwogICAgICAgICAgICAkUGFyYW17UHJvamVjdElEfSAgICAgICAgICA9ICRQcm9qZWN0SUQ7CiAgICAgICAgICAgICRQYXJhbXtTdGF0dXN9ICAgICAgICAgICAgID0gJFN0YXR1c0xpc3R7ICRQcm9qZWN0e1Byb2plY3RTdGF0dXN9eyRQcm9qZWN0SUR9IH07CgogICAgICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgICAgIE5hbWUgPT4gJ092ZXJ2aWV3UmVzdWx0UHJvamVjdFJvdycsCiAgICAgICAgICAgICAgICBEYXRhID0+IHslUGFyYW19LAogICAgICAgICAgICApOwogICAgICAgIH0KICAgIH0KCiAgICAjIG90aGVyd2lzZSwgc2hvdyBhIG5vIGRhdGEgZm91bmQgbWVzc2FnZQogICAgZWxzZSB7CiAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgIE5hbWUgPT4gJ05vUHJvamVjdERhdGFGb3VuZE1zZycsCiAgICAgICAgKTsKICAgIH0KCiAgICBpZiAoICRTZWxmLT57QWNjZXNzUnd9ICkgewoKICAgICAgICAjIFNob3cgYWN0aW9uIGRhdGEKICAgICAgICBteSAlQWN0aW9uID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5BY3Rpb25TZXR0aW5nc0dldCgpOwoKICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgTmFtZSA9PiAnT3ZlcnZpZXdSZXN1bHRTZXR0aW5nJywKICAgICAgICAgICAgRGF0YSA9PiBcJVBhcmFtLAogICAgICAgICk7CgogICAgICAgICMgc2hvdyBsaXN0IG9mIGF2YWlsYWJsZSB0YXNrcy9hY3Rpb25zIChpZiBhbnkpCiAgICAgICAgaWYgKCVBY3Rpb24pIHsKCiAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICAgICAgTmFtZSA9PiAnT3ZlcnZpZXdSZXN1bHRTZXR0aW5nVGFibGUnLAogICAgICAgICAgICAgICAgRGF0YSA9PiB7JVBhcmFtfSwKICAgICAgICAgICAgKTsKCiAgICAgICAgICAgIGZvciBteSAkQWN0aW9uSUQgKCBzb3J0IHsgJEFjdGlvbnskYX17QWN0aW9ufSBjbXAgJEFjdGlvbnskYn17QWN0aW9ufSB9IGtleXMgJUFjdGlvbiApIHsKICAgICAgICAgICAgICAgICRQYXJhbXtBY3Rpb259ICAgPSAkQWN0aW9ueyRBY3Rpb25JRH17QWN0aW9ufTsKICAgICAgICAgICAgICAgICRQYXJhbXtBY3Rpb25JRH0gPSAkQWN0aW9uSUQ7CiAgICAgICAgICAgICAgICAkUGFyYW17U3RhdHVzfSAgID0gJFN0YXR1c0xpc3R7ICRBY3Rpb257JEFjdGlvbklEfXtBY3Rpb25TdGF0dXN9IH07CgogICAgICAgICAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgICAgICAgICAgTmFtZSA9PiAnT3ZlcnZpZXdSZXN1bHRTZXR0aW5nUm93JywKICAgICAgICAgICAgICAgICAgICBEYXRhID0+IHslUGFyYW19LAogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgIyBvdGhlcndpc2UsIHNob3cgYSBubyBkYXRhIGZvdW5kIG1lc3NhZ2UKICAgICAgICBlbHNlIHsKICAgICAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgICAgICBOYW1lID0+ICdOb1NldHRpbmdEYXRhRm91bmRNc2cnLAogICAgICAgICAgICAgICAgRGF0YSA9PiB7fSwKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgICMgc2hvdyB1c2VyIGRhdGEKICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgTmFtZSA9PiAnT3ZlcnZpZXdSZXN1bHRVc2VyJywKICAgICAgICAgICAgRGF0YSA9PiBcJVBhcmFtLAogICAgICAgICk7CgogICAgICAgICMgc2hvdyBsaXN0IG9mIHJlZ2lzdGVyZWQgdXNlcnMgKGlmIGFueSkKICAgICAgICBpZiAoJVVzZXIpIHsKCiAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICAgICAgTmFtZSA9PiAnT3ZlcnZpZXdSZXN1bHRVc2VyVGFibGUnLAogICAgICAgICAgICAgICAgRGF0YSA9PiB7JVBhcmFtfSwKICAgICAgICAgICAgKTsKCiAgICAgICAgICAgIGZvciBteSAkVXNlcklEICggc29ydCB7ICRVc2VyeyRhfSBjbXAgJFVzZXJ7JGJ9IH0ga2V5cyAlVXNlciApIHsKCiAgICAgICAgICAgICAgICAjIGdldCBtaXNzaW5nIHVzZXIgZGF0YQogICAgICAgICAgICAgICAgbXkgJVVzZXJEYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyR2V0KAogICAgICAgICAgICAgICAgICAgIFVzZXJJRCA9PiAkVXNlcklELAogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIG15ICVVc2VyR2VuZXJhbERhdGEgPSAkVXNlck9iamVjdC0+R2V0VXNlckRhdGEoCiAgICAgICAgICAgICAgICAgICAgVXNlcklEID0+ICRVc2VySUQsCiAgICAgICAgICAgICAgICApOwoKICAgICAgICAgICAgICAgICRQYXJhbXtVc2VyfSAgICAgICA9ICIkVXNlckdlbmVyYWxEYXRhe1VzZXJGdWxsbmFtZX0gKCRVc2VyR2VuZXJhbERhdGF7VXNlckxvZ2lufSkiOwogICAgICAgICAgICAgICAgJFBhcmFte1VzZXJJRH0gICAgID0gJFVzZXJJRDsKICAgICAgICAgICAgICAgICRQYXJhbXtDb21tZW50fSAgICA9ICRVc2VyRGF0YXtEZXNjcmlwdGlvbn07CiAgICAgICAgICAgICAgICAkUGFyYW17Q2FsZW5kYXJOb30gPSAkVXNlckRhdGF7Q2FsZW5kYXJ9OwogICAgICAgICAgICAgICAgJFBhcmFte0NhbGVuZGFyfSAgID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpDb25maWcnKS0+R2V0KAogICAgICAgICAgICAgICAgICAgICJUaW1lWm9uZTo6Q2FsZW5kYXIiCiAgICAgICAgICAgICAgICAgICAgICAgIC4gKCAkUGFyYW17Q2FsZW5kYXJOb30gfHwgJycgKSAuICJOYW1lIgogICAgICAgICAgICAgICAgKSB8fCAnRGVmYXVsdCc7CgogICAgICAgICAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgICAgICAgICAgTmFtZSA9PiAnT3ZlcnZpZXdSZXN1bHRVc2VyUm93JywKICAgICAgICAgICAgICAgICAgICBEYXRhID0+IHslUGFyYW19LAogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgIyBvdGhlcndpc2UsIHNob3cgYSBubyBkYXRhIGZvdW5kIG1lc3NhZ2UKICAgICAgICBlbHNlIHsKICAgICAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgICAgICBOYW1lID0+ICdOb1VzZXJEYXRhRm91bmRNc2cnLAogICAgICAgICAgICAgICAgRGF0YSA9PiB7fSwKICAgICAgICAgICAgKTsKICAgICAgICB9CiAgICB9CgogICAgcmV0dXJuIDE7Cn0KCnN1YiBfVGFza1NldHRpbmdzRWRpdCB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgICMgZ2V0IGxheW91dCBvYmplY3QKICAgIG15ICRMYXlvdXRPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6Ok91dHB1dDo6SFRNTDo6TGF5b3V0Jyk7CgogICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgTmFtZSA9PiAnU2V0dGluZycsCiAgICAgICAgRGF0YSA9PiBcJVBhcmFtLAogICAgKTsKCiAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICBOYW1lID0+ICdBY3Rpb25MaXN0U2V0dGluZycsCiAgICAgICAgRGF0YSA9PiB7fSwKICAgICk7CiAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICBOYW1lID0+ICdBY3Rpb25PdmVydmlld1NldHRpbmcnLAogICAgICAgIERhdGEgPT4ge30sCiAgICApOwoKICAgICMgZGVmaW5lIHN0YXR1cyBsaXN0CiAgICBteSAlU3RhdHVzTGlzdCA9ICgKICAgICAgICAxID0+IFRyYW5zbGF0YWJsZSgndmFsaWQnKSwKICAgICAgICAwID0+IFRyYW5zbGF0YWJsZSgnaW52YWxpZCcpLAogICAgKTsKCiAgICBteSAkVGFza1N0YXR1cyA9IDE7CiAgICBpZiAoIGRlZmluZWQgJFBhcmFte1Rhc2tTdGF0dXN9ICkgewogICAgICAgICRUYXNrU3RhdHVzID0gJFBhcmFte1Rhc2tTdGF0dXN9OwogICAgfQoKICAgICRQYXJhbXtTdGF0dXNPcHRpb259ID0gJExheW91dE9iamVjdC0+QnVpbGRTZWxlY3Rpb24oCiAgICAgICAgRGF0YSAgICAgICA9PiBcJVN0YXR1c0xpc3QsCiAgICAgICAgU2VsZWN0ZWRJRCA9PiAkVGFza1N0YXR1cywKICAgICAgICBOYW1lICAgICAgID0+ICdUYXNrU3RhdHVzJywKICAgICAgICBDbGFzcyAgICAgID0+ICdNb2Rlcm5pemUnLAogICAgKTsKCiAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICBOYW1lID0+ICdPdmVydmlld1VwZGF0ZVRhc2snLAogICAgICAgIERhdGEgPT4gXCVQYXJhbSwKICAgICk7CgogICAgIyBzaG93cyBoZWFkZXIKICAgIGlmICggJFBhcmFte0FjdGlvbn0gZXEgJ0VkaXRUYXNrJyApIHsKICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgTmFtZSA9PiAnSGVhZGVyRWRpdFRhc2snLAogICAgICAgICAgICBEYXRhID0+IHt9LAogICAgICAgICk7CiAgICB9CiAgICBlbHNlIHsKICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgTmFtZSA9PiAnSGVhZGVyQWRkVGFzaycsCiAgICAgICAgICAgIERhdGEgPT4ge30sCiAgICAgICAgKTsKICAgIH0KCiAgICAjIHNob3cgc2VydmVyIGVycm9yIG1lc3NhZ2UgKGlmIGFueSkgZm9yIHRoZSB0YXNrIG5hbWUKICAgIGlmICggJFBhcmFte1Rhc2tFcnJvclR5cGV9ICkgewogICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICBOYW1lID0+ICRQYXJhbXtUYXNrRXJyb3JUeXBlfSwKICAgICAgICAgICAgRGF0YSA9PiB7fSwKICAgICAgICApOwogICAgfQoKICAgIHJldHVybiAxOwp9CgpzdWIgX1VzZXJTZXR0aW5nc0VkaXQgewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKICAgIG15ICVHZXRQYXJhbSA9ICgpOwoKICAgICMgZ2V0IHBhcmFtIG9iamVjdAogICAgbXkgJFBhcmFtT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OldlYjo6UmVxdWVzdCcpOwoKICAgICMgZ2V0IHBhcmFtZXRlcnMKICAgIGZvciBteSAkUGFyYW1ldGVyIChxdyhEZXNjcmlwdGlvbiBTaG93T3ZlcnRpbWUgQ3JlYXRlUHJvamVjdCBBbGxvd1NraXAgQ2FsZW5kYXIpKSB7CiAgICAgICAgJEdldFBhcmFteyRQYXJhbWV0ZXJ9ID0gJFBhcmFtT2JqZWN0LT5HZXRQYXJhbSggUGFyYW0gPT4gJFBhcmFtZXRlciApOwogICAgfQoKICAgICMgZ2V0IGxheW91dCBvYmplY3QKICAgIG15ICRMYXlvdXRPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6Ok91dHB1dDo6SFRNTDo6TGF5b3V0Jyk7CgogICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgTmFtZSA9PiAnU2V0dGluZycsCiAgICAgICAgRGF0YSA9PiBcJVBhcmFtLAogICAgKTsKCiAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICBOYW1lID0+ICdBY3Rpb25MaXN0U2V0dGluZycsCiAgICAgICAgRGF0YSA9PiB7fSwKICAgICk7CiAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICBOYW1lID0+ICdBY3Rpb25PdmVydmlld1NldHRpbmcnLAogICAgICAgIERhdGEgPT4ge30sCiAgICApOwogICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgTmFtZSA9PiAnUmVmZXJlbmNlJywKICAgICAgICBEYXRhID0+IHt9LAogICAgKTsKCiAgICAjIGRlZmluZSBzdGF0dXMgbGlzdAogICAgbXkgJVN0YXR1c0xpc3QgPSAoCiAgICAgICAgMSA9PiBUcmFuc2xhdGFibGUoJ3ZhbGlkJyksCiAgICAgICAgMCA9PiBUcmFuc2xhdGFibGUoJ2ludmFsaWQnKSwKICAgICk7CgogICAgIyBnZXQgY29uZmlnIG9iamVjdAogICAgbXkgJENvbmZpZ09iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6Q29uZmlnJyk7CgogICAgIyBmaWxsIHVwIHRoZSBjYWxlbmRhciBsaXN0CiAgICBteSAkQ2FsZW5kYXJMaXN0UmVmID0geyAwID0+ICdEZWZhdWx0JyB9OwogICAgbXkgJENhbGVuZGFySW5kZXggICA9IDE7CiAgICB3aGlsZSAoICRDb25maWdPYmplY3QtPkdldCggIlRpbWVab25lOjpDYWxlbmRhciIgLiAkQ2FsZW5kYXJJbmRleCAuICJOYW1lIiApICkgewogICAgICAgICRDYWxlbmRhckxpc3RSZWYtPnskQ2FsZW5kYXJJbmRleH0gPSAkQ29uZmlnT2JqZWN0LT5HZXQoICJUaW1lWm9uZTo6Q2FsZW5kYXIiIC4gJENhbGVuZGFySW5kZXggLiAiTmFtZSIgKTsKICAgICAgICAkQ2FsZW5kYXJJbmRleCsrOwogICAgfQoKICAgICMgZ2V0IHRpbWUgYWNjb3VudGluZyBvYmplY3QKICAgIG15ICRUaW1lQWNjb3VudGluZ09iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycpOwoKICAgICMgZ2V0IHVzZXIgZGF0YQogICAgbXkgJVVzZXJEYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyR2V0KAogICAgICAgIFVzZXJJRCA9PiAkUGFyYW17VXNlcklEfSwKICAgICk7CgogICAgJFBhcmFte0NhbGVuZGFyT3B0aW9ufSA9ICRMYXlvdXRPYmplY3QtPkJ1aWxkU2VsZWN0aW9uKAogICAgICAgIERhdGEgICAgICAgID0+ICRDYWxlbmRhckxpc3RSZWYsCiAgICAgICAgTmFtZSAgICAgICAgPT4gJ0NhbGVuZGFyJywKICAgICAgICBUcmFuc2xhdGlvbiA9PiAxLAogICAgICAgIFNlbGVjdGVkSUQgID0+ICRHZXRQYXJhbXtDYWxlbmRhcn0gfHwgJFVzZXJEYXRhe0NhbGVuZGFyfSB8fCAwLAogICAgICAgIENsYXNzICAgICAgID0+ICdNb2Rlcm5pemUnLAogICAgKTsKCiAgICAkUGFyYW17RGVzY3JpcHRpb259ID0gJEdldFBhcmFte0Rlc2NyaXB0aW9ufSB8fCAkVXNlckRhdGF7RGVzY3JpcHRpb259IHx8ICcnOwoKICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgIE5hbWUgPT4gJ092ZXJ2aWV3VXBkYXRlVXNlcicsCiAgICAgICAgRGF0YSA9PiB7CiAgICAgICAgICAgICVQYXJhbSwKICAgICAgICAgICAgU2hvd092ZXJ0aW1lID0+ICggJEdldFBhcmFte1Nob3dPdmVydGltZX0gfHwgJFVzZXJEYXRhe1Nob3dPdmVydGltZX0gKQogICAgICAgICAgICA/ICdjaGVja2VkPSJjaGVja2VkIicKICAgICAgICAgICAgOiAnJywKICAgICAgICAgICAgQ3JlYXRlUHJvamVjdCA9PiAoICRHZXRQYXJhbXtDcmVhdGVQcm9qZWN0fSB8fCAkVXNlckRhdGF7Q3JlYXRlUHJvamVjdH0gKQogICAgICAgICAgICA/ICdjaGVja2VkPSJjaGVja2VkIicKICAgICAgICAgICAgOiAnJywKICAgICAgICAgICAgQWxsb3dTa2lwID0+ICggJEdldFBhcmFte0FsbG93U2tpcH0gfHwgJFVzZXJEYXRhe0FsbG93U2tpcH0gKQogICAgICAgICAgICA/ICdjaGVja2VkPSJjaGVja2VkIicKICAgICAgICAgICAgOiAnJywKICAgICAgICB9CiAgICApOwoKICAgICMgaWYgdGhlcmUgYXJlIGVycm9ycyB0byBzaG93CiAgICBpZiAoICRQYXJhbXtFcnJvcnN9ICYmICV7ICRQYXJhbXtFcnJvcnN9IH0gKSB7CgogICAgICAgICMgc2hvdyBhbGwgZXhpc3RpbmcgcGVyaW9kcwogICAgICAgIGZvciAoIG15ICRQZXJpb2QgPSAxOyAkUGVyaW9kIDw9ICRQYXJhbXtQZXJpb2RzfTsgJFBlcmlvZCsrICkgewoKICAgICAgICAgICAgZm9yIG15ICRQYXJhbWV0ZXIgKHF3KERhdGVTdGFydCBEYXRlRW5kIExlYXZlRGF5cyBXZWVrbHlIb3VycyBPdmVydGltZSBQZXJpb2RTdGF0dXMgKSkgewogICAgICAgICAgICAgICAgJEdldFBhcmFteyRQYXJhbWV0ZXJ9ID0gJFBhcmFtT2JqZWN0LT5HZXRQYXJhbSggUGFyYW0gPT4gIiRQYXJhbWV0ZXJcWyRQZXJpb2RcXSIgKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgJFBhcmFteyRQZXJpb2R9e1BlcmlvZFN0YXR1c09wdGlvbn0gPSAkTGF5b3V0T2JqZWN0LT5CdWlsZFNlbGVjdGlvbigKICAgICAgICAgICAgICAgIERhdGEgICAgICAgPT4gXCVTdGF0dXNMaXN0LAogICAgICAgICAgICAgICAgU2VsZWN0ZWRJRCA9PiAkR2V0UGFyYW17UGVyaW9kU3RhdHVzfSB8fCAkUGFyYW17JFBlcmlvZH17UGVyaW9kU3RhdHVzfSwKICAgICAgICAgICAgICAgIE5hbWUgICAgICAgPT4gIlBlcmlvZFN0YXR1c1skUGVyaW9kXSIsCiAgICAgICAgICAgICAgICBJRCAgICAgICAgID0+ICJQZXJpb2RTdGF0dXMtJFBlcmlvZCIsCiAgICAgICAgICAgICAgICBUaXRsZSAgICAgID0+ICRMYXlvdXRPYmplY3QtPntMYW5ndWFnZU9iamVjdH0tPlRyYW5zbGF0ZSgiUGVyaW9kIFN0YXR1cyIpLAogICAgICAgICAgICAgICAgQ2xhc3MgICAgICA9PiAnTW9kZXJuaXplJywKICAgICAgICAgICAgKTsKCiAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICAgICAgTmFtZSA9PiAnUGVyaW9kT3ZlcnZpZXdSb3cnLAogICAgICAgICAgICAgICAgRGF0YSA9PiB7CiAgICAgICAgICAgICAgICAgICAgUGVyaW9kICAgICAgICAgICA9PiAkUGVyaW9kLAogICAgICAgICAgICAgICAgICAgIERhdGVTdGFydEludmFsaWQgPT4gJFBhcmFte0Vycm9yc30tPnsgJ0RhdGVTdGFydC0nIC4gJFBlcmlvZCAuICdJbnZhbGlkJyB9CiAgICAgICAgICAgICAgICAgICAgICAgIHx8ICcnLAogICAgICAgICAgICAgICAgICAgIERhdGVFbmRJbnZhbGlkICAgPT4gJFBhcmFte0Vycm9yc30tPnsgJ0RhdGVFbmQtJyAuICRQZXJpb2QgLiAnSW52YWxpZCcgfSB8fCAnJywKICAgICAgICAgICAgICAgICAgICBMZWF2ZURheXNJbnZhbGlkID0+ICRQYXJhbXtFcnJvcnN9LT57ICdMZWF2ZURheXMtJyAuICRQZXJpb2QgLiAnSW52YWxpZCcgfQogICAgICAgICAgICAgICAgICAgICAgICB8fCAnJywKICAgICAgICAgICAgICAgICAgICBEYXRlU3RhcnQgICAgICAgICAgPT4gJEdldFBhcmFte0RhdGVTdGFydH0sCiAgICAgICAgICAgICAgICAgICAgRGF0ZUVuZCAgICAgICAgICAgID0+ICRHZXRQYXJhbXtEYXRlRW5kfSwKICAgICAgICAgICAgICAgICAgICBMZWF2ZURheXMgICAgICAgICAgPT4gJEdldFBhcmFte0xlYXZlRGF5c30sCiAgICAgICAgICAgICAgICAgICAgV2Vla2x5SG91cnMgICAgICAgID0+ICRHZXRQYXJhbXtXZWVrbHlIb3Vyc30sCiAgICAgICAgICAgICAgICAgICAgT3ZlcnRpbWUgICAgICAgICAgID0+ICRHZXRQYXJhbXtPdmVydGltZX0sCiAgICAgICAgICAgICAgICAgICAgUGVyaW9kU3RhdHVzT3B0aW9uID0+ICRQYXJhbXskUGVyaW9kfXtQZXJpb2RTdGF0dXNPcHRpb259LAogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgKTsKCiAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICAgICAgTmFtZSA9PiAnRGF0ZVN0YXJ0JwogICAgICAgICAgICAgICAgICAgIC4gKAogICAgICAgICAgICAgICAgICAgICAgICAkUGFyYW17RXJyb3JzfS0+eyAnRGF0ZVN0YXJ0LScgLiAkUGVyaW9kIC4gJ0Vycm9yVHlwZScgfQogICAgICAgICAgICAgICAgICAgICAgICB8fCAnTWlzc2luZ1ZhbHVlJwogICAgICAgICAgICAgICAgICAgICksCiAgICAgICAgICAgICAgICBEYXRhID0+IHsgUGVyaW9kID0+ICRQZXJpb2QgfSwKICAgICAgICAgICAgKTsKICAgICAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgICAgICBOYW1lID0+ICdEYXRlRW5kJwogICAgICAgICAgICAgICAgICAgIC4gKCAkUGFyYW17RXJyb3JzfS0+eyAnRGF0ZUVuZC0nIC4gJFBlcmlvZCAuICdFcnJvclR5cGUnIH0gfHwgJ01pc3NpbmdWYWx1ZScgKSwKICAgICAgICAgICAgICAgIERhdGEgPT4geyBQZXJpb2QgPT4gJFBlcmlvZCB9LAogICAgICAgICAgICApOwogICAgICAgIH0KICAgIH0KICAgIGVsc2UgewogICAgICAgIG15ICVVc2VyID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5TaW5nbGVVc2VyU2V0dGluZ3NHZXQoCiAgICAgICAgICAgIFVzZXJJRCA9PiAkUGFyYW17VXNlcklEfSwKICAgICAgICApOwoKICAgICAgICAjIHNob3cgdXNlciBkYXRhCiAgICAgICAgaWYgKCVVc2VyKSB7CiAgICAgICAgICAgIG15ICRMYXN0UGVyaW9kTnVtYmVyID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyTGFzdFBlcmlvZE51bWJlckdldCgKICAgICAgICAgICAgICAgIFVzZXJJRCA9PiAkUGFyYW17VXNlcklEfQogICAgICAgICAgICApOwoKICAgICAgICAgICAgZm9yICggbXkgJFBlcmlvZCA9IDE7ICRQZXJpb2QgPD0gJExhc3RQZXJpb2ROdW1iZXI7ICRQZXJpb2QrKyApIHsKICAgICAgICAgICAgICAgIG15ICVQZXJpb2RQYXJhbSA9ICgpOwoKICAgICAgICAgICAgICAgICMgZ2V0IGFsbCBuZWVkZWQgZGF0YSB0byBkaXNwbGF5CiAgICAgICAgICAgICAgICBmb3IgbXkgJFBhcmFtZXRlciAocXcoRGF0ZVN0YXJ0IERhdGVFbmQgTGVhdmVEYXlzIFdlZWtseUhvdXJzIE92ZXJ0aW1lKSkgewogICAgICAgICAgICAgICAgICAgICRQZXJpb2RQYXJhbXskUGFyYW1ldGVyfSA9ICRVc2VyeyRQZXJpb2R9eyRQYXJhbWV0ZXJ9OwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJFBlcmlvZFBhcmFte1BlcmlvZH0gPSAkUGVyaW9kOwoKICAgICAgICAgICAgICAgICRQZXJpb2RQYXJhbXtQZXJpb2RTdGF0dXNPcHRpb259ID0gJExheW91dE9iamVjdC0+QnVpbGRTZWxlY3Rpb24oCiAgICAgICAgICAgICAgICAgICAgRGF0YSAgICAgICA9PiBcJVN0YXR1c0xpc3QsCiAgICAgICAgICAgICAgICAgICAgU2VsZWN0ZWRJRCA9PiAkVXNlcnskUGVyaW9kfXtVc2VyU3RhdHVzfSwKICAgICAgICAgICAgICAgICAgICBOYW1lICAgICAgID0+ICJQZXJpb2RTdGF0dXNbJFBlcmlvZF0iLAogICAgICAgICAgICAgICAgICAgIElEICAgICAgICAgPT4gIlBlcmlvZFN0YXR1cy0kUGVyaW9kIiwKICAgICAgICAgICAgICAgICAgICBUaXRsZSAgICAgID0+ICRMYXlvdXRPYmplY3QtPntMYW5ndWFnZU9iamVjdH0tPlRyYW5zbGF0ZSgiUGVyaW9kIFN0YXR1cyIpLAogICAgICAgICAgICAgICAgICAgIENsYXNzICAgICAgPT4gJ01vZGVybml6ZScsCiAgICAgICAgICAgICAgICApOwoKICAgICAgICAgICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICAgICAgICAgIE5hbWUgPT4gJ1BlcmlvZE92ZXJ2aWV3Um93JywKICAgICAgICAgICAgICAgICAgICBEYXRhID0+IFwlUGVyaW9kUGFyYW0sCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICAjIHNob3cgYSBubyBkYXRhIGZvdW5kIG1lc3NhZ2UKICAgICAgICBlbHNlIHsKICAgICAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgICAgICBOYW1lID0+ICdQZXJpb2RPdmVydmlld1Jvd05vRGF0YScsCiAgICAgICAgICAgICAgICBEYXRhID0+IHt9LAogICAgICAgICAgICApOwogICAgICAgIH0KICAgIH0KCiAgICByZXR1cm4gMTsKfQoKMTsK</File>
        <File Location="Kernel/Modules/AgentTimeAccountingView.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6TW9kdWxlczo6QWdlbnRUaW1lQWNjb3VudGluZ1ZpZXc7Cgp1c2Ugc3RyaWN0Owp1c2Ugd2FybmluZ3M7CgpvdXIgJE9iamVjdE1hbmFnZXJEaXNhYmxlZCA9IDE7CgpzdWIgbmV3IHsKICAgIG15ICggJFR5cGUsICVQYXJhbSApID0gQF87CgogICAgIyBhbGxvY2F0ZSBuZXcgaGFzaCBmb3Igb2JqZWN0CiAgICBteSAkU2VsZiA9IHslUGFyYW19OwogICAgYmxlc3MoICRTZWxmLCAkVHlwZSApOwoKICAgIG15ICREYXRlVGltZU9iamVjdCA9ICRLZXJuZWw6Ok9NLT5DcmVhdGUoJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScpOwoKICAgICRTZWxmLT57VGltZVpvbmV9ID0gJFBhcmFte1RpbWVab25lfQogICAgICAgIHx8ICRQYXJhbXtVc2VyVGltZVpvbmV9CiAgICAgICAgfHwgJERhdGVUaW1lT2JqZWN0LT5PVE9CT1RpbWVab25lR2V0KCk7CgogICAgcmV0dXJuICRTZWxmOwp9CgpzdWIgUnVuIHsKICAgIG15ICggJFNlbGYsICVQYXJhbSApID0gQF87CgogICAgbXkgQE1vbnRoQXJyYXkgPSAoCiAgICAgICAgJycsICAgICAnSmFudWFyeScsICdGZWJydWFyeScsICdNYXJjaCcsICAgICAnQXByaWwnLCAgICdNYXknLAogICAgICAgICdKdW5lJywgJ0p1bHknLCAgICAnQXVndXN0JywgICAnU2VwdGVtYmVyJywgJ09jdG9iZXInLCAnTm92ZW1iZXInLAogICAgICAgICdEZWNlbWJlcicsCiAgICApOwogICAgbXkgQFdlZWtkYXlBcnJheSA9ICggJ01vbicsICdUdWUnLCAnV2VkJywgJ1RodScsICdGcmknLCAnU2F0JywgJ1N1bicsICk7CgogICAgIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKICAgICMgdmlldyBvbGRlciBkYXkgaW5zZXJ0cwogICAgIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMKCiAgICAjIGdldCBsYXlvdXQgb2JqZWN0CiAgICBteSAkTGF5b3V0T2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpPdXRwdXQ6OkhUTUw6OkxheW91dCcpOwoKICAgICMgcGVybWlzc2lvbiBjaGVjawogICAgaWYgKCAhJFNlbGYtPntBY2Nlc3NSb30gKSB7CiAgICAgICAgcmV0dXJuICRMYXlvdXRPYmplY3QtPk5vUGVybWlzc2lvbigKICAgICAgICAgICAgV2l0aEhlYWRlciA9PiAneWVzJywKICAgICAgICApOwogICAgfQoKICAgICMgZ2V0IHBhcmFtcwogICAgZm9yIG15ICRQYXJhbWV0ZXIgKHF3KERheSBNb250aCBZZWFyIFVzZXJJRCkpIHsKICAgICAgICAkUGFyYW17JFBhcmFtZXRlcn0gPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6V2ViOjpSZXF1ZXN0JyktPkdldFBhcmFtKCBQYXJhbSA9PiAkUGFyYW1ldGVyICk7CiAgICB9CgogICAgIyBjaGVjayBuZWVkZWQgcGFyYW1zCiAgICBmb3IgbXkgJE5lZWRlZCAocXcoRGF5IE1vbnRoIFllYXIpKSB7CiAgICAgICAgaWYgKCAhJFBhcmFteyROZWVkZWR9ICkgewoKICAgICAgICAgICAgcmV0dXJuICRMYXlvdXRPYmplY3QtPkVycm9yU2NyZWVuKAogICAgICAgICAgICAgICAgTWVzc2FnZSA9PiAkTGF5b3V0T2JqZWN0LT57TGFuZ3VhZ2VPYmplY3R9LT5UcmFuc2xhdGUoICdWaWV3OiBOZWVkICVzIScsICROZWVkZWQgKSwKICAgICAgICAgICAgKTsKICAgICAgICB9CiAgICB9CgogICAgIyBmb3JtYXQgdGhlIGRhdGUgcGFydHMKICAgICRQYXJhbXtZZWFyfSAgPSBzcHJpbnRmKCAiJTAyZCIsICRQYXJhbXtZZWFyfSApOwogICAgJFBhcmFte01vbnRofSA9IHNwcmludGYoICIlMDJkIiwgJFBhcmFte01vbnRofSApOwogICAgJFBhcmFte0RheX0gICA9IHNwcmludGYoICIlMDJkIiwgJFBhcmFte0RheX0gKTsKCiAgICAjIGlmIG5vIFVzZXJJRCBwb3N0ZWQgdXNlIHRoZSBjdXJyZW50IHVzZXIKICAgICRQYXJhbXtVc2VySUR9IHx8PSAkU2VsZi0+e1VzZXJJRH07CgogICAgIyBnZXQgdGltZSBhbmQgdGltZWFjY291bnRpbmcgb2JqZWN0CiAgICBteSAkRGF0ZVRpbWVPYmplY3RDdXJyZW50ID0gJEtlcm5lbDo6T00tPkNyZWF0ZSgnS2VybmVsOjpTeXN0ZW06OkRhdGVUaW1lJyk7CiAgICBteSAkVGltZUFjY291bnRpbmdPYmplY3QgID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlRpbWVBY2NvdW50aW5nJyk7CgogICAgIyBnZXQgY3VycmVudCBkYXRlIGFuZCB0aW1lCiAgICBteSAoICRTZWMsICRNaW4sICRIb3VyLCAkRGF5LCAkTW9udGgsICRZZWFyICkgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlN5c3RlbVRpbWUyRGF0ZSgKICAgICAgICBTeXN0ZW1UaW1lID0+ICREYXRlVGltZU9iamVjdEN1cnJlbnQtPlRvRXBvY2goKSwKICAgICk7CgogICAgbXkgJE1heEFsbG93ZWRJbnNlcnREYXlzID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpDb25maWcnKS0+R2V0KCdUaW1lQWNjb3VudGluZzo6TWF4QWxsb3dlZEluc2VydERheXMnKSB8fCAnMTAnOwogICAgKCAkUGFyYW17WWVhckFsbG93ZWR9LCAkUGFyYW17TW9udGhBbGxvd2VkfSwgJFBhcmFte0RheUFsbG93ZWR9ICkKICAgICAgICA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+QWRkRGVsdGFZTUQoICRZZWFyLCAkTW9udGgsICREYXksIDAsIDAsIC0kTWF4QWxsb3dlZEluc2VydERheXMgKTsKCiAgICBteSAkRGF0ZVRpbWVPYmplY3RHaXZlbiA9ICRLZXJuZWw6Ok9NLT5DcmVhdGUoCiAgICAgICAgJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScsCiAgICAgICAgT2JqZWN0UGFyYW1zID0+IHsKICAgICAgICAgICAgWWVhciAgPT4gJFBhcmFte1llYXJ9LAogICAgICAgICAgICBNb250aCA9PiAkUGFyYW17TW9udGh9LAogICAgICAgICAgICBEYXkgICA9PiAkUGFyYW17RGF5fSwKICAgICAgICB9CiAgICApOwoKICAgIG15ICREYXRlVGltZU9iamVjdEFsbG93ZWQgPSAkS2VybmVsOjpPTS0+Q3JlYXRlKAogICAgICAgICdLZXJuZWw6OlN5c3RlbTo6RGF0ZVRpbWUnLAogICAgICAgIE9iamVjdFBhcmFtcyA9PiB7CiAgICAgICAgICAgIFllYXIgID0+ICRQYXJhbXtZZWFyQWxsb3dlZH0sCiAgICAgICAgICAgIE1vbnRoID0+ICRQYXJhbXtNb250aEFsbG93ZWR9LAogICAgICAgICAgICBEYXkgICA9PiAkUGFyYW17RGF5QWxsb3dlZH0sCiAgICAgICAgfQogICAgKTsKCiAgICBpZiAoCiAgICAgICAgJERhdGVUaW1lT2JqZWN0R2l2ZW4tPkNvbXBhcmUoIERhdGVUaW1lT2JqZWN0ID0+ICREYXRlVGltZU9iamVjdEFsbG93ZWQgKQogICAgICAgID4gMAogICAgICAgICYmICRQYXJhbXtVc2VySUR9ID09ICRTZWxmLT57VXNlcklEfQogICAgICAgICkKICAgIHsKICAgICAgICByZXR1cm4gJExheW91dE9iamVjdC0+UmVkaXJlY3QoCiAgICAgICAgICAgIE9QID0+CiAgICAgICAgICAgICAgICAiQWN0aW9uPUFnZW50VGltZUFjY291bnRpbmdFZGl0O1llYXI9JFBhcmFte1llYXJ9O01vbnRoPSRQYXJhbXtNb250aH07RGF5PSRQYXJhbXtEYXl9IiwKICAgICAgICApOwogICAgfQoKICAgICMgc2hvdyB0aGUgbmFtaW5nIG9mIHRoZSBhZ2VudCB3aGljaCB0aW1lIGFjY291bnRpbmcgaXMgdmlzaXRlZAogICAgaWYgKCAkUGFyYW17VXNlcklEfSAhPSAkU2VsZi0+e1VzZXJJRH0gKSB7CiAgICAgICAgbXkgJVNob3duVXNlcnMgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VXNlcicpLT5Vc2VyTGlzdCgKICAgICAgICAgICAgVHlwZSAgPT4gJ0xvbmcnLAogICAgICAgICAgICBWYWxpZCA9PiAxCiAgICAgICAgKTsKICAgICAgICAkUGFyYW17VXNlcn0gPSAkU2hvd25Vc2Vyc3sgJFBhcmFte1VzZXJJRH0gfTsKICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgTmFtZSA9PiAnVXNlcicsCiAgICAgICAgICAgIERhdGEgPT4geyVQYXJhbX0sCiAgICAgICAgKTsKICAgIH0KCiAgICAkUGFyYW17V2Vla2RheX0gICAgICAgICA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+RGF5T2ZXZWVrKCAkUGFyYW17WWVhcn0sICRQYXJhbXtNb250aH0sICRQYXJhbXtEYXl9ICk7CiAgICAkUGFyYW17V2Vla2RheV90b19UZXh0fSA9ICRXZWVrZGF5QXJyYXlbICRQYXJhbXtXZWVrZGF5fSAtIDEgXTsKICAgICRQYXJhbXtNb250aF90b19UZXh0fSAgID0gJE1vbnRoQXJyYXlbICRQYXJhbXtNb250aH0gXTsKCiAgICAjIFZhbHVlcyBmb3IgdGhlIGxpbmsgaWNvbnMgPD4KICAgICggJFBhcmFte1llYXJCYWNrfSwgJFBhcmFte01vbnRoQmFja30sICRQYXJhbXtEYXlCYWNrfSApCiAgICAgICAgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPkFkZERlbHRhWU1EKCAkUGFyYW17WWVhcn0sICRQYXJhbXtNb250aH0sICRQYXJhbXtEYXl9LCAwLCAwLCAtMSApOwogICAgKCAkUGFyYW17WWVhck5leHR9LCAkUGFyYW17TW9udGhOZXh0fSwgJFBhcmFte0RheU5leHR9ICkKICAgICAgICA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+QWRkRGVsdGFZTUQoICRQYXJhbXtZZWFyfSwgJFBhcmFte01vbnRofSwgJFBhcmFte0RheX0sIDAsIDAsIDEgKTsKCiAgICAkUGFyYW17RGF0ZVNlbGVjdGlvbn0gPSAkTGF5b3V0T2JqZWN0LT5CdWlsZERhdGVTZWxlY3Rpb24oCiAgICAgICAgJVBhcmFtLAogICAgICAgIFByZWZpeCAgID0+ICcnLAogICAgICAgIEZvcm1hdCAgID0+ICdEYXRlSW5wdXRGb3JtYXQnLAogICAgICAgIFZhbGlkYXRlID0+IDEsCiAgICAgICAgQ2xhc3MgICAgPT4gJFBhcmFte0Vycm9yc30tPntEYXRlSW52YWxpZH0sCiAgICApOwoKICAgICMgU2hvdyBXb3JraW5nIFVuaXRzCiAgICAjIGdldCBleGlzdGluZyB3b3JraW5nIHVuaXRzCiAgICBteSAlRGF0YSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+V29ya2luZ1VuaXRzR2V0KAogICAgICAgIFllYXIgICA9PiAkUGFyYW17WWVhcn0sCiAgICAgICAgTW9udGggID0+ICRQYXJhbXtNb250aH0sCiAgICAgICAgRGF5ICAgID0+ICRQYXJhbXtEYXl9LAogICAgICAgIFVzZXJJRCA9PiAkUGFyYW17VXNlcklEfSwKICAgICk7CgogICAgJFBhcmFte0RhdGV9ID0gJERhdGF7RGF0ZX07CgogICAgIyBnZXQgcHJvamVjdCBhbmQgYWN0aW9uIHNldHRpbmdzCiAgICBteSAlUHJvamVjdCA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+UHJvamVjdFNldHRpbmdzR2V0KCk7CiAgICBteSAlQWN0aW9uICA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+QWN0aW9uU2V0dGluZ3NHZXQoKTsKCiAgICAjIGdldCBzaWNrLCBsZWF2ZSBkYXkgYW5kIG92ZXJ0aW1lCiAgICAkUGFyYW17U2lja30gICAgID0gJERhdGF7U2lja30gICAgID8gJ2NoZWNrZWQnIDogJyc7CiAgICAkUGFyYW17TGVhdmVEYXl9ID0gJERhdGF7TGVhdmVEYXl9ID8gJ2NoZWNrZWQnIDogJyc7CiAgICAkUGFyYW17T3ZlcnRpbWV9ID0gJERhdGF7T3ZlcnRpbWV9ID8gJ2NoZWNrZWQnIDogJyc7CgogICAgIyBvbmx5IHNob3cgdGhlIHVuaXQgYmxvY2sgaWYgdGhlcmUgaXMgc29tZSBkYXRhCiAgICBteSAkVW5pdHNSZWYgPSAkRGF0YXtXb3JraW5nVW5pdHN9OwogICAgaWYgKCAkVW5pdHNSZWYtPlswXSApIHsKCiAgICAgICAgZm9yIG15ICRVbml0UmVmICggQHskVW5pdHNSZWZ9ICkgewoKICAgICAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgICAgICBOYW1lID0+ICdVbml0JywKICAgICAgICAgICAgICAgIERhdGEgPT4gewogICAgICAgICAgICAgICAgICAgIFByb2plY3QgICA9PiAkUHJvamVjdHtQcm9qZWN0fXsgJFVuaXRSZWYtPntQcm9qZWN0SUR9IH0sCiAgICAgICAgICAgICAgICAgICAgQWN0aW9uICAgID0+ICRBY3Rpb257ICRVbml0UmVmLT57QWN0aW9uSUR9IH17QWN0aW9ufSwKICAgICAgICAgICAgICAgICAgICBSZW1hcmsgICAgPT4gJFVuaXRSZWYtPntSZW1hcmt9LAogICAgICAgICAgICAgICAgICAgIFN0YXJ0VGltZSA9PiAkVW5pdFJlZi0+e1N0YXJ0VGltZX0sCiAgICAgICAgICAgICAgICAgICAgRW5kVGltZSAgID0+ICRVbml0UmVmLT57RW5kVGltZX0sCiAgICAgICAgICAgICAgICAgICAgUGVyaW9kICAgID0+ICRVbml0UmVmLT57UGVyaW9kfSwKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICk7CiAgICAgICAgfQoKICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgTmFtZSA9PiAnVG90YWwnLAogICAgICAgICAgICBEYXRhID0+IHsKICAgICAgICAgICAgICAgIFRvdGFsID0+IHNwcmludGYoICIlLjJmIiwgJERhdGF7VG90YWx9ICksCiAgICAgICAgICAgIH0sCiAgICAgICAgKTsKICAgIH0KICAgIGVsc2UgewogICAgICAgICRMYXlvdXRPYmplY3QtPkJsb2NrKAogICAgICAgICAgICBOYW1lID0+ICdOb0RhdGFGb3VuZCcsCiAgICAgICAgICAgIERhdGEgPT4ge30sCiAgICAgICAgKTsKICAgIH0KCiAgICBpZiAoICRQYXJhbXtTaWNrfSB8fCAkUGFyYW17TGVhdmVEYXl9IHx8ICRQYXJhbXtPdmVydGltZX0gKSB7CiAgICAgICAgJExheW91dE9iamVjdC0+QmxvY2soCiAgICAgICAgICAgIE5hbWUgPT4gJ090aGVyVGltZXMnLAogICAgICAgICAgICBEYXRhID0+IHsKICAgICAgICAgICAgICAgIFNpY2sgICAgID0+ICRQYXJhbXtTaWNrfSwKICAgICAgICAgICAgICAgIExlYXZlRGF5ID0+ICRQYXJhbXtMZWF2ZURheX0sCiAgICAgICAgICAgICAgICBPdmVydGltZSA9PiAkUGFyYW17T3ZlcnRpbWV9LAogICAgICAgICAgICB9LAogICAgICAgICk7CiAgICB9CgogICAgbXkgJVVzZXJEYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyR2V0KAogICAgICAgIFVzZXJJRCA9PiAkUGFyYW17VXNlcklEfSwKICAgICk7CgogICAgbXkgJFZhY2F0aW9uID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5WYWNhdGlvbkNoZWNrKAogICAgICAgIFllYXIgICAgID0+ICRQYXJhbXtZZWFyfSwKICAgICAgICBNb250aCAgICA9PiAkUGFyYW17TW9udGh9LAogICAgICAgIERheSAgICAgID0+ICRQYXJhbXtEYXl9LAogICAgICAgIENhbGVuZGFyID0+ICRVc2VyRGF0YXtDYWxlbmRhcn0sCiAgICApOwoKICAgIGlmICgkVmFjYXRpb24pIHsKICAgICAgICAkTGF5b3V0T2JqZWN0LT5CbG9jaygKICAgICAgICAgICAgTmFtZSA9PiAnVmFjYXRpb24nLAogICAgICAgICAgICBEYXRhID0+IHsKICAgICAgICAgICAgICAgIFZhY2F0aW9uID0+ICRWYWNhdGlvbiwKICAgICAgICAgICAgfSwKICAgICAgICApOwogICAgfQoKICAgICMgcHJlc2VudGF0aW9uCiAgICBteSAkT3V0cHV0ID0gJExheW91dE9iamVjdC0+SGVhZGVyKAogICAgICAgIFRpdGxlID0+ICdWaWV3JywKICAgICk7CiAgICAkT3V0cHV0IC49ICRMYXlvdXRPYmplY3QtPk5hdmlnYXRpb25CYXIoKTsKICAgICRPdXRwdXQgLj0gJExheW91dE9iamVjdC0+T3V0cHV0KAogICAgICAgIERhdGEgICAgICAgICA9PiBcJVBhcmFtLAogICAgICAgIFRlbXBsYXRlRmlsZSA9PiAnQWdlbnRUaW1lQWNjb3VudGluZ1ZpZXcnCiAgICApOwogICAgJE91dHB1dCAuPSAkTGF5b3V0T2JqZWN0LT5Gb290ZXIoKTsKCiAgICByZXR1cm4gJE91dHB1dDsKfQoKMTsK</File>
        <File Location="Kernel/Output/HTML/Templates/Standard/AgentTicketAccountTime.tt" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgo8Zm9ybSBhY3Rpb249IlslIEVudigiQ0dJSGFuZGxlIikgJV0iIG1ldGhvZD0icG9zdCIgZW5jdHlwZT0ibXVsdGlwYXJ0L2Zvcm0tZGF0YSIgbmFtZT0iY29tcG9zZSIgY2xhc3M9IlZhbGlkYXRlIFByZXZlbnRNdWx0aXBsZVN1Ym1pdHMiPgogICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgaWQ9IkNoYWxsZW5nZVRva2VuIiBuYW1lPSJDaGFsbGVuZ2VUb2tlbiIgdmFsdWU9IlslIEVudigiVXNlckNoYWxsZW5nZVRva2VuIikgfCBodG1sICVdIi8+CiAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJBY3Rpb24iIHZhbHVlPSJBZ2VudFRpY2tldEFjY291bnRUaW1lIi8+CiAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJTdWJhY3Rpb24iIHZhbHVlPSJTdG9yZU5ldyIvPgogICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iVGlja2V0SUQiIHZhbHVlPSJbJSBEYXRhLlRpY2tldElEIHwgaHRtbCAlXSIvPgogICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iUHJvamVjdElEIiB2YWx1ZT0iWyUgRGF0YS5Qcm9qZWN0SUQgfCBodG1sICVdIi8+CgogICAgPGRpdiBjbGFzcz0iTGF5b3V0UG9wdXAgQVJJQVJvbGVNYWluIj4KICAgICAgICA8ZGl2IGNsYXNzPSJIZWFkZXIiPgogICAgICAgICAgICA8dWwgY2xhc3M9IkhlYWRlclBvcHVwIj4KICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iSGVhZGVyUG9wdXBsZWZ0Ij4KICAgICAgICAgICAgICAgICAgICA8aDE+WyUgVHJhbnNsYXRlKCJBZGQgVGltZSBBY2NvdW50aW5nIikgfCBodG1sICVdPC9oMT4KICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICA8bGkgY2xhc3M9IkhlYWRlclBvcHVwcmlnaHQiPgogICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPSJDYW5jZWxDbG9zZVBvcHVwIiBocmVmPSIjIj5bJSBUcmFuc2xhdGUoIkNhbmNlbCAmIGNsb3NlIikgfCBodG1sICVdPC9hPgogICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgPC91bD4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJDb250ZW50Ij4KICAgICAgICAgICAgPGZpZWxkc2V0IGNsYXNzPSJUYWJsZUxpa2UiPgogICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPSJNYW5kYXRvcnkiPjxzcGFuIGNsYXNzPSJNYXJrZXIiPio8L3NwYW4+IFslIFRyYW5zbGF0ZSgiRGF0ZSIpIHwgaHRtbCAlXTo8L2xhYmVsPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iRmllbGQiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IkRheUVycm9yIiBjbGFzcz0iVG9vbHRpcEVycm9yTWVzc2FnZSI+PHA+WyUgVHJhbnNsYXRlKCJUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEiKSB8IGh0bWwgJV08L3A+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iTW9udGhFcnJvciIgY2xhc3M9IlRvb2x0aXBFcnJvck1lc3NhZ2UiPjxwPlslIFRyYW5zbGF0ZSgiVGhlIGRhdGUgbXVzdCBiZSB2YWxpZCBhbmQgbm90IGxhdGVyIHRoYW4gdG9kYXkhIikgfCBodG1sICVdPC9wPjwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IlllYXJFcnJvciIgY2xhc3M9IlRvb2x0aXBFcnJvck1lc3NhZ2UiPjxwPlslIFRyYW5zbGF0ZSgiVGhlIGRhdGUgbXVzdCBiZSB2YWxpZCBhbmQgbm90IGxhdGVyIHRoYW4gdG9kYXkhIikgfCBodG1sICVdPC9wPjwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IkRheVNlcnZlckVycm9yIiBjbGFzcz0iVG9vbHRpcEVycm9yTWVzc2FnZSI+PHA+WyUgVHJhbnNsYXRlKCJUaGUgZGF0ZSBtdXN0IGJlIHZhbGlkIGFuZCBub3QgbGF0ZXIgdGhhbiB0b2RheSEiKSB8IGh0bWwgJV08L3A+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iTW9udGhTZXJ2ZXJFcnJvciIgY2xhc3M9IlRvb2x0aXBFcnJvck1lc3NhZ2UiPjxwPlslIFRyYW5zbGF0ZSgiVGhlIGRhdGUgbXVzdCBiZSB2YWxpZCBhbmQgbm90IGxhdGVyIHRoYW4gdG9kYXkhIikgfCBodG1sICVdPC9wPjwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IlllYXJTZXJ2ZXJFcnJvciIgY2xhc3M9IlRvb2x0aXBFcnJvck1lc3NhZ2UiPjxwPlslIFRyYW5zbGF0ZSgiVGhlIGRhdGUgbXVzdCBiZSB2YWxpZCBhbmQgbm90IGxhdGVyIHRoYW4gdG9kYXkhIikgfCBodG1sICVdPC9wPjwvZGl2PgogICAgICAgICAgICAgICAgICAgIFslIERhdGEuRGF0ZVN0cmluZyAlXQogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJDbGVhciI+PC9kaXY+CiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9Ik1hbmRhdG9yeSIgZm9yPSJUYXNrSUQiPjxzcGFuIGNsYXNzPSJNYXJrZXIiPio8L3NwYW4+IFslIFRyYW5zbGF0ZSgiVGFzayIpIHwgaHRtbCAlXTo8L2xhYmVsPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iRmllbGQiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IlRhc2tJREVycm9yIiBjbGFzcz0iVG9vbHRpcEVycm9yTWVzc2FnZSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlslIFRyYW5zbGF0ZSgiVGhpcyBmaWVsZCBpcyByZXF1aXJlZC4iKSB8IGh0bWwgJV08L3A+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iVGFza0lEU2VydmVyRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHA+WyUgVHJhbnNsYXRlKCJUaGlzIGZpZWxkIGlzIHJlcXVpcmVkLiIpIHwgaHRtbCAlXTwvcD4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICBbJSBEYXRhLlRhc2tJRFN0cmluZyAlXQogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJDbGVhciI+PC9kaXY+CiAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJSZW1hcmsiPlslIFRyYW5zbGF0ZSgiUmVtYXJrIikgfCBodG1sICVdOjwvbGFiZWw+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJGaWVsZCI+CiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIGlkPSJSZW1hcmsiIG5hbWU9IlJlbWFyayIgY2xhc3M9Ilc1MHBjIiB2YWx1ZT0iWyUgRGF0YS5SZW1hcmsgfCBodG1sICVdIi8+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IkNsZWFyIj48L2Rpdj4KICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9IlN0YXJ0VGltZSI+WyUgVHJhbnNsYXRlKCJTdGFydCB0aW1lIikgfCBodG1sICVdIChoaDptbSk6PC9sYWJlbD4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IkZpZWxkIj4KICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iU3RhcnRUaW1lIiBpZD0iU3RhcnRUaW1lIiB2YWx1ZT0iWyUgRGF0YS5TdGFydFRpbWUgfCBodG1sICVdIiBjbGFzcz0iWyUgRGF0YS5TdGFydFRpbWVFcnJvciB8IGh0bWwgJV0iIHNpemU9IjciIHRpdGxlPSJbJSBUcmFuc2xhdGUoIlN0YXJ0IFRpbWUiKSB8IGh0bWwgJV0iIC8+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IkNsZWFyIj48L2Rpdj4KICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9IkVuZFRpbWUiPlslIFRyYW5zbGF0ZSgiRW5kIHRpbWUiKSB8IGh0bWwgJV0gKGhoOm1tKTo8L2xhYmVsPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iRmllbGQiPgogICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJFbmRUaW1lIiBpZD0iRW5kVGltZSIgdmFsdWU9IlslIERhdGEuRW5kVGltZSB8IGh0bWwgJV0iIGNsYXNzPSJbJSBEYXRhLkVuZFRpbWVFcnJvciB8IGh0bWwgJV0iIHNpemU9IjciIHRpdGxlPSJbJSBUcmFuc2xhdGUoIkVuZCBUaW1lIikgfCBodG1sICVdIiAvPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJDbGVhciI+PC9kaXY+CiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9Ik1hbmRhdG9yeSIgZm9yPSJQZXJpb2QiPjxzcGFuIGNsYXNzPSJNYXJrZXIiPio8L3NwYW4+IFslIFRyYW5zbGF0ZSgiUGVyaW9kIikgfCBodG1sICVdOjwvbGFiZWw+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJGaWVsZCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iUGVyaW9kRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHA+WyUgVHJhbnNsYXRlKCJZb3UgbXVzdCBlbnRlciBhIHN0YXJ0IGFuZCBhbiBlbmQgdGltZSwgb3IgYSBwb3NpdGl2ZSBwZXJpb2Qgb2YgdXAgdG8gMjQgaG91cnMuIikgfCBodG1sICVdPC9wPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IlBlcmlvZFNlcnZlckVycm9yIiBjbGFzcz0iVG9vbHRpcEVycm9yTWVzc2FnZSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlslIFRyYW5zbGF0ZSgiWW91IG11c3QgZW50ZXIgYSBzdGFydCBhbmQgYW4gZW5kIHRpbWUsIG9yIGEgcG9zaXRpdmUgcGVyaW9kIG9mIHVwIHRvIDI0IGhvdXJzLiIpIHwgaHRtbCAlXTwvcD4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iUGVyaW9kIiBpZD0iUGVyaW9kIiB2YWx1ZT0iWyUgRGF0YS5QZXJpb2QgfCBodG1sICVdIiBjbGFzcz0iVmFsaWRhdGVfUmVxdWlyZWQgWyUgRGF0YS5QZXJpb2RFcnJvciB8IGh0bWwgJV0iIHNpemU9IjciIHRpdGxlPSJbJSBUcmFuc2xhdGUoIlBlcmlvZCIpIHwgaHRtbCAlXSIgLz4KICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iRmllbGRFeHBsYW5hdGlvbiI+WyUgVHJhbnNsYXRlKCJUaGUgdGltZSBwZXJpb2QgbXVzdCBiZSBnaXZlbiBpbiBob3VycyBhbmQgY2FuIGJlIGEgZGVjaW1hbCBudW1iZXIuIikgfCBodG1sICVdPC9wPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJDbGVhciI+PC9kaXY+CgogICAgICAgICAgICA8L2ZpZWxkc2V0PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9IkZvb3RlciI+CiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9IkNhbGxGb3JBY3Rpb24gUHJpbWFyeSIgaWQ9InN1Ym1pdFJpY2hUZXh0IiBhY2Nlc3NrZXk9ImciIHRpdGxlPSJbJSBUcmFuc2xhdGUoIlN1Ym1pdCIpIHwgaHRtbCAlXSAoZykiIHR5cGU9InN1Ym1pdCIgdmFsdWU9IlslIFRyYW5zbGF0ZSgiU3VibWl0IikgfCBodG1sICVdIj48c3Bhbj48aSBjbGFzcz0iZmEgZmEtY2hlY2stc3F1YXJlLW8iPjwvaT4gWyUgVHJhbnNsYXRlKCJTdWJtaXQiKSB8IGh0bWwgJV08L3NwYW4+PC9idXR0b24+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KPC9mb3JtPgo=</File>
        <File Location="Kernel/Output/HTML/Templates/Standard/AgentTimeAccountingDelete.tt" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgo8ZmllbGRzZXQgY2xhc3M9IlRhYmxlTGlrZSBXMzAwcHgiPgogICAgPGxhYmVsPlslIFRyYW5zbGF0ZSgiWWVhciIpIHwgaHRtbCAlXTo8L2xhYmVsPgogICAgPHAgY2xhc3M9IlZhbHVlIj4KICAgICAgICBbJSBEYXRhLlllYXIgfCBodG1sICVdCiAgICA8L3A+CiAgICA8ZGl2IGNsYXNzPSJDbGVhciI+PC9kaXY+CgogICAgPGxhYmVsPlslIFRyYW5zbGF0ZSgiTW9udGgiKSB8IGh0bWwgJV06PC9sYWJlbD4KICAgIDxwIGNsYXNzPSJWYWx1ZSI+CiAgICAgICAgWyUgVHJhbnNsYXRlKERhdGEuTW9udGgpIHwgaHRtbCAlXQogICAgPC9wPgogICAgPGRpdiBjbGFzcz0iQ2xlYXIiPjwvZGl2PgoKICAgIDxsYWJlbD5bJSBUcmFuc2xhdGUoIkRheSIpIHwgaHRtbCAlXTo8L2xhYmVsPgogICAgPHAgY2xhc3M9IlZhbHVlIj4KICAgICAgICBbJSBEYXRhLkRheSB8IGh0bWwgJV0KICAgIDwvcD4KICAgIDxkaXYgY2xhc3M9IkNsZWFyIj48L2Rpdj4KPC9maWVsZHNldD4KPHAgY2xhc3M9IlNwYWNpbmdUb3AgQ2VudGVyIj4KICAgIFslIFRyYW5zbGF0ZSgiRG8geW91IHJlYWxseSB3YW50IHRvIGRlbGV0ZSB0aGUgVGltZSBBY2NvdW50aW5nIG9mIHRoaXMgZGF5PyIpIHwgaHRtbCAlXQo8L3A+Cg==</File>
        <File Location="Kernel/Output/HTML/Templates/Standard/AgentTimeAccountingEdit.tt" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgo8ZGl2IGNsYXNzPSJNYWluQm94IEFSSUFSb2xlTWFpbiBMYXlvdXRGaXhlZFNpZGViYXIgU2lkZWJhckZpcnN0Ij4KICAgIDxoMSBjbGFzcz0iSGVhZGVyIj5bJSBUcmFuc2xhdGUoIkVkaXQgVGltZSBSZWNvcmQiKSB8IGh0bWwgJV08L2gxPgoKICAgIDxkaXYgY2xhc3M9IlNpZGViYXJDb2x1bW4iPgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJPdmVydmlld1Byb2plY3QiKSAlXQogICAgICAgIDxkaXYgY2xhc3M9IldpZGdldFNpbXBsZSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9IkhlYWRlciI+CiAgICAgICAgICAgICAgICA8aDI+WyUgVHJhbnNsYXRlKCJBY3Rpb25zIikgfCBodG1sICVdPC9oMj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9IkNvbnRlbnQiPgogICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJBY3Rpb25MaXN0Ij4KICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IlslIEVudigiQmFzZWxpbmsiKSAlXUFjdGlvbj1BZ2VudFRpbWVBY2NvdW50aW5nT3ZlcnZpZXc7WWVhcj1bJSBEYXRhLlllYXIgfCB1cmkgJV07TW9udGg9WyUgRGF0YS5Nb250aCB8IHVyaSAlXSIgY2xhc3M9IkNhbGxGb3JBY3Rpb24gRnVsbHNpemUgQ2VudGVyIj48c3Bhbj48aSBjbGFzcz0iZmEgZmEtY2FyZXQtbGVmdCI+PC9pPlslIFRyYW5zbGF0ZSgiR28gdG8gb3ZlcnZpZXciKSB8IGh0bWwgJV08L3NwYW4+PC9hPgogICAgICAgICAgICAgICAgICAgIDwvbGk+ClslIFJlbmRlckJsb2NrU3RhcnQoIkNyZWF0ZVByb2plY3QiKSAlXQogICAgICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iWyUgRW52KCJCYXNlbGluayIpICVdQWN0aW9uPUFnZW50VGltZUFjY291bnRpbmdTZXR0aW5nIiBjbGFzcz0iQ2FsbEZvckFjdGlvbiBGdWxsc2l6ZSBDZW50ZXIiPjxzcGFuPjxpIGNsYXNzPSJmYSBmYS1nZWFyIj48L2k+WyUgVHJhbnNsYXRlKCJHbyB0byBzZXR0aW5ncyIpIHwgaHRtbCAlXTwvc3Bhbj48L2E+CiAgICAgICAgICAgICAgICAgICAgPC9saT4KWyUgUmVuZGVyQmxvY2tFbmQoIkNyZWF0ZVByb2plY3QiKSAlXQogICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+ClslIFJlbmRlckJsb2NrRW5kKCJPdmVydmlld1Byb2plY3QiKSAlXQoKICAgICAgICA8ZGl2IGNsYXNzPSJXaWRnZXRTaW1wbGUiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJIZWFkZXIiPgogICAgICAgICAgICAgICAgPGgyPlslIFRyYW5zbGF0ZSgiRGF0ZSBOYXZpZ2F0aW9uIikgfCBodG1sICVdPC9oMj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9IkNvbnRlbnQiPgogICAgICAgICAgICAgICAgPGZvcm0gYWN0aW9uPSJbJSBFbnYoIkNHSUhhbmRsZSIpICVdIiBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiIGNsYXNzPSJWYWxpZGF0ZSIgbmFtZT0iRGF0ZVNlbGVjdGlvbiIgaWQ9IkRhdGVTZWxlY3Rpb25Gb3JtIj4KICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJBY3Rpb24iIHZhbHVlPSJbJSBFbnYoIkFjdGlvbiIpICVdIiAvPgogICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IlN1YmFjdGlvbiIgdmFsdWU9IkVkaXQiIC8+CiAgICAgICAgICAgICAgICAgICAgWyUgRGF0YS5EYXRlICVdCiAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyIgaWQ9Ik5hdmlnYXRpb25TZWxlY3QiIGNsYXNzPSJDYWxsRm9yQWN0aW9uIElubGluZSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPjxpIGNsYXNzPSJmYSBmYS1hcnJvdy1jaXJjbGUtby1yaWdodCI+PC9pPjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICA8L2Zvcm0+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgoKWyUgUmVuZGVyQmxvY2tTdGFydCgiSW5jb21wbGV0ZVdvcmtpbmdEYXlzIikgJV0KICAgICAgICA8ZGl2IGNsYXNzPSJXaWRnZXRTaW1wbGUiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJIZWFkZXIiPgogICAgICAgICAgICAgICAgPGgyPlslIFRyYW5zbGF0ZSgiRGF5cyB3aXRob3V0IGVudHJpZXMiKSB8IGh0bWwgJV08L2gyPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ29udGVudCI+CiAgICAgICAgICAgICAgICBbJSBEYXRhLkluY29tcGxldGVXb3JraW5nRGF5c1NlbGVjdCAlXQogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KWyUgUmVuZGVyQmxvY2tFbmQoIkluY29tcGxldGVXb3JraW5nRGF5cyIpICVdCgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJJbmNvbXBsZXRlV29ya2luZ0RheXNNYXNzRW50cnkiKSAlXQogICAgICAgIDxkaXYgY2xhc3M9IldpZGdldFNpbXBsZSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9IkhlYWRlciI+CiAgICAgICAgICAgICAgICA8aDI+WyUgVHJhbnNsYXRlKCJEYXlzIHdpdGhvdXQgZW50cmllcyIpIHwgaHRtbCAlXTwvaDI+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJDb250ZW50Ij4KCiAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9IkRhdGFUYWJsZSBJbmNvbXBsZXRlV29ya2luZ0RheXMiPgogICAgICAgICAgICAgICAgICAgIDx0aGVhZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGlkPSJTZWxlY3RBbGxEYXlzIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIGlkPSJJbmNvbXBsZXRlV29ya2luZ0RheS1BbGwiIG5hbWU9IkluY29tcGxldGVXb3JraW5nRGF5LUFsbCIgLz48L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlslIFRyYW5zbGF0ZSgiRGF0ZSIpIHwgaHRtbCAlXTwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+PC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPgogICAgICAgICAgICAgICAgICAgIDx0Ym9keT4KICAgICAgICAgICAgICAgICAgICBbJSBSZW5kZXJCbG9ja1N0YXJ0KCJJbmNvbXBsZXRlV29ya2luZ0RheXNNYXNzRW50cnlTaW5nbGVEYXkiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9IlcxMHBjIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIGlkPSJJbmNvbXBsZXRlV29ya2luZ0RheS1bJSBEYXRhLkRhdGUgfCBodG1sICVdIiBuYW1lPSJJbmNvbXBsZXRlV29ya2luZ0RheS1bJSBEYXRhLkRhdGUgfCBodG1sICVdIiAvPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PGxhYmVsIGZvcj0iSW5jb21wbGV0ZVdvcmtpbmdEYXktWyUgRGF0YS5EYXRlIHwgaHRtbCAlXSI+WyUgRGF0YS5EYXRlSFIgfCBMb2NhbGl6ZSgiRGF0ZSIpICVdIC0gWyUgVHJhbnNsYXRlKERhdGEuV2Vla2RheSkgfCBodG1sICVdPC9sYWJlbD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJXMTBwYyI+PGEgaHJlZj0iWyUgRW52KCJCYXNlbGluayIpICVdQWN0aW9uPVslIEVudigiQWN0aW9uIikgJV07WWVhcj1bJSBEYXRhLlllYXIgfCB1cmkgJV07TW9udGg9WyUgRGF0YS5Nb250aCB8IHVyaSAlXTtEYXk9WyUgRGF0YS5EYXkgfCB1cmkgJV0iPjxpIGNsYXNzPSJmYSBmYS1lZGl0Ij48L2k+PC9hPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgWyUgUmVuZGVyQmxvY2tFbmQoIkluY29tcGxldGVXb3JraW5nRGF5c01hc3NFbnRyeVNpbmdsZURheSIpICVdCiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT4KICAgICAgICAgICAgICAgIDwvdGFibGU+CgogICAgICAgICAgICAgICAgPCEtLSA8dWwgY2xhc3M9IkluY29tcGxldGVXb3JraW5nRGF5cyI+CiAgICAgICAgICAgICAgICAgICAgPGxpIGlkPSJTZWxlY3RBbGxEYXlzIj48bGFiZWwgZm9yPSJJbmNvbXBsZXRlV29ya2luZ0RheS1BbGwiPjxlbT5bJSBUcmFuc2xhdGUoIlNlbGVjdCBhbGwgZGF5cyIpIHwgaHRtbCAlXTwvZW0+PC9sYWJlbD48L2xpPgogICAgICAgICAgICAgICAgICAgIDxsaT4gLSA8L2xpPgogICAgICAgICAgICAgICAgPC91bD4gLS0+CiAgICAgICAgICAgICAgICA8Zm9ybSBhY3Rpb249IlslIEVudigiQ0dJSGFuZGxlIikgJV0iIG1ldGhvZD0icG9zdCIgZW5jdHlwZT0ibXVsdGlwYXJ0L2Zvcm0tZGF0YSIgaWQ9Ik1hc3NFbnRyeSIgbmFtZT0iTWFzc0VudHJ5IiBjbGFzcz0iU3BhY2luZ1RvcFNtYWxsIj4KICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJBY3Rpb24iIHZhbHVlPSJbJSBFbnYoIkFjdGlvbiIpICVdIiAvPgogICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IlN1YmFjdGlvbiIgdmFsdWU9Ik1hc3NFbnRyeSIgLz4KICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJEYXRlcyIgdmFsdWU9IiIgLz4KICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJMZWF2ZURheSIgdmFsdWU9IiIgLz4KICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJTaWNrIiB2YWx1ZT0iIiAvPgogICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9Ik92ZXJ0aW1lIiB2YWx1ZT0iIiAvPgogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiIGlkPSJNYXNzRW50cnlTdWJtaXQiIGNsYXNzPSJDYWxsRm9yQWN0aW9uIEZ1bGxzaXplIENlbnRlciI+PHNwYW4+PGkgY2xhc3M9ImZhIGZhLXBsdXMtc3F1YXJlLW8iPiA8L2k+WyUgVHJhbnNsYXRlKCJNYXNzIGVudHJ5IikgfCBodG1sICVdPC9zcGFuPjwvYT4KICAgICAgICAgICAgICAgIDwvZm9ybT4KICAgICAgICAgICAgICAgIDxkaXYgaWQ9Ik1hc3NFbnRyeUNvbmZpcm1EaWFsb2ciIGNsYXNzPSJIaWRkZW4iPgogICAgICAgICAgICAgICAgICAgIDxoMj5bJSBUcmFuc2xhdGUoIlBsZWFzZSBjaG9vc2UgdGhlIHJlYXNvbiBmb3IgeW91ciBhYnNlbmNlIGZvciB0aGUgc2VsZWN0ZWQgZGF5cyIpIHwgaHRtbCAlXS48L2gyPgogICAgICAgICAgICAgICAgICAgIDx1bCBpZD0iTWFzc0VudHJ5Q29uZmlybVJhZGlvIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxpbnB1dCB0eXBlPSJyYWRpbyIgZGF0YS1hYnNlbmNlPSJMZWF2ZURheSIgbmFtZT0iQWJzZW5jZVtdIiBpZD0iQ29uZmlybUxlYXZlRGF5IiAvPjxsYWJlbCBmb3I9IkNvbmZpcm1MZWF2ZURheSI+WyUgVHJhbnNsYXRlKCJPbiB2YWNhdGlvbiIpIHwgaHRtbCAlXTwvbGFiZWw+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxpbnB1dCB0eXBlPSJyYWRpbyIgZGF0YS1hYnNlbmNlPSJTaWNrIiBuYW1lPSJBYnNlbmNlW10iIGlkPSJDb25maXJtU2ljayIgLz48bGFiZWwgZm9yPSJDb25maXJtU2ljayI+WyUgVHJhbnNsYXRlKCJPbiBzaWNrIGxlYXZlIikgfCBodG1sICVdPC9sYWJlbD48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGlucHV0IHR5cGU9InJhZGlvIiBkYXRhLWFic2VuY2U9Ik92ZXJ0aW1lIiBuYW1lPSJBYnNlbmNlW10iIGlkPSJDb25maXJtT3ZlcnRpbWUiIC8+PGxhYmVsIGZvcj0iQ29uZmlybU92ZXJ0aW1lIj5bJSBUcmFuc2xhdGUoIk9uIG92ZXJ0aW1lIGxlYXZlIikgfCBodG1sICVdPC9sYWJlbD48L2xpPgogICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+ClslIFJlbmRlckJsb2NrRW5kKCJJbmNvbXBsZXRlV29ya2luZ0RheXNNYXNzRW50cnkiKSAlXQoKICAgICAgICA8ZGl2IGNsYXNzPSJXaWRnZXRTaW1wbGUgU3BhY2luZ1RvcCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9IkhlYWRlciI+CiAgICAgICAgICAgICAgICA8aDI+WyUgVHJhbnNsYXRlKCJSZWZlcmVuY2UiKSB8IGh0bWwgJV08L2gyPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ29udGVudCI+CiAgICAgICAgICAgICAgICA8cCBjbGFzcz0iRmllbGRFeHBsYW5hdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgWyUgVHJhbnNsYXRlKCJSZXF1aXJlZCBmaWVsZHMgYXJlIG1hcmtlZCB3aXRoIGEgXCIqXCIuIikgfCBodG1sICVdCiAgICAgICAgICAgICAgICA8L3A+CiAgICAgICAgICAgICAgICA8cCBjbGFzcz0iRmllbGRFeHBsYW5hdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgWyUgVHJhbnNsYXRlKCJZb3UgaGF2ZSB0byBmaWxsIGluIHN0YXJ0IGFuZCBlbmQgdGltZSBvciBhIHRpbWUgcGVyaW9kLiIpIHwgaHRtbCAlXQogICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0iQ29udGVudENvbHVtbiI+CiAgICAgICAgPGRpdiBjbGFzcz0iV2lkZ2V0U2ltcGxlIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iSGVhZGVyIj4KICAgICAgICAgICAgICAgIDxoMj5bJSBUcmFuc2xhdGUoIkRhdGUiKSB8IGh0bWwgJV06IFslIFRyYW5zbGF0ZShEYXRhLldlZWtkYXlfdG9fVGV4dCkgfCBodG1sICVdIFslIERhdGEuWWVhciB8IGh0bWwgJV0tWyUgRGF0YS5Nb250aCB8IGh0bWwgJV0tWyUgRGF0YS5EYXkgfCBodG1sICVdPC9oMj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9IkNvbnRlbnQgSG9yaXpvbnRhbFNjcm9sbCI+CiAgICAgICAgICAgICAgICA8Zm9ybSBhY3Rpb249IlslIEVudigiQ0dJSGFuZGxlIikgJV0iIG1ldGhvZD0icG9zdCIgZW5jdHlwZT0ibXVsdGlwYXJ0L2Zvcm0tZGF0YSIgbmFtZT0iV29ya2luZ1VuaXRzIiBpZD0iV29ya2luZ1VuaXRzIiBjbGFzcz0iVmFsaWRhdGUgUHJldmVudE11bHRpcGxlU3VibWl0cyI+CiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iQWN0aW9uIiB2YWx1ZT0iWyUgRW52KCJBY3Rpb24iKSAlXSIgLz4KICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJTdWJhY3Rpb24iIHZhbHVlPSJFZGl0IiAvPgogICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IlJlY29yZHNOdW1iZXIiIGlkPSJSZWNvcmRzTnVtYmVyIiB2YWx1ZT0iWyUgRGF0YS5SZWNvcmRzTnVtYmVyIHwgaHRtbCAlXSIgLz4KICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJTdGF0dXMiIHZhbHVlPSJBY3Rpb24iIC8+CiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iWWVhciIgdmFsdWU9IlslIERhdGEuWWVhciB8IGh0bWwgJV0iIC8+CiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iTW9udGgiIHZhbHVlPSJbJSBEYXRhLk1vbnRoIHwgaHRtbCAlXSIgLz4KICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJEYXkiIHZhbHVlPSJbJSBEYXRhLkRheSB8IGh0bWwgJV0iIC8+ClslIFJlbmRlckJsb2NrU3RhcnQoIlVuaXRCbG9jayIpICVdCiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJEYXRhVGFibGUgTm9Ib3ZlciBIaWdoQ2VsbHMiIGlkPSJJbnNlcnRXb3JraW5nSG91cnMiPgogICAgICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPjxzcGFuIGNsYXNzPSJNYXJrZXIiPio8L3NwYW4+IFslIFRyYW5zbGF0ZSgiUHJvamVjdCIpIHwgaHRtbCAlXTwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPjxzcGFuIGNsYXNzPSJNYXJrZXIiPio8L3NwYW4+IFslIFRyYW5zbGF0ZSgiVGFzayIpIHwgaHRtbCAlXTwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlslIFRyYW5zbGF0ZSgiUmVtYXJrIikgfCBodG1sICVdPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+WyUgVHJhbnNsYXRlKCJPcmlnaW4iKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5bJSBUcmFuc2xhdGUoIlN0YXJ0IikgfCBodG1sICVdIChISDpNTSk8L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5bJSBUcmFuc2xhdGUoIkVuZCIpIHwgaHRtbCAlXSAoSEg6TU0pPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+PHNwYW4gY2xhc3M9Ik1hcmtlciI+WyUgRGF0YS5QZXJpb2ROb3RlIHwgaHRtbCAlXTwvc3Bhbj4gWyUgVHJhbnNsYXRlKCJQZXJpb2QiKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgPC90aGVhZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRib2R5PgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJVbml0IikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBjbGFzcz0iV29ya2luZ0hvdXJzIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFslIERhdGEuUHJvamVjdE9wdGlvbiAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJQcm9qZWN0SURbJSBEYXRhLklEIHwgaHRtbCAlXUVycm9yIiBjbGFzcz0iVG9vbHRpcEVycm9yTWVzc2FnZSI+PHA+WyUgVHJhbnNsYXRlKCJUaGlzIGZpZWxkIGlzIHJlcXVpcmVkLiIpIHwgaHRtbCAlXTwvcD48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iUHJvamVjdElEWyUgRGF0YS5JRCB8IGh0bWwgJV1TZXJ2ZXJFcnJvciIgY2xhc3M9IlRvb2x0aXBFcnJvck1lc3NhZ2UiPjxwPlslIFRyYW5zbGF0ZSgiVGhpcyBmaWVsZCBpcyByZXF1aXJlZC4iKSB8IGh0bWwgJV08L3A+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IkNvbWJvX1Byb2plY3RJRFslIERhdGEuSUQgfCBodG1sICVdRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj48cD5bJSBUcmFuc2xhdGUoIlRoaXMgZmllbGQgaXMgcmVxdWlyZWQuIikgfCBodG1sICVdPC9wPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJDb21ib19Qcm9qZWN0SURbJSBEYXRhLklEIHwgaHRtbCAlXVNlcnZlckVycm9yIiBjbGFzcz0iVG9vbHRpcEVycm9yTWVzc2FnZSI+PHA+WyUgVHJhbnNsYXRlKCJUaGlzIGZpZWxkIGlzIHJlcXVpcmVkLiIpIHwgaHRtbCAlXTwvcD48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyUgRGF0YS5BY3Rpb25PcHRpb24gJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iQWN0aW9uSURbJSBEYXRhLklEIHwgaHRtbCAlXUVycm9yIiBjbGFzcz0iVG9vbHRpcEVycm9yTWVzc2FnZSI+PHA+WyUgVHJhbnNsYXRlKCJUaGlzIGZpZWxkIGlzIHJlcXVpcmVkLiIpIHwgaHRtbCAlXTwvcD48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iQWN0aW9uSURbJSBEYXRhLklEIHwgaHRtbCAlXVNlcnZlckVycm9yIiBjbGFzcz0iVG9vbHRpcEVycm9yTWVzc2FnZSI+PHA+WyUgVHJhbnNsYXRlKCJUaGlzIGZpZWxkIGlzIHJlcXVpcmVkLiIpIHwgaHRtbCAlXTwvcD48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iQ29tYm9fQWN0aW9uSURbJSBEYXRhLklEIHwgaHRtbCAlXUVycm9yIiBjbGFzcz0iVG9vbHRpcEVycm9yTWVzc2FnZSI+PHA+WyUgVHJhbnNsYXRlKCJUaGlzIGZpZWxkIGlzIHJlcXVpcmVkLiIpIHwgaHRtbCAlXTwvcD48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iQ29tYm9fQWN0aW9uSURbJSBEYXRhLklEIHwgaHRtbCAlXVNlcnZlckVycm9yIiBjbGFzcz0iVG9vbHRpcEVycm9yTWVzc2FnZSI+PHA+WyUgVHJhbnNsYXRlKCJUaGlzIGZpZWxkIGlzIHJlcXVpcmVkLiIpIHwgaHRtbCAlXTwvcD48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9IlJlbWFya1tbJSBEYXRhLklEIHwgaHRtbCAlXV0iIGlkPSJSZW1hcmtbJSBEYXRhLklEIHwgaHRtbCAlXSIgY2xhc3M9IlZhbGlkYXRlX1RpbWVBY2NvdW50aW5nX1JlbWFyayBbJSBEYXRhLlJlbWFya0ludmFsaWQgfCBodG1sICVdIiB2YWx1ZT0iWyUgRGF0YS5SZW1hcmsgfCBodG1sICVdIiBzaXplPSIzNSIgdGl0bGU9IlslIFRyYW5zbGF0ZSgiUmVtYXJrIikgfCBodG1sICVdIiBbJSBEYXRhLlJlYWRPbmx5ICVdIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IlJlbWFya1slIERhdGEuSUQgfCBodG1sICVdRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj48cD5bJSBUcmFuc2xhdGUoIlBsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISIpIHwgaHRtbCAlXTwvcD48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iUmVtYXJrWyUgRGF0YS5JRCB8IGh0bWwgJV1TZXJ2ZXJFcnJvciIgY2xhc3M9IlRvb2x0aXBFcnJvck1lc3NhZ2UiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+WyUgVHJhbnNsYXRlKCJUaGlzIGZpZWxkIGlzIHJlcXVpcmVkLiIpIHwgaHRtbCAlXTwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IlslIEVudigiQmFzZWxpbmsiKSAlXUFjdGlvbj1bJSBEYXRhLkxpbmsgfCBodG1sICVdIiB0YXJnZXQ9Il9ibGFuayIgY2xhc3M9IiIgdGl0bGU9IlslIFRyYW5zbGF0ZSgiVXJzcHJ1bmciKSB8IGh0bWwgJV0iPlslIERhdGEuQmFzZU1vZHVsZSB8IGh0bWwgJV08L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IlRpY2tldElEW1slIERhdGEuSUQgfCBodG1sICVdXSIgdmFsdWU9IlslIERhdGEuVGlja2V0SUQgfCBodG1sICVdIiAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJBcnRpY2xlSURbWyUgRGF0YS5JRCB8IGh0bWwgJV1dIiB2YWx1ZT0iWyUgRGF0YS5BcnRpY2xlSUQgfCBodG1sICVdIiAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJCYXNlTW9kdWxlW1slIERhdGEuSUQgfCBodG1sICVdXSIgdmFsdWU9IlslIERhdGEuQmFzZU1vZHVsZSB8IGh0bWwgJV0iIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IlJlYWRPbmx5W1slIERhdGEuSUQgfCBodG1sICVdXSIgdmFsdWU9IlslIERhdGEuUmVhZE9ubHkgfCBodG1sICVdIiAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iU3RhcnRUaW1lW1slIERhdGEuSUQgfCBodG1sICVdXSIgaWQ9IlN0YXJ0VGltZVslIERhdGEuSUQgfCBodG1sICVdIiBjbGFzcz0iU3RhcnRUaW1lIFZhbGlkYXRlX1RpbWVBY2NvdW50aW5nX1N0YXJ0VGltZSBbJSBEYXRhLlN0YXJ0VGltZVJlcXVpcmVkIHwgaHRtbCAlXSBbJSBEYXRhLlN0YXJ0VGltZUludmFsaWQgfCBodG1sICVdIiB2YWx1ZT0iWyUgRGF0YS5TdGFydFRpbWUgfCBodG1sICVdIiBzaXplPSI3IiB0aXRsZT0iWyUgVHJhbnNsYXRlKCJTdGFydCBUaW1lIikgfCBodG1sICVdIiBbJSBEYXRhLlJlYWRPbmx5ICVdIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IlN0YXJ0VGltZVslIERhdGEuSUQgfCBodG1sICVdRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlslIFRyYW5zbGF0ZSgiWW91IGhhdmUgdG8gZmlsbCBpbiBzdGFydCBhbmQgZW5kIHRpbWUgb3IgYSB0aW1lIHBlcmlvZC4iKSB8IGh0bWwgJV08L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJTdGFydFRpbWVbJSBEYXRhLklEIHwgaHRtbCAlXVNlcnZlckVycm9yIiBjbGFzcz0iVG9vbHRpcEVycm9yTWVzc2FnZSI+ClslIFJlbmRlckJsb2NrU3RhcnQoIlN0YXJ0VGltZUdlbmVyaWNTZXJ2ZXJFcnJvciIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5bJSBUcmFuc2xhdGUoIlRoaXMgZmllbGQgaXMgcmVxdWlyZWQuIikgfCBodG1sICVdPC9wPgpbJSBSZW5kZXJCbG9ja0VuZCgiU3RhcnRUaW1lR2VuZXJpY1NlcnZlckVycm9yIikgJV0KWyUgUmVuZGVyQmxvY2tTdGFydCgiU3RhcnRUaW1lTmVnYXRpdmVTZXJ2ZXJFcnJvciIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5bJSBUcmFuc2xhdGUoIk5lZ2F0aXZlIHRpbWVzIGFyZSBub3QgYWxsb3dlZC4iKSB8IGh0bWwgJV08L3A+ClslIFJlbmRlckJsb2NrRW5kKCJTdGFydFRpbWVOZWdhdGl2ZVNlcnZlckVycm9yIikgJV0KWyUgUmVuZGVyQmxvY2tTdGFydCgiU3RhcnRUaW1lUmVwZWF0ZWRIb3VyU2VydmVyRXJyb3IiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+WyUgVHJhbnNsYXRlKCJSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIFN0YXJ0IHRpbWUgbWF0Y2hlcyBhbm90aGVyIGludGVydmFsLiIpIHwgaHRtbCAlXTwvcD4KWyUgUmVuZGVyQmxvY2tFbmQoIlN0YXJ0VGltZVJlcGVhdGVkSG91clNlcnZlckVycm9yIikgJV0KWyUgUmVuZGVyQmxvY2tTdGFydCgiU3RhcnRUaW1lSW52YWxpZEZvcm1hdFNlcnZlckVycm9yIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlslIFRyYW5zbGF0ZSgiSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLiIpIHwgaHRtbCAlXTwvcD4KWyUgUmVuZGVyQmxvY2tFbmQoIlN0YXJ0VGltZUludmFsaWRGb3JtYXRTZXJ2ZXJFcnJvciIpICVdClslIFJlbmRlckJsb2NrU3RhcnQoIlN0YXJ0VGltZTI0SG91cnMiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+WyUgVHJhbnNsYXRlKCIyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4iKSB8IGh0bWwgJV08L3A+ClslIFJlbmRlckJsb2NrRW5kKCJTdGFydFRpbWUyNEhvdXJzIikgJV0KWyUgUmVuZGVyQmxvY2tTdGFydCgiU3RhcnRUaW1lSW52YWxpZCIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5bJSBUcmFuc2xhdGUoIkludmFsaWQgdGltZSEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuIikgfCBodG1sICVdPC9wPgpbJSBSZW5kZXJCbG9ja0VuZCgiU3RhcnRUaW1lSW52YWxpZCIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iRW5kVGltZVtbJSBEYXRhLklEIHwgaHRtbCAlXV0iIGlkPSJFbmRUaW1lWyUgRGF0YS5JRCB8IGh0bWwgJV0iIGNsYXNzPSJFbmRUaW1lIFZhbGlkYXRlX0RlcGVuZGluZ1JlcXVpcmVkQU5EIFZhbGlkYXRlX0RlcGVuZGluZ19TdGFydFRpbWVbJSBEYXRhLklEIHwgaHRtbCAlXSBbJSBEYXRhLkVuZFRpbWVSZXF1aXJlZCB8IGh0bWwgJV0gWyUgRGF0YS5FbmRUaW1lSW52YWxpZCB8IGh0bWwgJV0iIHZhbHVlPSJbJSBEYXRhLkVuZFRpbWUgfCBodG1sICVdIiBzaXplPSI3IiB0aXRsZT0iWyUgVHJhbnNsYXRlKCJFbmQgVGltZSIpIHwgaHRtbCAlXSIgWyUgRGF0YS5SZWFkT25seSAlXSAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJFbmRUaW1lWyUgRGF0YS5JRCB8IGh0bWwgJV1FcnJvciIgY2xhc3M9IlRvb2x0aXBFcnJvck1lc3NhZ2UiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+WyUgVHJhbnNsYXRlKCJZb3UgaGF2ZSB0byBmaWxsIGluIHN0YXJ0IGFuZCBlbmQgdGltZSBvciBhIHRpbWUgcGVyaW9kLiIpIHwgaHRtbCAlXTwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IkVuZFRpbWVbJSBEYXRhLklEIHwgaHRtbCAlXVNlcnZlckVycm9yIiBjbGFzcz0iVG9vbHRpcEVycm9yTWVzc2FnZSI+ClslIFJlbmRlckJsb2NrU3RhcnQoIkVuZFRpbWVHZW5lcmljU2VydmVyRXJyb3IiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+WyUgVHJhbnNsYXRlKCJUaGlzIGZpZWxkIGlzIHJlcXVpcmVkLiIpIHwgaHRtbCAlXTwvcD4KWyUgUmVuZGVyQmxvY2tFbmQoIkVuZFRpbWVHZW5lcmljU2VydmVyRXJyb3IiKSAlXQpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJFbmRUaW1lQmVmb3JlU3RhcnRUaW1lU2VydmVyRXJyb3IiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+WyUgVHJhbnNsYXRlKCJFbmQgdGltZSBtdXN0IGJlIGFmdGVyIHN0YXJ0IHRpbWUuIikgfCBodG1sICVdPC9wPgpbJSBSZW5kZXJCbG9ja0VuZCgiRW5kVGltZUJlZm9yZVN0YXJ0VGltZVNlcnZlckVycm9yIikgJV0KWyUgUmVuZGVyQmxvY2tTdGFydCgiRW5kVGltZU5lZ2F0aXZlU2VydmVyRXJyb3IiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+WyUgVHJhbnNsYXRlKCJOZWdhdGl2ZSB0aW1lcyBhcmUgbm90IGFsbG93ZWQuIikgfCBodG1sICVdPC9wPgpbJSBSZW5kZXJCbG9ja0VuZCgiRW5kVGltZU5lZ2F0aXZlU2VydmVyRXJyb3IiKSAlXQpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJFbmRUaW1lUmVwZWF0ZWRIb3VyU2VydmVyRXJyb3IiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+WyUgVHJhbnNsYXRlKCJSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIEVuZCB0aW1lIG1hdGNoZXMgYW5vdGhlciBpbnRlcnZhbC4iKSB8IGh0bWwgJV08L3A+ClslIFJlbmRlckJsb2NrRW5kKCJFbmRUaW1lUmVwZWF0ZWRIb3VyU2VydmVyRXJyb3IiKSAlXQpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJFbmRUaW1lSW52YWxpZEZvcm1hdFNlcnZlckVycm9yIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlslIFRyYW5zbGF0ZSgiSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLiIpIHwgaHRtbCAlXTwvcD4KWyUgUmVuZGVyQmxvY2tFbmQoIkVuZFRpbWVJbnZhbGlkRm9ybWF0U2VydmVyRXJyb3IiKSAlXQpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJFbmRUaW1lSW52YWxpZCIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5bJSBUcmFuc2xhdGUoIkludmFsaWQgdGltZSEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuIikgfCBodG1sICVdPC9wPgpbJSBSZW5kZXJCbG9ja0VuZCgiRW5kVGltZUludmFsaWQiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJVbml0SW5wdXRQZXJpb2QiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9IlBlcmlvZFtbJSBEYXRhLklEIHwgaHRtbCAlXV0iIGlkPSJQZXJpb2RbJSBEYXRhLklEIHwgaHRtbCAlXSIgY2xhc3M9IlBlcmlvZCBWYWxpZGF0ZV9UaW1lQWNjb3VudGluZ19QZXJpb2QgVmFsaWRhdGVfVGltZVVuaXRzIFslIERhdGEuUGVyaW9kUmVxdWlyZWQgfCBodG1sICVdIFslIERhdGEuUGVyaW9kSW52YWxpZCB8IGh0bWwgJV0iIHZhbHVlPSJbJSBEYXRhLlBlcmlvZCB8IGh0bWwgJV0iIHNpemU9IjciIHRpdGxlPSJbJSBUcmFuc2xhdGUoIlBlcmlvZCIpIHwgaHRtbCAlXSIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iUGVyaW9kWyUgRGF0YS5JRCB8IGh0bWwgJV1FcnJvciIgY2xhc3M9IlRvb2x0aXBFcnJvck1lc3NhZ2UiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+WyUgVHJhbnNsYXRlKCJZb3UgaGF2ZSB0byBmaWxsIGluIHN0YXJ0IGFuZCBlbmQgdGltZSBvciBhIHRpbWUgcGVyaW9kLiIpIHwgaHRtbCAlXTwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IlBlcmlvZFslIERhdGEuSUQgfCBodG1sICVdU2VydmVyRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj4KWyUgUmVuZGVyQmxvY2tTdGFydCgiUGVyaW9kR2VuZXJpY1NlcnZlckVycm9yIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlslIFRyYW5zbGF0ZSgiVGhpcyBmaWVsZCBpcyByZXF1aXJlZC4iKSB8IGh0bWwgJV08L3A+ClslIFJlbmRlckJsb2NrRW5kKCJQZXJpb2RHZW5lcmljU2VydmVyRXJyb3IiKSAlXQpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJJbnZhbGlkSG91cnNQZXJpb2RTZXJ2ZXJFcnJvciIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5bJSBUcmFuc2xhdGUoIkludmFsaWQgcGVyaW9kISBBIGRheSBoYXMgb25seSAyNCBob3Vycy4iKSB8IGh0bWwgJV08L3A+ClslIFJlbmRlckJsb2NrRW5kKCJJbnZhbGlkSG91cnNQZXJpb2RTZXJ2ZXJFcnJvciIpICVdClslIFJlbmRlckJsb2NrU3RhcnQoIlplcm9Ib3Vyc1BlcmlvZFNlcnZlckVycm9yIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlslIFRyYW5zbGF0ZSgiQSB2YWxpZCBwZXJpb2QgbXVzdCBiZSBncmVhdGVyIHRoYW4gemVyby4iKSB8IGh0bWwgJV08L3A+ClslIFJlbmRlckJsb2NrRW5kKCJaZXJvSG91cnNQZXJpb2RTZXJ2ZXJFcnJvciIpICVdClslIFJlbmRlckJsb2NrU3RhcnQoIk5lZ2F0aXZlUGVyaW9kU2VydmVyRXJyb3IiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+WyUgVHJhbnNsYXRlKCJJbnZhbGlkIHBlcmlvZCEgTmVnYXRpdmUgcGVyaW9kcyBhcmUgbm90IGFsbG93ZWQuIikgfCBodG1sICVdPC9wPgpbJSBSZW5kZXJCbG9ja0VuZCgiTmVnYXRpdmVQZXJpb2RTZXJ2ZXJFcnJvciIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgpbJSBSZW5kZXJCbG9ja0VuZCgiVW5pdElucHV0UGVyaW9kIikgJV0KWyUgUmVuZGVyQmxvY2tTdGFydCgiVW5pdFBlcmlvZFdpdGhvdXRJbnB1dCIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlslIERhdGEuUGVyaW9kIHwgaHRtbCAlXTwvdGQ+ClslIFJlbmRlckJsb2NrRW5kKCJVbml0UGVyaW9kV2l0aG91dElucHV0IikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+ClslIFJlbmRlckJsb2NrRW5kKCJVbml0IikgJV0KWyUgUmVuZGVyQmxvY2tFbmQoIlVuaXRCbG9jayIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNvbHNwYW49IjUiPjwvdGQ+ClslIFJlbmRlckJsb2NrU3RhcnQoIlRvdGFsIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+WyUgVHJhbnNsYXRlKCJUb3RhbCIpIHwgaHRtbCAlXTo8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48c3BhbiBjbGFzcz0iVG90YWxIb3VycyI+WyUgRGF0YS5Ub3RhbCB8IGh0bWwgJV08L3NwYW4+PC90ZD4KWyUgUmVuZGVyQmxvY2tFbmQoIlRvdGFsIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+ClslIFJlbmRlckJsb2NrU3RhcnQoIlJlYWRvbmx5IikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY29sc3Bhbj0iNyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFslIFRyYW5zbGF0ZShEYXRhLkRlc2NyaXB0aW9uKSB8IGh0bWwgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KWyUgUmVuZGVyQmxvY2tFbmQoIlJlYWRvbmx5IikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgPC90Ym9keT4KICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IkNlbnRlciBTcGFjaW5nVG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iUHJpbWFyeSBDYWxsRm9yQWN0aW9uIiB0eXBlPSJzdWJtaXQiIG5hbWU9Ikluc2VydFdvcmtpbmdVbml0cyIgdmFsdWU9IlslIFRyYW5zbGF0ZSgiU3VibWl0IGNoYW5nZXMiKSB8IGh0bWwgJV0iPjxzcGFuPjxpIGNsYXNzPSJmYSBmYS1jaGVjay1zcXVhcmUtbyI+PC9pPiBbJSBUcmFuc2xhdGUoIlN1Ym1pdCBjaGFuZ2VzIikgfCBodG1sICVdPC9zcGFuPjwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBpZD0iRGVsZXRlVGltZUFjY291bnRpbmdFbnRyeSIgaHJlZj0iIyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbJSBUcmFuc2xhdGUoIkRlbGV0ZSIpIHwgaHRtbCAlXQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ2xlYXIiPjwvZGl2PgogICAgICAgICAgICAgICAgPC9mb3JtPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KClslIFJlbmRlckJsb2NrU3RhcnQoIkFwcGVuZFdvcmtpbmdVbml0cyIpICVdCiAgICAgICAgPGRpdiBjbGFzcz0iV2lkZ2V0U2ltcGxlIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ29udGVudCBIb3Jpem9udGFsU2Nyb2xsIj4KICAgICAgICAgICAgICAgIDxmb3JtIGFjdGlvbj0iWyUgRW52KCJDR0lIYW5kbGUiKSAlXSIgbWV0aG9kPSJwb3N0IiBlbmN0eXBlPSJtdWx0aXBhcnQvZm9ybS1kYXRhIiBuYW1lPSJXb3JraW5nVW5pdHMiIGlkPSJBcHBlbmRXb3JraW5nVW5pdHMiIGNsYXNzPSJWYWxpZGF0ZSBQcmV2ZW50TXVsdGlwbGVTdWJtaXRzIj4KICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJBY3Rpb24iIHZhbHVlPSJbJSBFbnYoIkFjdGlvbiIpICVdIiAvPgogICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IlN1YmFjdGlvbiIgdmFsdWU9IkVkaXQiIC8+CiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iTW9kZSIgdmFsdWU9IkFwcGVuZCIgLz4KICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJBcHBlbmRSZWNvcmRzTnVtYmVyIiBpZD0iQXBwZW5kUmVjb3Jkc051bWJlciIgdmFsdWU9IlslIERhdGEuQXBwZW5kUmVjb3Jkc051bWJlciB8IGh0bWwgJV0iIC8+CiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iU3RhdHVzIiB2YWx1ZT0iQWN0aW9uIiAvPgogICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IlllYXIiIHZhbHVlPSJbJSBEYXRhLlllYXIgfCBodG1sICVdIiAvPgogICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9Ik1vbnRoIiB2YWx1ZT0iWyUgRGF0YS5Nb250aCB8IGh0bWwgJV0iIC8+CiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iRGF5IiB2YWx1ZT0iWyUgRGF0YS5EYXkgfCBodG1sICVdIiAvPgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJBcHBlbmRVbml0QmxvY2siKSAlXQogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0iRGF0YVRhYmxlIE5vSG92ZXIgSGlnaENlbGxzIiBpZD0iSW5zZXJ0TmV3V29ya2luZ0hvdXJzIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRoZWFkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD48c3BhbiBjbGFzcz0iTWFya2VyIj4qPC9zcGFuPiBbJSBUcmFuc2xhdGUoIlByb2plY3QiKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD48c3BhbiBjbGFzcz0iTWFya2VyIj4qPC9zcGFuPiBbJSBUcmFuc2xhdGUoIlRhc2siKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5bJSBUcmFuc2xhdGUoIlJlbWFyayIpIHwgaHRtbCAlXTwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlslIFRyYW5zbGF0ZSgiU3RhcnQiKSB8IGh0bWwgJV0gKEhIOk1NKTwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlslIFRyYW5zbGF0ZSgiRW5kIikgfCBodG1sICVdIChISDpNTSk8L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD48c3BhbiBjbGFzcz0iTWFya2VyIj5bJSBEYXRhLlBlcmlvZE5vdGUgfCBodG1sICVdPC9zcGFuPiBbJSBUcmFuc2xhdGUoIlBlcmlvZCIpIHwgaHRtbCAlXTwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGJvZHk+ClslIFJlbmRlckJsb2NrU3RhcnQoIkFwcGVuZFVuaXQiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyIGNsYXNzPSJXb3JraW5nSG91cnMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyUgRGF0YS5BcHBlbmRQcm9qZWN0T3B0aW9uICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IkFwcGVuZFByb2plY3RJRFslIERhdGEuSUQgfCBodG1sICVdRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj48cD5bJSBUcmFuc2xhdGUoIlRoaXMgZmllbGQgaXMgcmVxdWlyZWQuIikgfCBodG1sICVdPC9wPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJBcHBlbmRQcm9qZWN0SURbJSBEYXRhLklEIHwgaHRtbCAlXVNlcnZlckVycm9yIiBjbGFzcz0iVG9vbHRpcEVycm9yTWVzc2FnZSI+PHA+WyUgVHJhbnNsYXRlKCJUaGlzIGZpZWxkIGlzIHJlcXVpcmVkLiIpIHwgaHRtbCAlXTwvcD48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iQXBwZW5kQ29tYm9fUHJvamVjdElEWyUgRGF0YS5JRCB8IGh0bWwgJV1FcnJvciIgY2xhc3M9IlRvb2x0aXBFcnJvck1lc3NhZ2UiPjxwPlslIFRyYW5zbGF0ZSgiVGhpcyBmaWVsZCBpcyByZXF1aXJlZC4iKSB8IGh0bWwgJV08L3A+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IkFwcGVuZENvbWJvX1Byb2plY3RJRFslIERhdGEuSUQgfCBodG1sICVdU2VydmVyRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj48cD5bJSBUcmFuc2xhdGUoIlRoaXMgZmllbGQgaXMgcmVxdWlyZWQuIikgfCBodG1sICVdPC9wPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbJSBEYXRhLkFwcGVuZEFjdGlvbk9wdGlvbiAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJBcHBlbmRBY3Rpb25JRFslIERhdGEuSUQgfCBodG1sICVdRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj48cD5bJSBUcmFuc2xhdGUoIlRoaXMgZmllbGQgaXMgcmVxdWlyZWQuIikgfCBodG1sICVdPC9wPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJBcHBlbmRBY3Rpb25JRFslIERhdGEuSUQgfCBodG1sICVdU2VydmVyRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj48cD5bJSBUcmFuc2xhdGUoIlRoaXMgZmllbGQgaXMgcmVxdWlyZWQuIikgfCBodG1sICVdPC9wPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJBcHBlbmRDb21ib19BY3Rpb25JRFslIERhdGEuSUQgfCBodG1sICVdRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj48cD5bJSBUcmFuc2xhdGUoIlRoaXMgZmllbGQgaXMgcmVxdWlyZWQuIikgfCBodG1sICVdPC9wPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJBcHBlbmRDb21ib19BY3Rpb25JRFslIERhdGEuSUQgfCBodG1sICVdU2VydmVyRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj48cD5bJSBUcmFuc2xhdGUoIlRoaXMgZmllbGQgaXMgcmVxdWlyZWQuIikgfCBodG1sICVdPC9wPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iQXBwZW5kUmVtYXJrW1slIERhdGEuSUQgfCBodG1sICVdXSIgaWQ9IkFwcGVuZFJlbWFya1slIERhdGEuSUQgfCBodG1sICVdIiBjbGFzcz0iVmFsaWRhdGVfVGltZUFjY291bnRpbmdfUmVtYXJrIFslIERhdGEuQXBwZW5kUmVtYXJrSW52YWxpZCB8IGh0bWwgJV0iIHZhbHVlPSJbJSBEYXRhLkFwcGVuZFJlbWFyayB8IGh0bWwgJV0iIHNpemU9IjM1IiB0aXRsZT0iWyUgVHJhbnNsYXRlKCJSZW1hcmsiKSB8IGh0bWwgJV0iIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IkFwcGVuZFJlbWFya1slIERhdGEuSUQgfCBodG1sICVdRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj48cD5bJSBUcmFuc2xhdGUoIlBsZWFzZSBhZGQgYSByZW1hcmsgd2l0aCBtb3JlIHRoYW4gOCBjaGFyYWN0ZXJzISIpIHwgaHRtbCAlXTwvcD48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iQXBwZW5kUmVtYXJrWyUgRGF0YS5JRCB8IGh0bWwgJV1TZXJ2ZXJFcnJvciIgY2xhc3M9IlRvb2x0aXBFcnJvck1lc3NhZ2UiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+WyUgVHJhbnNsYXRlKCJUaGlzIGZpZWxkIGlzIHJlcXVpcmVkLiIpIHwgaHRtbCAlXTwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJBcHBlbmRTdGFydFRpbWVbWyUgRGF0YS5JRCB8IGh0bWwgJV1dIiBpZD0iQXBwZW5kU3RhcnRUaW1lWyUgRGF0YS5JRCB8IGh0bWwgJV0iIGNsYXNzPSJTdGFydFRpbWUgVmFsaWRhdGVfVGltZUFjY291bnRpbmdfU3RhcnRUaW1lIFslIERhdGEuQXBwZW5kU3RhcnRUaW1lUmVxdWlyZWQgfCBodG1sICVdIFslIERhdGEuQXBwZW5kU3RhcnRUaW1lSW52YWxpZCB8IGh0bWwgJV0iIHZhbHVlPSJbJSBEYXRhLkFwcGVuZFN0YXJ0VGltZSB8IGh0bWwgJV0iIHNpemU9IjciIHRpdGxlPSJbJSBUcmFuc2xhdGUoIlN0YXJ0IFRpbWUiKSB8IGh0bWwgJV0iIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IkFwcGVuZFN0YXJ0VGltZVslIERhdGEuSUQgfCBodG1sICVdRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlslIFRyYW5zbGF0ZSgiWW91IGhhdmUgdG8gZmlsbCBpbiBzdGFydCBhbmQgZW5kIHRpbWUgb3IgYSB0aW1lIHBlcmlvZC4iKSB8IGh0bWwgJV08L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJBcHBlbmRTdGFydFRpbWVbJSBEYXRhLklEIHwgaHRtbCAlXVNlcnZlckVycm9yIiBjbGFzcz0iVG9vbHRpcEVycm9yTWVzc2FnZSI+ClslIFJlbmRlckJsb2NrU3RhcnQoIkFwcGVuZFN0YXJ0VGltZUdlbmVyaWNTZXJ2ZXJFcnJvciIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5bJSBUcmFuc2xhdGUoIlRoaXMgZmllbGQgaXMgcmVxdWlyZWQuIikgfCBodG1sICVdPC9wPgpbJSBSZW5kZXJCbG9ja0VuZCgiQXBwZW5kU3RhcnRUaW1lR2VuZXJpY1NlcnZlckVycm9yIikgJV0KWyUgUmVuZGVyQmxvY2tTdGFydCgiQXBwZW5kU3RhcnRUaW1lTmVnYXRpdmVTZXJ2ZXJFcnJvciIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5bJSBUcmFuc2xhdGUoIk5lZ2F0aXZlIHRpbWVzIGFyZSBub3QgYWxsb3dlZC4iKSB8IGh0bWwgJV08L3A+ClslIFJlbmRlckJsb2NrRW5kKCJBcHBlbmRTdGFydFRpbWVOZWdhdGl2ZVNlcnZlckVycm9yIikgJV0KWyUgUmVuZGVyQmxvY2tTdGFydCgiQXBwZW5kU3RhcnRUaW1lUmVwZWF0ZWRIb3VyU2VydmVyRXJyb3IiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+WyUgVHJhbnNsYXRlKCJSZXBlYXRlZCBob3VycyBhcmUgbm90IGFsbG93ZWQuIFN0YXJ0IHRpbWUgbWF0Y2hlcyBhbm90aGVyIGludGVydmFsLiIpIHwgaHRtbCAlXTwvcD4KWyUgUmVuZGVyQmxvY2tFbmQoIkFwcGVuZFN0YXJ0VGltZVJlcGVhdGVkSG91clNlcnZlckVycm9yIikgJV0KWyUgUmVuZGVyQmxvY2tTdGFydCgiQXBwZW5kU3RhcnRUaW1lSW52YWxpZEZvcm1hdFNlcnZlckVycm9yIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlslIFRyYW5zbGF0ZSgiSW52YWxpZCBmb3JtYXQhIFBsZWFzZSBlbnRlciBhIHRpbWUgd2l0aCB0aGUgZm9ybWF0IEhIOk1NLiIpIHwgaHRtbCAlXTwvcD4KWyUgUmVuZGVyQmxvY2tFbmQoIkFwcGVuZFN0YXJ0VGltZUludmFsaWRGb3JtYXRTZXJ2ZXJFcnJvciIpICVdClslIFJlbmRlckJsb2NrU3RhcnQoIkFwcGVuZFN0YXJ0VGltZTI0SG91cnMiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+WyUgVHJhbnNsYXRlKCIyNDowMCBpcyBvbmx5IHBlcm1pdHRlZCBhcyBlbmQgdGltZS4iKSB8IGh0bWwgJV08L3A+ClslIFJlbmRlckJsb2NrRW5kKCJBcHBlbmRTdGFydFRpbWUyNEhvdXJzIikgJV0KWyUgUmVuZGVyQmxvY2tTdGFydCgiQXBwZW5kU3RhcnRUaW1lSW52YWxpZCIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5bJSBUcmFuc2xhdGUoIkludmFsaWQgdGltZSEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuIikgfCBodG1sICVdPC9wPgpbJSBSZW5kZXJCbG9ja0VuZCgiQXBwZW5kU3RhcnRUaW1lSW52YWxpZCIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iQXBwZW5kRW5kVGltZVtbJSBEYXRhLklEIHwgaHRtbCAlXV0iIGlkPSJBcHBlbmRFbmRUaW1lWyUgRGF0YS5JRCB8IGh0bWwgJV0iIGNsYXNzPSJFbmRUaW1lIFZhbGlkYXRlX0RlcGVuZGluZ1JlcXVpcmVkQU5EIFZhbGlkYXRlX0RlcGVuZGluZ19BcHBlbmRTdGFydFRpbWVbJSBEYXRhLklEIHwgaHRtbCAlXSBbJSBEYXRhLkFwcGVuZEVuZFRpbWVSZXF1aXJlZCB8IGh0bWwgJV0gWyUgRGF0YS5BcHBlbmRFbmRUaW1lSW52YWxpZCB8IGh0bWwgJV0iIHZhbHVlPSJbJSBEYXRhLkFwcGVuZEVuZFRpbWUgfCBodG1sICVdIiBzaXplPSI3IiB0aXRsZT0iWyUgVHJhbnNsYXRlKCJFbmQgVGltZSIpIHwgaHRtbCAlXSIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iQXBwZW5kRW5kVGltZVslIERhdGEuSUQgfCBodG1sICVdRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlslIFRyYW5zbGF0ZSgiWW91IGhhdmUgdG8gZmlsbCBpbiBzdGFydCBhbmQgZW5kIHRpbWUgb3IgYSB0aW1lIHBlcmlvZC4iKSB8IGh0bWwgJV08L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJBcHBlbmRFbmRUaW1lWyUgRGF0YS5JRCB8IGh0bWwgJV1TZXJ2ZXJFcnJvciIgY2xhc3M9IlRvb2x0aXBFcnJvck1lc3NhZ2UiPgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJBcHBlbmRFbmRUaW1lR2VuZXJpY1NlcnZlckVycm9yIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlslIFRyYW5zbGF0ZSgiVGhpcyBmaWVsZCBpcyByZXF1aXJlZC4iKSB8IGh0bWwgJV08L3A+ClslIFJlbmRlckJsb2NrRW5kKCJBcHBlbmRFbmRUaW1lR2VuZXJpY1NlcnZlckVycm9yIikgJV0KWyUgUmVuZGVyQmxvY2tTdGFydCgiQXBwZW5kRW5kVGltZUJlZm9yZVN0YXJ0VGltZVNlcnZlckVycm9yIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlslIFRyYW5zbGF0ZSgiRW5kIHRpbWUgbXVzdCBiZSBhZnRlciBzdGFydCB0aW1lLiIpIHwgaHRtbCAlXTwvcD4KWyUgUmVuZGVyQmxvY2tFbmQoIkFwcGVuZEVuZFRpbWVCZWZvcmVTdGFydFRpbWVTZXJ2ZXJFcnJvciIpICVdClslIFJlbmRlckJsb2NrU3RhcnQoIkFwcGVuZEVuZFRpbWVOZWdhdGl2ZVNlcnZlckVycm9yIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlslIFRyYW5zbGF0ZSgiTmVnYXRpdmUgdGltZXMgYXJlIG5vdCBhbGxvd2VkLiIpIHwgaHRtbCAlXTwvcD4KWyUgUmVuZGVyQmxvY2tFbmQoIkFwcGVuZEVuZFRpbWVOZWdhdGl2ZVNlcnZlckVycm9yIikgJV0KWyUgUmVuZGVyQmxvY2tTdGFydCgiQXBwZW5kRW5kVGltZVJlcGVhdGVkSG91clNlcnZlckVycm9yIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlslIFRyYW5zbGF0ZSgiUmVwZWF0ZWQgaG91cnMgYXJlIG5vdCBhbGxvd2VkLiBFbmQgdGltZSBtYXRjaGVzIGFub3RoZXIgaW50ZXJ2YWwuIikgfCBodG1sICVdPC9wPgpbJSBSZW5kZXJCbG9ja0VuZCgiQXBwZW5kRW5kVGltZVJlcGVhdGVkSG91clNlcnZlckVycm9yIikgJV0KWyUgUmVuZGVyQmxvY2tTdGFydCgiQXBwZW5kRW5kVGltZUludmFsaWRGb3JtYXRTZXJ2ZXJFcnJvciIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5bJSBUcmFuc2xhdGUoIkludmFsaWQgZm9ybWF0ISBQbGVhc2UgZW50ZXIgYSB0aW1lIHdpdGggdGhlIGZvcm1hdCBISDpNTS4iKSB8IGh0bWwgJV08L3A+ClslIFJlbmRlckJsb2NrRW5kKCJBcHBlbmRFbmRUaW1lSW52YWxpZEZvcm1hdFNlcnZlckVycm9yIikgJV0KWyUgUmVuZGVyQmxvY2tTdGFydCgiQXBwZW5kRW5kVGltZUludmFsaWQiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+WyUgVHJhbnNsYXRlKCJJbnZhbGlkIHRpbWUhIEEgZGF5IGhhcyBvbmx5IDI0IGhvdXJzLiIpIHwgaHRtbCAlXTwvcD4KWyUgUmVuZGVyQmxvY2tFbmQoIkFwcGVuZEVuZFRpbWVJbnZhbGlkIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KWyUgUmVuZGVyQmxvY2tTdGFydCgiQXBwZW5kVW5pdElucHV0UGVyaW9kIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJBcHBlbmRQZXJpb2RbWyUgRGF0YS5JRCB8IGh0bWwgJV1dIiBpZD0iQXBwZW5kUGVyaW9kWyUgRGF0YS5JRCB8IGh0bWwgJV0iIGNsYXNzPSJQZXJpb2QgVmFsaWRhdGVfVGltZUFjY291bnRpbmdfUGVyaW9kIFZhbGlkYXRlX1RpbWVVbml0cyBbJSBEYXRhLkFwcGVuZFBlcmlvZFJlcXVpcmVkIHwgaHRtbCAlXSBbJSBEYXRhLkFwcGVuZFBlcmlvZEludmFsaWQgfCBodG1sICVdIiB2YWx1ZT0iWyUgRGF0YS5BcHBlbmRQZXJpb2QgfCBodG1sICVdIiBzaXplPSI3IiB0aXRsZT0iWyUgVHJhbnNsYXRlKCJQZXJpb2QiKSB8IGh0bWwgJV0iIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IkFwcGVuZFBlcmlvZFslIERhdGEuSUQgfCBodG1sICVdRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlslIFRyYW5zbGF0ZSgiWW91IGhhdmUgdG8gZmlsbCBpbiBzdGFydCBhbmQgZW5kIHRpbWUgb3IgYSB0aW1lIHBlcmlvZC4iKSB8IGh0bWwgJV08L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJBcHBlbmRQZXJpb2RbJSBEYXRhLklEIHwgaHRtbCAlXVNlcnZlckVycm9yIiBjbGFzcz0iVG9vbHRpcEVycm9yTWVzc2FnZSI+ClslIFJlbmRlckJsb2NrU3RhcnQoIkFwcGVuZFBlcmlvZEdlbmVyaWNTZXJ2ZXJFcnJvciIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5bJSBUcmFuc2xhdGUoIlRoaXMgZmllbGQgaXMgcmVxdWlyZWQuIikgfCBodG1sICVdPC9wPgpbJSBSZW5kZXJCbG9ja0VuZCgiQXBwZW5kUGVyaW9kR2VuZXJpY1NlcnZlckVycm9yIikgJV0KWyUgUmVuZGVyQmxvY2tTdGFydCgiQXBwZW5kSW52YWxpZEhvdXJzUGVyaW9kU2VydmVyRXJyb3IiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+WyUgVHJhbnNsYXRlKCJJbnZhbGlkIHBlcmlvZCEgQSBkYXkgaGFzIG9ubHkgMjQgaG91cnMuIikgfCBodG1sICVdPC9wPgpbJSBSZW5kZXJCbG9ja0VuZCgiQXBwZW5kSW52YWxpZEhvdXJzUGVyaW9kU2VydmVyRXJyb3IiKSAlXQpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJBcHBlbmRaZXJvSG91cnNQZXJpb2RTZXJ2ZXJFcnJvciIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5bJSBUcmFuc2xhdGUoIkEgdmFsaWQgcGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8uIikgfCBodG1sICVdPC9wPgpbJSBSZW5kZXJCbG9ja0VuZCgiQXBwZW5kWmVyb0hvdXJzUGVyaW9kU2VydmVyRXJyb3IiKSAlXQpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJBcHBlbmROZWdhdGl2ZVBlcmlvZFNlcnZlckVycm9yIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlslIFRyYW5zbGF0ZSgiSW52YWxpZCBwZXJpb2QhIE5lZ2F0aXZlIHBlcmlvZHMgYXJlIG5vdCBhbGxvd2VkLiIpIHwgaHRtbCAlXTwvcD4KWyUgUmVuZGVyQmxvY2tFbmQoIkFwcGVuZE5lZ2F0aXZlUGVyaW9kU2VydmVyRXJyb3IiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KWyUgUmVuZGVyQmxvY2tFbmQoIkFwcGVuZFVuaXRJbnB1dFBlcmlvZCIpICVdClslIFJlbmRlckJsb2NrU3RhcnQoIkFwcGVuZFVuaXRQZXJpb2RXaXRob3V0SW5wdXQiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5bJSBEYXRhLkFwcGVuZFBlcmlvZCB8IGh0bWwgJV08L3RkPgpbJSBSZW5kZXJCbG9ja0VuZCgiQXBwZW5kVW5pdFBlcmlvZFdpdGhvdXRJbnB1dCIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgpbJSBSZW5kZXJCbG9ja0VuZCgiQXBwZW5kVW5pdCIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNvbHNwYW49IjYiIGNsYXNzPSJSaWdodCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9IkNhbGxGb3JBY3Rpb24gUGx1cyIgdHlwZT0iYnV0dG9uIiBpZD0iQXBwZW5kTW9yZUlucHV0RmllbGRzIiBuYW1lPSJNb3JlSW5wdXRGaWVsZHMiPjxzcGFuPjxpIGNsYXNzPSJmYSBmYS1wbHVzLXNxdWFyZSI+PC9pPlslIFRyYW5zbGF0ZSgiQWRkIG9uZSByb3ciKSB8IGh0bWwgJV08L3NwYW4+PC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+ClslIFJlbmRlckJsb2NrRW5kKCJBcHBlbmRVbml0QmxvY2siKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjb2xzcGFuPSI0Ij48L3RkPgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJBcHBlbmRUb3RhbCIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlslIFRyYW5zbGF0ZSgiVG90YWwiKSB8IGh0bWwgJV06PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHNwYW4gY2xhc3M9IlRvdGFsSG91cnMiPlslIERhdGEuQXBwZW5kVG90YWwgfCBodG1sICVdPC9zcGFuPjwvdGQ+ClslIFJlbmRlckJsb2NrRW5kKCJBcHBlbmRUb3RhbCIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJSZWFkb25seSIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNvbHNwYW49IjYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbJSBUcmFuc2xhdGUoRGF0YS5EZXNjcmlwdGlvbikgfCBodG1sICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+ClslIFJlbmRlckJsb2NrRW5kKCJSZWFkb25seSIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+CiAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KWyUgUmVuZGVyQmxvY2tTdGFydCgiQXBwZW5kT3RoZXJUaW1lcyIpICVdCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iU3BhY2luZ1RvcCBBYnNlbmNlIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iMSIgaWQ9IkxlYXZlRGF5IiBuYW1lPSJMZWF2ZURheSIgdGl0bGU9IlslIFRyYW5zbGF0ZSgiT24gdmFjYXRpb24iKSB8IGh0bWwgJV0iIGNsYXNzPSJbJSBEYXRhLkxlYXZlRGF5SW52YWxpZCAlXSIgWyUgRGF0YS5MZWF2ZURheSAlXSAvPgogICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJMZWF2ZURheSI+WyUgVHJhbnNsYXRlKCJPbiB2YWNhdGlvbiIpIHwgaHRtbCAlXTwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IkxlYXZlRGF5U2VydmVyRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlslIFRyYW5zbGF0ZSgiWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEiKSB8IGh0bWwgJV08L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iY2hlY2tib3giIHZhbHVlPSIxIiBpZD0iU2ljayIgbmFtZT0iU2ljayIgdGl0bGU9IlslIFRyYW5zbGF0ZSgiT24gc2ljayBsZWF2ZSIpIHwgaHRtbCAlXSIgY2xhc3M9IlslIERhdGEuU2lja0ludmFsaWQgJV0iIFslIERhdGEuU2ljayAlXSAvPgogICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJTaWNrIj5bJSBUcmFuc2xhdGUoIk9uIHNpY2sgbGVhdmUiKSB8IGh0bWwgJV08L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJTaWNrU2VydmVyRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlslIFRyYW5zbGF0ZSgiWW91IGNhbiBvbmx5IHNlbGVjdCBvbmUgY2hlY2tib3ggZWxlbWVudCEiKSB8IGh0bWwgJV08L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iY2hlY2tib3giIHZhbHVlPSIxIiBpZD0iT3ZlcnRpbWUiIG5hbWU9Ik92ZXJ0aW1lIiB0aXRsZT0iWyUgVHJhbnNsYXRlKCJPbiBvdmVydGltZSBsZWF2ZSIpIHwgaHRtbCAlXSIgY2xhc3M9IlslIERhdGEuT3ZlcnRpbWVJbnZhbGlkICVdIiBbJSBEYXRhLk92ZXJ0aW1lICVdIC8+CiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Ik92ZXJ0aW1lIj5bJSBUcmFuc2xhdGUoIk9uIG92ZXJ0aW1lIGxlYXZlIikgfCBodG1sICVdPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iT3ZlcnRpbWVTZXJ2ZXJFcnJvciIgY2xhc3M9IlRvb2x0aXBFcnJvck1lc3NhZ2UiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+WyUgVHJhbnNsYXRlKCJZb3UgY2FuIG9ubHkgc2VsZWN0IG9uZSBjaGVja2JveCBlbGVtZW50ISIpIHwgaHRtbCAlXTwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+ClslIFJlbmRlckJsb2NrRW5kKCJBcHBlbmRPdGhlclRpbWVzIikgJV0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJDZW50ZXIgU3BhY2luZ1RvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9IlByaW1hcnkgQ2FsbEZvckFjdGlvbiIgdHlwZT0ic3VibWl0IiBuYW1lPSJJbnNlcnRXb3JraW5nVW5pdHMiIHZhbHVlPSJbJSBUcmFuc2xhdGUoIlN1Ym1pdCIpIHwgaHRtbCAlXSI+PHNwYW4+PGkgY2xhc3M9ImZhIGZhLWNoZWNrLXNxdWFyZS1vIj48L2k+IFslIFRyYW5zbGF0ZSgiU3VibWl0IikgfCBodG1sICVdPC9zcGFuPjwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJbJSBFbnYoIkJhc2VsaW5rIikgJV1BY3Rpb249WyUgRW52KCJBY3Rpb24iKSAlXTsiPlslIFRyYW5zbGF0ZSgiQ2FuY2VsIikgfCBodG1sICVdPC9hPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IkNsZWFyIj48L2Rpdj4KICAgICAgICAgICAgICAgIDwvZm9ybT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+ClslIFJlbmRlckJsb2NrRW5kKCJBcHBlbmRXb3JraW5nVW5pdHMiKSAlXQogICAgPC9kaXY+CjwvZGl2PgoKPHAgaWQ9IlNpY2tMZWF2ZU1lc3NhZ2UiIGNsYXNzPSJIaWRkZW4gQ2VudGVyIj4KICAgIFslIFRyYW5zbGF0ZSgiQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBzaWNrIGxlYXZlPyIpIHwgaHRtbCAlXQo8L3A+Cgo8cCBpZD0iVmFjYXRpb25NZXNzYWdlIiBjbGFzcz0iSGlkZGVuIENlbnRlciI+CiAgICBbJSBUcmFuc2xhdGUoIkFyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3b3JrZWQgd2hpbGUgeW91IHdlcmUgb24gdmFjYXRpb24/IikgfCBodG1sICVdCjwvcD4KCjxwIGlkPSJPdmVydGltZU1lc3NhZ2UiIGNsYXNzPSJIaWRkZW4gQ2VudGVyIj4KICAgIFslIFRyYW5zbGF0ZSgiQXJlIHlvdSBzdXJlIHRoYXQgeW91IHdvcmtlZCB3aGlsZSB5b3Ugd2VyZSBvbiBvdmVydGltZSBsZWF2ZT8iKSB8IGh0bWwgJV0KPC9wPgoKPHAgaWQ9Ik1vcmUxNkhvdXJzTWVzc2FnZSIgY2xhc3M9IkhpZGRlbiBDZW50ZXIiPgogICAgWyUgVHJhbnNsYXRlKCJBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd29ya2VkIG1vcmUgdGhhbiAxNiBob3Vycz8iKSB8IGh0bWwgJV0KPC9wPgo=</File>
        <File Location="Kernel/Output/HTML/Templates/Standard/AgentTimeAccountingOverview.tt" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgo8ZGl2IGNsYXNzPSJNYWluQm94IEFSSUFSb2xlTWFpbiI+CiAgICA8aDEgY2xhc3M9IkhlYWRlciI+WyUgVHJhbnNsYXRlKCJUaW1lIHJlcG9ydGluZyBtb250aGx5IG92ZXJ2aWV3IikgfCBodG1sICVdPC9oMT4KCiAgICA8ZGl2IGNsYXNzPSJMYXlvdXRGaXhlZFNpZGViYXIgU2lkZWJhckxhc3QiPgogICAgICAgIDxkaXYgY2xhc3M9IlNpZGViYXJDb2x1bW4iPgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJPdmVydGltZSIpICVdCiAgICAgICAgICAgIDxkaXYgY2xhc3M9IldpZGdldFNpbXBsZSI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJIZWFkZXIiPgogICAgICAgICAgICAgICAgICAgIDxoMj5bJSBUcmFuc2xhdGUoIk92ZXJ0aW1lIChIb3VycykiKSB8IGh0bWwgJV08L2gyPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJDb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICA8ZmllbGRzZXQgY2xhc3M9IlRhYmxlTGlrZSBGaXhlZExhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsPlslIFRyYW5zbGF0ZSgiT3ZlcnRpbWUgKHRoaXMgbW9udGgpIikgfCBodG1sICVdOjwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJWYWx1ZSI+WyUgRGF0YS5PdmVydGltZSB8IGh0bWwgJV08L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IkNsZWFyIj48L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbD5bJSBUcmFuc2xhdGUoIk92ZXJ0aW1lICh0b3RhbCkiKSB8IGh0bWwgJV06PC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9IlZhbHVlIj5bJSBEYXRhLk92ZXJ0aW1lVW50aWwgfCBodG1sICVdPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJDbGVhciI+PC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWw+WyUgVHJhbnNsYXRlKCJSZW1haW5pbmcgb3ZlcnRpbWUgbGVhdmUiKSB8IGh0bWwgJV06PC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9IlZhbHVlIj5bJSBEYXRhLk92ZXJ0aW1lVG90YWwgfCBodG1sICVdPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJDbGVhciI+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9maWVsZHNldD4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KWyUgUmVuZGVyQmxvY2tFbmQoIk92ZXJ0aW1lIikgJV0KCiAgICAgICAgICAgIDxkaXYgY2xhc3M9IldpZGdldFNpbXBsZSI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJIZWFkZXIiPgogICAgICAgICAgICAgICAgICAgIDxoMj5bJSBUcmFuc2xhdGUoIlZhY2F0aW9uIChEYXlzKSIpIHwgaHRtbCAlXTwvaDI+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IkNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgIDxmaWVsZHNldCBjbGFzcz0iVGFibGVMaWtlIEZpeGVkTGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWw+WyUgVHJhbnNsYXRlKCJWYWNhdGlvbiB0YWtlbiAodGhpcyBtb250aCkiKSB8IGh0bWwgJV06PC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9IlZhbHVlIj5bJSBEYXRhLkxlYXZlRGF5IHwgaHRtbCAlXTwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ2xlYXIiPjwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsPlslIFRyYW5zbGF0ZSgiVmFjYXRpb24gdGFrZW4gKHRvdGFsKSIpIHwgaHRtbCAlXTo8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iVmFsdWUiPlslIERhdGEuTGVhdmVEYXlUb3RhbCB8IGh0bWwgJV08L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IkNsZWFyIj48L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbD5bJSBUcmFuc2xhdGUoIlJlbWFpbmluZyB2YWNhdGlvbiIpIHwgaHRtbCAlXTo8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iVmFsdWUiPlslIERhdGEuTGVhdmVEYXlSZW1haW5pbmcgfCBodG1sICVdPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJDbGVhciI+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9maWVsZHNldD4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgIDxkaXYgY2xhc3M9IldpZGdldFNpbXBsZSI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJIZWFkZXIiPgogICAgICAgICAgICAgICAgICAgIDxoMj5bJSBUcmFuc2xhdGUoIlNpY2sgTGVhdmUgKERheXMpIikgfCBodG1sICVdPC9oMj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgPGZpZWxkc2V0IGNsYXNzPSJUYWJsZUxpa2UgRml4ZWRMYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbD5bJSBUcmFuc2xhdGUoIlNpY2sgbGVhdmUgdGFrZW4gKHRoaXMgbW9udGgpIikgfCBodG1sICVdOjwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJWYWx1ZSI+WyUgRGF0YS5TaWNrIHwgaHRtbCAlXTwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ2xlYXIiPjwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsPlslIFRyYW5zbGF0ZSgiU2ljayBsZWF2ZSB0YWtlbiAodG90YWwpIikgfCBodG1sICVdOjwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJWYWx1ZSI+WyUgRGF0YS5TaWNrVG90YWwgfCBodG1sICVdPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJDbGVhciI+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9maWVsZHNldD4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KCiAgICAgICAgPGRpdiBjbGFzcz0iQ29udGVudENvbHVtbiI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9IldpZGdldFNpbXBsZSI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJIZWFkZXIiPgogICAgICAgICAgICAgICAgICAgIDxoMj5bJSBUcmFuc2xhdGUoIk92ZXJ2aWV3IikgfCBodG1sICVdClslIFJlbmRlckJsb2NrU3RhcnQoIlVzZXIiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAtIFslIERhdGEuVXNlciB8IGh0bWwgJV0KWyUgUmVuZGVyQmxvY2tFbmQoIlVzZXIiKSAlXQogICAgICAgICAgICAgICAgICAgIDwvaDI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iQWRkaXRpb25hbEluZm9ybWF0aW9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9IkFycm93IiB0aXRsZT0iWyUgVHJhbnNsYXRlKCJQcmV2aW91cyBtb250aCIpIHwgaHRtbCAlXSIgaHJlZj0iWyUgRW52KCJCYXNlbGluayIpICVdQWN0aW9uPVslIEVudigiQWN0aW9uIikgJV07WWVhcj1bJSBEYXRhLlllYXJCYWNrIHwgdXJpICVdO01vbnRoPVslIERhdGEuTW9udGhCYWNrIHwgdXJpICVdO1VzZXJJRD1bJSBEYXRhLlVzZXJJRCB8IHVyaSAlXSI+PGkgY2xhc3M9ImZhIGZhLWNhcmV0LWxlZnQiPjwvaT48L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPSJBcnJvdyIgdGl0bGU9IlslIFRyYW5zbGF0ZSgiTmV4dCBtb250aCIpIHwgaHRtbCAlXSIgaHJlZj0iWyUgRW52KCJCYXNlbGluayIpICVdQWN0aW9uPVslIEVudigiQWN0aW9uIikgJV07WWVhcj1bJSBEYXRhLlllYXJOZXh0IHwgdXJpICVdO01vbnRoPVslIERhdGEuTW9udGhOZXh0IHwgdXJpICVdO1VzZXJJRD1bJSBEYXRhLlVzZXJJRCB8IHVyaSAlXSI+PGkgY2xhc3M9ImZhIGZhLWNhcmV0LXJpZ2h0Ij48L2k+PC9hPgogICAgICAgICAgICAgICAgICAgICAgICBbJSBUcmFuc2xhdGUoRGF0YS5Nb250aF90b19UZXh0KSB8IGh0bWwgJV0gWyUgRGF0YS5ZZWFyIHwgaHRtbCAlXQogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJDb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9IkRhdGFUYWJsZSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0aGVhZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+WyUgVHJhbnNsYXRlKCJEYXkiKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5bJSBUcmFuc2xhdGUoIldlZWtkYXkiKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5bJSBUcmFuc2xhdGUoIkNvbW1lbnQiKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5bJSBUcmFuc2xhdGUoIldvcmtpbmcgSG91cnMiKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgPC90aGVhZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRib2R5PgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJSb3ciKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyIGNsYXNzPSJbJSBEYXRhLkNsYXNzIHwgaHRtbCAlXSBNYXN0ZXJBY3Rpb24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iRml4ZWQgRGF5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iWyUgRW52KCJCYXNlbGluayIpICVdQWN0aW9uPVslIERhdGEuQWN0aW9uIHwgdXJpICVdO1llYXI9WyUgRGF0YS5ZZWFyIHwgdXJpICVdO01vbnRoPVslIERhdGEuTW9udGggfCB1cmkgJV07RGF5PVslIERhdGEuRGF5IHwgdXJpICVdO1VzZXJJRD1bJSBEYXRhLlVzZXJJRCB8IHVyaSAlXSIgY2xhc3M9Ik1hc3RlckFjdGlvbkxpbmsiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyUgRGF0YS5EYXkgfCBodG1sICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iRml4ZWQgV2Vla2RheSI+WyUgVHJhbnNsYXRlKERhdGEuV2Vla2RheV90b19UZXh0KSB8IGh0bWwgJV08L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5bJSBUcmFuc2xhdGUoRGF0YS5Db21tZW50KSB8IGh0bWwgJV08L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iUmlnaHQiPlslIERhdGEuV29ya2luZ0hvdXJzIHwgaHRtbCAlXTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgpbJSBSZW5kZXJCbG9ja0VuZCgiUm93IikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgPC90Ym9keT4KICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IlNwYWNpbmdUb3AgUmlnaHQiPjxzdHJvbmc+WyUgVHJhbnNsYXRlKCJUb3RhbCB3b3JrZWQgaG91cnMiKSB8IGh0bWwgJV06PC9zdHJvbmc+IFslIERhdGEuV29ya2luZ0hvdXJzIHwgaHRtbCAlXTwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgoKWyUgUmVuZGVyQmxvY2tTdGFydCgiUHJvamVjdFRhYmxlIikgJV0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iV2lkZ2V0U2ltcGxlIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IkhlYWRlciI+CiAgICAgICAgICAgICAgICAgICAgPGgyPgogICAgICAgICAgICAgICAgICAgICAgICBbJSBUcmFuc2xhdGUoIlVzZXIncyBwcm9qZWN0IG92ZXJ2aWV3IikgfCBodG1sICVdCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IlslIEVudigiQmFzZWxpbmsiKSAlXUFjdGlvbj1bJSBFbnYoIkFjdGlvbiIpICVdO1llYXI9WyUgRGF0YS5ZZWFyIHwgdXJpICVdO01vbnRoPVslIERhdGEuTW9udGggfCB1cmkgJV07UHJvamVjdFN0YXR1c1Nob3c9WyUgRGF0YS5Qcm9qZWN0U3RhdHVzU2hvdyB8IHVyaSAlXTtVc2VySUQ9WyUgRGF0YS5Vc2VySUQgfCB1cmkgJV0iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgKFslIFRyYW5zbGF0ZShEYXRhLlNob3dQcm9qZWN0cykgfCBodG1sICVdKQogICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgPC9oMj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJEYXRhVGFibGUgTm9Ib3ZlciBIaWdoQ2VsbHMiPgogICAgICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlslIFRyYW5zbGF0ZSgiUHJvamVjdCIpIHwgaHRtbCAlXTwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlslIFRyYW5zbGF0ZSgiVGFzayIpIHwgaHRtbCAlXTwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlslIFRyYW5zbGF0ZSgiSG91cnMgKG1vbnRobHkpIikgfCBodG1sICVdPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+WyUgVHJhbnNsYXRlKCJIb3VycyAoTGlmZXRpbWUpIikgfCBodG1sICVdPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0Ym9keT4KWyUgUmVuZGVyQmxvY2tTdGFydCgiQWN0aW9uIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KWyUgUmVuZGVyQmxvY2tTdGFydCgiUHJvamVjdCIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIHJvd3NwYW49IlslIERhdGEuUm93U3BhbiAlXSIgY2xhc3M9IlJvd1NwYW4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nPgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJQcm9qZWN0Tm9MaW5rIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyUgRGF0YS5Qcm9qZWN0IHwgaHRtbCAlXQpbJSBSZW5kZXJCbG9ja0VuZCgiUHJvamVjdE5vTGluayIpICVdClslIFJlbmRlckJsb2NrU3RhcnQoIlByb2plY3RMaW5rIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iWyUgRW52KCJCYXNlbGluayIpICVdQWN0aW9uPUFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmc7U3ViYWN0aW9uPVJlcG9ydGluZ1Byb2plY3Q7UHJvamVjdElEPVslIERhdGEuUHJvamVjdElEIHwgdXJpICVdIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFslIERhdGEuUHJvamVjdCB8IGh0bWwgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgpbJSBSZW5kZXJCbG9ja0VuZCgiUHJvamVjdExpbmsiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N0cm9uZz4KWyUgUmVuZGVyQmxvY2tTdGFydCgiUHJvamVjdERlc2NyaXB0aW9uIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJyLz5bJSBEYXRhLlByb2plY3REZXNjcmlwdGlvbiB8IGh0bWwgfCBodG1sX2xpbmVfYnJlYWsgJV0KWyUgUmVuZGVyQmxvY2tFbmQoIlByb2plY3REZXNjcmlwdGlvbiIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KWyUgUmVuZGVyQmxvY2tFbmQoIlByb2plY3QiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5bJSBEYXRhLkFjdGlvbiB8IGh0bWwgJV08L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iUmlnaHQiPlslIERhdGEuSG91cnMgfCBodG1sICVdPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9IlJpZ2h0Ij5bJSBEYXRhLkhvdXJzVG90YWwgfCBodG1sICVdPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+ClslIFJlbmRlckJsb2NrU3RhcnQoIkFjdGlvblRvdGFsIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHN0cm9uZz5bJSBUcmFuc2xhdGUoIlRvdGFsIikgfCBodG1sICVdPC9zdHJvbmc+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9IlJpZ2h0Ij48c3Ryb25nPlslIERhdGEuSG91cnMgfCBodG1sICVdPC9zdHJvbmc+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9IlJpZ2h0Ij48c3Ryb25nPlslIERhdGEuSG91cnNUb3RhbCB8IGh0bWwgJV08L3N0cm9uZz48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KWyUgUmVuZGVyQmxvY2tFbmQoIkFjdGlvblRvdGFsIikgJV0KWyUgUmVuZGVyQmxvY2tFbmQoIkFjdGlvbiIpICVdClslIFJlbmRlckJsb2NrU3RhcnQoIkdyYW5kVG90YWwiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyIGNsYXNzPSJHcmFuZFRvdGFsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY29sc3Bhbj0iMiI+PHN0cm9uZz5bJSBUcmFuc2xhdGUoIkdyYW5kIHRvdGFsIikgfCBodG1sICVdPC9zdHJvbmc+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9IlJpZ2h0Ij48c3Ryb25nPlslIERhdGEuVG90YWxIb3VycyB8IGh0bWwgJV08L3N0cm9uZz48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iUmlnaHQiPjxzdHJvbmc+WyUgRGF0YS5Ub3RhbEhvdXJzVG90YWwgfCBodG1sICVdPC9zdHJvbmc+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+ClslIFJlbmRlckJsb2NrRW5kKCJHcmFuZFRvdGFsIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgPC90Ym9keT4KICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgpbJSBSZW5kZXJCbG9ja0VuZCgiUHJvamVjdFRhYmxlIikgJV0KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2Pgo8L2Rpdj4K</File>
        <File Location="Kernel/Output/HTML/Templates/Standard/AgentTimeAccountingReporting.tt" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgo8ZGl2IGNsYXNzPSJNYWluQm94IEFSSUFSb2xlTWFpbiBMYXlvdXRGaXhlZFNpZGViYXIgU2lkZWJhckZpcnN0Ij4KICAgIDxoMSBjbGFzcz0iSGVhZGVyIj5bJSBUcmFuc2xhdGUoIlRpbWUgcmVwb3J0aW5nIikgfCBodG1sICVdOiBbJSBUcmFuc2xhdGUoRGF0YS5Nb250aF90b19UZXh0KSB8IGh0bWwgJV0gWyUgRGF0YS5ZZWFyICVdPC9oMT4KCiAgICA8ZGl2IGNsYXNzPSJTaWRlYmFyQ29sdW1uIj4KICAgICAgICA8ZGl2IGNsYXNzPSJXaWRnZXRTaW1wbGUiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJIZWFkZXIiPgogICAgICAgICAgICAgICAgPGgyPlslIFRyYW5zbGF0ZSgiTW9udGggTmF2aWdhdGlvbiIpIHwgaHRtbCAlXTwvaDI+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJDb250ZW50Ij4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Ik1vbnRoU2VsZWN0aW9uIj4KICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0iQXJyb3cgTGVmdCIgdGl0bGU9IlslIFRyYW5zbGF0ZSgiUHJldmlvdXMgbW9udGgiKSB8IGh0bWwgJV0iIGhyZWY9IlslIEVudigiQmFzZWxpbmsiKSAlXUFjdGlvbj1bJSBFbnYoIkFjdGlvbiIpICVdO1llYXI9WyUgRGF0YS5ZZWFyQmFjayB8IHVyaSAlXTtNb250aD1bJSBEYXRhLk1vbnRoQmFjayB8IHVyaSAlXSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJmYSBmYS1jYXJldC1sZWZ0Ij48L2k+CiAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPSJBcnJvdyIgdGl0bGU9IlslIFRyYW5zbGF0ZSgiTmV4dCBtb250aCIpIHwgaHRtbCAlXSIgaHJlZj0iWyUgRW52KCJCYXNlbGluayIpICVdQWN0aW9uPVslIEVudigiQWN0aW9uIikgJV07WWVhcj1bJSBEYXRhLlllYXJOZXh0IHwgdXJpICVdO01vbnRoPVslIERhdGEuTW9udGhOZXh0IHwgdXJpICVdIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9ImZhIGZhLWNhcmV0LXJpZ2h0Ij48L2k+CiAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+WyUgVHJhbnNsYXRlKERhdGEuTW9udGhfdG9fVGV4dCkgfCBodG1sICVdIFslIERhdGEuWWVhciAlXTwvc3Ryb25nPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJDbGVhciI+PC9kaXY+CiAgICAgICAgICAgICAgICA8Zm9ybSBhY3Rpb249IlslIEVudigiQ0dJSGFuZGxlIikgJV0iIG1ldGhvZD0icG9zdCIgZW5jdHlwZT0ibXVsdGlwYXJ0L2Zvcm0tZGF0YSIgbmFtZT0iY29tcG9zZSIgaWQ9IkRhdGVTZWxlY3Rpb25Gb3JtIj4KICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJBY3Rpb24iICAgIHZhbHVlPSJbJSBFbnYoIkFjdGlvbiIpICVdIiAvPgogICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IlN1YmFjdGlvbiIgdmFsdWU9IlJlcG9ydGluZyIgLz4KICAgICAgICAgICAgICAgICAgICBbJSBEYXRhLk1vbnRoT3B0aW9uICVdCiAgICAgICAgICAgICAgICAgICAgWyUgRGF0YS5ZZWFyT3B0aW9uICVdCiAgICAgICAgICAgICAgICA8L2Zvcm0+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBpZD0iTmF2aWdhdGlvblNlbGVjdCIgY2xhc3M9IkNhbGxGb3JBY3Rpb24gRnVsbHNpemUgQ2VudGVyIFNwYWNpbmdUb3AiIGFjY2Vzc2tleT0iZyI+PHNwYW4+PGkgY2xhc3M9ImZhIGZhLWFycm93LWNpcmNsZS1vLXJpZ2h0Ij48L2k+WyUgVHJhbnNsYXRlKCJHbyB0byBkYXRlIikgfCBodG1sICVdPC9zcGFuPjwvYT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KCiAgICA8ZGl2IGNsYXNzPSJDb250ZW50Q29sdW1uIj4KICAgICAgICA8ZGl2IGNsYXNzPSJXaWRnZXRTaW1wbGUiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJIZWFkZXIiPgogICAgICAgICAgICAgICAgPGgyPlslIFRyYW5zbGF0ZSgiVXNlciByZXBvcnRzIikgfCBodG1sICVdPC9oMj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9IkNvbnRlbnQgSG9yaXpvbnRhbFNjcm9sbCI+CgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJOb1VzZXJEYXRhRm91bmRNc2ciKSAlXQogICAgICAgICAgICAgICAgPGRpdiBpZD0iVGltZUFjY291bnRpbmdFbXB0eU1lc3NhZ2VTbWFsbCI+CiAgICAgICAgICAgICAgICAgICAgWyUgVHJhbnNsYXRlKCJObyBkYXRhIGZvdW5kLiIpIHwgaHRtbCAlXQogICAgICAgICAgICAgICAgPC9kaXY+ClslIFJlbmRlckJsb2NrRW5kKCJOb1VzZXJEYXRhRm91bmRNc2ciKSAlXQoKWyUgUmVuZGVyQmxvY2tTdGFydCgiVXNlclRhYmxlIikgJV0KICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0iRGF0YVRhYmxlIj4KICAgICAgICAgICAgICAgICAgICA8dGhlYWQgY2xhc3M9IlR3b1Jvd3MiPgogICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+PC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz0iQ2VudGVyIiBjb2xzcGFuPSI0Ij5bJSBUcmFuc2xhdGUoIk1vbnRobHkgdG90YWwiKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPSJDZW50ZXIiIGNvbHNwYW49IjIiPlslIFRyYW5zbGF0ZSgiTGlmZXRpbWUgdG90YWwiKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+WyUgVHJhbnNsYXRlKCJVc2VyIikgfCBodG1sICVdPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5bJSBUcmFuc2xhdGUoIldvcmtpbmcgSG91cnMiKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlslIFRyYW5zbGF0ZSgiT3ZlcnRpbWUgbGVhdmUiKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlslIFRyYW5zbGF0ZSgiVmFjYXRpb24iKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlslIFRyYW5zbGF0ZSgiU2ljayBsZWF2ZSIpIHwgaHRtbCAlXTwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+WyUgVHJhbnNsYXRlKCJPdmVydGltZSBsZWF2ZSIpIHwgaHRtbCAlXTwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+WyUgVHJhbnNsYXRlKCJWYWNhdGlvbiByZW1haW5pbmciKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+CiAgICAgICAgICAgICAgICAgICAgPHRib2R5PgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJVc2VyIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgPHRyIGNsYXNzPSJNYXN0ZXJBY3Rpb24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IlslIEVudigiQmFzZWxpbmsiKSAlXUFjdGlvbj1BZ2VudFRpbWVBY2NvdW50aW5nT3ZlcnZpZXc7WWVhcj1bJSBEYXRhLlllYXIgfCB1cmkgJV07TW9udGg9WyUgRGF0YS5Nb250aCB8IHVyaSAlXTtVc2VySUQ9WyUgRGF0YS5Vc2VySUQgfCB1cmkgJV0iIGNsYXNzPSJNYXN0ZXJBY3Rpb25MaW5rIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyUgRGF0YS5Vc2VyIHwgaHRtbCAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9IlJpZ2h0Ij5bJSBEYXRhLldvcmtpbmdIb3VycyB8IGh0bWwgJV08L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJSaWdodCI+WyUgRGF0YS5PdmVydGltZSB8IGh0bWwgJV08L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJSaWdodCI+WyUgRGF0YS5MZWF2ZURheSB8IGh0bWwgJV08L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJSaWdodCI+WyUgRGF0YS5TaWNrIHwgaHRtbCAlXTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9IlJpZ2h0Ij5bJSBEYXRhLk92ZXJ0aW1lVG90YWwgfCBodG1sICVdPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iUmlnaHQiPlslIERhdGEuTGVhdmVEYXlSZW1haW5pbmcgfCBodG1sICVdPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KWyUgUmVuZGVyQmxvY2tFbmQoIlVzZXIiKSAlXQpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJVc2VyR3JhbmRUb3RhbCIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBjbGFzcz0iR3JhbmRUb3RhbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHN0cm9uZz5bJSBUcmFuc2xhdGUoIlRvdGFsIikgfCBodG1sICVdPC9zdHJvbmc+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iUmlnaHQiPjxzdHJvbmc+WyUgRGF0YS5Ub3RhbFdvcmtpbmdIb3VycyB8IGh0bWwgJV08L3N0cm9uZz48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJSaWdodCI+PHN0cm9uZz5bJSBEYXRhLlRvdGFsT3ZlcnRpbWUgfCBodG1sICVdPC9zdHJvbmc+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iUmlnaHQiPjxzdHJvbmc+WyUgRGF0YS5Ub3RhbExlYXZlRGF5IHwgaHRtbCAlXTwvc3Ryb25nPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9IlJpZ2h0Ij48c3Ryb25nPlslIERhdGEuVG90YWxTaWNrIHwgaHRtbCAlXTwvc3Ryb25nPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9IlJpZ2h0Ij48c3Ryb25nPlslIERhdGEuVG90YWxPdmVydGltZVRvdGFsIHwgaHRtbCAlXTwvc3Ryb25nPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9IlJpZ2h0Ij48c3Ryb25nPlslIERhdGEuVG90YWxMZWF2ZURheVJlbWFpbmluZyB8IGh0bWwgJV08L3N0cm9uZz48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgpbJSBSZW5kZXJCbG9ja0VuZCgiVXNlckdyYW5kVG90YWwiKSAlXQogICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+CiAgICAgICAgICAgICAgICA8L3RhYmxlPgogWyUgUmVuZGVyQmxvY2tFbmQoIlVzZXJUYWJsZSIpICVdCgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KCiAgICAgICAgPGRpdiBjbGFzcz0iV2lkZ2V0U2ltcGxlIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iSGVhZGVyIj4KICAgICAgICAgICAgICAgIDxoMj5bJSBUcmFuc2xhdGUoIlByb2plY3QgcmVwb3J0cyIpIHwgaHRtbCAlXQogICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPSJbJSBEYXRhLlByb2plY3RTdGF0dXNMaW5rQ2xhc3MgJV0iIGhyZWY9IlslIEVudigiQmFzZWxpbmsiKSAlXUFjdGlvbj1bJSBFbnYoIkFjdGlvbiIpICVdO1llYXI9WyUgRGF0YS5ZZWFyIHwgdXJpICVdO01vbnRoPVslIERhdGEuTW9udGggfCB1cmkgJV07UHJvamVjdFN0YXR1c1Nob3c9WyUgRGF0YS5Qcm9qZWN0U3RhdHVzU2hvdyB8IHVyaSAlXSI+CiAgICAgICAgICAgICAgICAgICAgICAgIChbJSBUcmFuc2xhdGUoRGF0YS5TaG93UHJvamVjdHMpIHwgaHRtbCAlXSkKICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICA8L2gyPgogICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgIDxkaXYgY2xhc3M9IkNvbnRlbnQgSG9yaXpvbnRhbFNjcm9sbCI+CgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJOb1Byb2plY3REYXRhRm91bmRNc2ciKSAlXQogICAgICAgICAgICAgICAgPGRpdiBpZD0iVGltZUFjY291bnRpbmdFbXB0eU1lc3NhZ2VTbWFsbCI+CiAgICAgICAgICAgICAgICAgICAgWyUgVHJhbnNsYXRlKCJObyBkYXRhIGZvdW5kLiIpIHwgaHRtbCAlXQogICAgICAgICAgICAgICAgPC9kaXY+ClslIFJlbmRlckJsb2NrRW5kKCJOb1Byb2plY3REYXRhRm91bmRNc2ciKSAlXQoKWyUgUmVuZGVyQmxvY2tTdGFydCgiUHJvamVjdFRhYmxlIikgJV0KICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0iRGF0YVRhYmxlIE5vSG92ZXIiPgogICAgICAgICAgICAgICAgICAgIDx0aGVhZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlslIFRyYW5zbGF0ZSgiUHJvamVjdCIpIHwgaHRtbCAlXTwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+WyUgVHJhbnNsYXRlKCJUYXNrIikgfCBodG1sICVdPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5bJSBUcmFuc2xhdGUoIkhvdXJzIChtb250aGx5KSIpIHwgaHRtbCAlXTwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+WyUgVHJhbnNsYXRlKCJIb3VycyAoTGlmZXRpbWUpIikgfCBodG1sICVdPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPgogICAgICAgICAgICAgICAgICAgIDx0Ym9keT4KWyUgUmVuZGVyQmxvY2tTdGFydCgiQWN0aW9uIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgPHRyIGNsYXNzPSJNYXN0ZXJBY3Rpb24iPgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJQcm9qZWN0IikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCByb3dzcGFuPSJbJSBEYXRhLlJvd1NwYW4gJV0iIGNsYXNzPSJSb3dTcGFuIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJbJSBFbnYoIkJhc2VsaW5rIikgJV1BY3Rpb249WyUgRW52KCJBY3Rpb24iKSAlXTtTdWJhY3Rpb249UmVwb3J0aW5nUHJvamVjdDtQcm9qZWN0SUQ9WyUgRGF0YS5Qcm9qZWN0SUQgfCB1cmkgJV0iIGNsYXNzPSJNYXN0ZXJBY3Rpb25MaW5rIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFslIERhdGEuUHJvamVjdCB8IGh0bWwgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Ryb25nPgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJQcm9qZWN0RGVzY3JpcHRpb24iKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJyIC8+WyUgRGF0YS5Qcm9qZWN0RGVzY3JpcHRpb24gfCBodG1sICVdClslIFJlbmRlckJsb2NrRW5kKCJQcm9qZWN0RGVzY3JpcHRpb24iKSAlXQogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgpbJSBSZW5kZXJCbG9ja0VuZCgiUHJvamVjdCIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5bJSBEYXRhLkFjdGlvbiB8IGh0bWwgJV08L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9IlJpZ2h0Ij5bJSBEYXRhLkhvdXJzIHwgaHRtbCAlXTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iUmlnaHQiPlslIERhdGEuSG91cnNUb3RhbCB8IGh0bWwgJV08L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+ClslIFJlbmRlckJsb2NrU3RhcnQoIkFjdGlvblRvdGFsIikgJV0KICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48c3Ryb25nPlslIFRyYW5zbGF0ZSgiVG90YWwiKSB8IGh0bWwgJV08L3N0cm9uZz48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9IlJpZ2h0Ij48c3Ryb25nPlslIERhdGEuSG91cnMgfCBodG1sICVdPC9zdHJvbmc+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJSaWdodCI+PHN0cm9uZz5bJSBEYXRhLkhvdXJzVG90YWwgfCBodG1sICVdPC9zdHJvbmc+PC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgpbJSBSZW5kZXJCbG9ja0VuZCgiQWN0aW9uVG90YWwiKSAlXQpbJSBSZW5kZXJCbG9ja0VuZCgiQWN0aW9uIikgJV0KWyUgUmVuZGVyQmxvY2tTdGFydCgiUHJvamVjdEdyYW5kVG90YWwiKSAlXQogICAgICAgICAgICAgICAgICAgIDx0ciBjbGFzcz0iR3JhbmRUb3RhbCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjb2xzcGFuPSIyIj48c3Ryb25nPlslIFRyYW5zbGF0ZSgiR3JhbmQgdG90YWwiKSB8IGh0bWwgJV08L3N0cm9uZz48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9IlJpZ2h0Ij48c3Ryb25nPlslIERhdGEuVG90YWxIb3VycyB8IGh0bWwgJV08L3N0cm9uZz48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9IlJpZ2h0Ij48c3Ryb25nPlslIERhdGEuVG90YWxIb3Vyc1RvdGFsIHwgaHRtbCAlXTwvc3Ryb25nPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KWyUgUmVuZGVyQmxvY2tFbmQoIlByb2plY3RHcmFuZFRvdGFsIikgJV0KICAgICAgICAgICAgICAgIDwvdGJvZHk+CiAgICAgICAgICAgIDwvdGFibGU+ClslIFJlbmRlckJsb2NrRW5kKCJQcm9qZWN0VGFibGUiKSAlXQoKICAgICAgICA8L2Rpdj4KICAgIDwvZGl2Pgo8L2Rpdj4KPC9kaXY+Cg==</File>
        <File Location="Kernel/Output/HTML/Templates/Standard/AgentTimeAccountingReportingProject.tt" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgo8ZGl2IGNsYXNzPSJNYWluQm94IEFSSUFSb2xlTWFpbiBMYXlvdXRGaXhlZFNpZGViYXIgU2lkZWJhckZpcnN0Ij4KICAgIDxoMSBjbGFzcz0iSGVhZGVyIj5bJSBUcmFuc2xhdGUoIlByb2plY3QgcmVwb3J0IikgfCBodG1sICVdOiBbJSBEYXRhLlByb2plY3QgfCBodG1sICVdPC9oMT4KCiAgICA8ZGl2IGNsYXNzPSJTaWRlYmFyQ29sdW1uIj4KICAgICAgICA8ZGl2IGNsYXNzPSJXaWRnZXRTaW1wbGUiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJIZWFkZXIiPgogICAgICAgICAgICAgICAgPGgyPlslIFRyYW5zbGF0ZSgiQWN0aW9ucyIpIHwgaHRtbCAlXTwvaDI+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJDb250ZW50Ij4KICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0iQWN0aW9uTGlzdCI+CiAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJbJSBFbnYoIkJhc2VsaW5rIikgJV1BY3Rpb249WyUgRW52KCJBY3Rpb24iKSAlXSIgY2xhc3M9IkNhbGxGb3JBY3Rpb24gRnVsbHNpemUgQ2VudGVyIj48c3Bhbj48aSBjbGFzcz0iZmEgZmEtY2FyZXQtbGVmdCI+PC9pPlslIFRyYW5zbGF0ZSgiR28gdG8gcmVwb3J0aW5nIG92ZXJ2aWV3IikgfCBodG1sICVdPC9zcGFuPjwvYT4KICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iV2lkZ2V0U2ltcGxlIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iSGVhZGVyIj4KICAgICAgICAgICAgICAgIDxoMj5bJSBUcmFuc2xhdGUoIkhpbnQiKSB8IGh0bWwgJV08L2gyPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ29udGVudCI+ClslIElGIERhdGEuU2hvd09ubHlBY3RpdmVVc2VycyA9PSAnMScgJV0KICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJGaWVsZEV4cGxhbmF0aW9uIj4KICAgICAgICAgICAgICAgICAgICBbJSBUcmFuc2xhdGUoIkN1cnJlbnRseSBvbmx5IGFjdGl2ZSB1c2VycyBpbiB0aGlzIHByb2plY3QgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOiIpIHwgaHRtbCAlXQogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IlslIEVudigiQmFzZWxpbmsiKSAlXUFjdGlvbj1BZG1pblN5c0NvbmZpZztTdWJhY3Rpb249RWRpdDtTeXNDb25maWdHcm91cD1UaW1lQWNjb3VudGluZztTeXNDb25maWdTdWJHcm91cD1Gcm9udGVuZDo6QWdlbnQ6OlRpbWVBY2NvdXRuaW5nOjpWaWV3UmVwb3J0aW5nUHJvamVjdCI+U2hvd09ubHlBY3RpdmVVc2VyczwvYT4KICAgICAgICAgICAgICAgIDwvcD4KWyUgRUxTRSAlXQogICAgICAgICAgICAgICAgPHAgY2xhc3M9IkZpZWxkRXhwbGFuYXRpb24iPgogICAgICAgICAgICAgICAgICAgIFslIFRyYW5zbGF0ZSgiQ3VycmVudGx5IGFsbCB0aW1lIGFjY291bnRpbmcgdXNlcnMgYXJlIHNob3duLiBUbyBjaGFuZ2UgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHVwZGF0ZSBzZXR0aW5nOiIpIHwgaHRtbCAlXQogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IlslIEVudigiQmFzZWxpbmsiKSAlXUFjdGlvbj1BZG1pblN5c0NvbmZpZztTdWJhY3Rpb249RWRpdDtTeXNDb25maWdHcm91cD1UaW1lQWNjb3VudGluZztTeXNDb25maWdTdWJHcm91cD1Gcm9udGVuZDo6QWdlbnQ6OlRpbWVBY2NvdXRuaW5nOjpWaWV3UmVwb3J0aW5nUHJvamVjdCI+U2hvd09ubHlBY3RpdmVVc2VyczwvYT4KICAgICAgICAgICAgICAgIDwvcD4KWyUgRU5EICVdCiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0iQ29udGVudENvbHVtbiI+CiAgICAgICAgPGRpdiBjbGFzcz0iV2lkZ2V0U2ltcGxlIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iSGVhZGVyIj4KICAgICAgICAgICAgICAgIDxoMj5bJSBUcmFuc2xhdGUoIlByb2plY3QgcmVwb3J0IikgfCBodG1sICVdOiBbJSBEYXRhLlByb2plY3QgfCBodG1sICVdPC9oMj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9IkNvbnRlbnQiPgoKWyUgUmVuZGVyQmxvY2tTdGFydCgiTm9Vc2VyRGF0YUZvdW5kTXNnIikgJV0KICAgICAgICAgICAgICAgIDxkaXYgaWQ9IlRpbWVBY2NvdW50aW5nRW1wdHlNZXNzYWdlU21hbGwiPgogICAgICAgICAgICAgICAgICAgIFslIFRyYW5zbGF0ZSgiTm8gZGF0YSBmb3VuZC4iKSB8IGh0bWwgJV0KICAgICAgICAgICAgICAgIDwvZGl2PgpbJSBSZW5kZXJCbG9ja0VuZCgiTm9Vc2VyRGF0YUZvdW5kTXNnIikgJV0KClslIFJlbmRlckJsb2NrU3RhcnQoIlVzZXJUYWJsZSIpICVdCiAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9IkRhdGFUYWJsZSBEYXRhVGFibGVOb0hpZ2hsaWdodCI+CiAgICAgICAgICAgICAgICAgICAgPHRoZWFkPgogICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+WyUgVHJhbnNsYXRlKCJUYXNrIikgfCBodG1sICVdPC90aD4KWyUgUmVuZGVyQmxvY2tTdGFydCgiVXNlck5hbWUiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlslIERhdGEuVXNlciB8IGh0bWwgJV08L3RoPgpbJSBSZW5kZXJCbG9ja0VuZCgiVXNlck5hbWUiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlslIFRyYW5zbGF0ZSgiVG90YWwiKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+CiAgICAgICAgICAgICAgICAgICAgPHRib2R5PgogICAgICAgICAgICAgICAgICAgICAgICA8dHI+ClslIFJlbmRlckJsb2NrU3RhcnQoIkFjdGlvbiIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+WyUgRGF0YS5BY3Rpb24gfCBodG1sICVdPC90ZD4KWyUgUmVuZGVyQmxvY2tTdGFydCgiVXNlciIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9IlJpZ2h0Ij5bJSBEYXRhLkhvdXJzIHwgaHRtbCAlXTwvdGQ+ClslIFJlbmRlckJsb2NrRW5kKCJVc2VyIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KWyUgUmVuZGVyQmxvY2tFbmQoIkFjdGlvbiIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBjbGFzcz0iR3JhbmRUb3RhbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHN0cm9uZz5bJSBUcmFuc2xhdGUoIlRvdGFsIikgfCBodG1sICVdPC9zdHJvbmc+PC90ZD4KWyUgUmVuZGVyQmxvY2tTdGFydCgiVXNlclRvdGFsIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iUmlnaHQiPjxzdHJvbmc+WyUgRGF0YS5Ub3RhbCB8IGh0bWwgJV08L3N0cm9uZz48L3RkPgpbJSBSZW5kZXJCbG9ja0VuZCgiVXNlclRvdGFsIikgJV0KWyUgUmVuZGVyQmxvY2tTdGFydCgiVXNlclRvdGFsQWxsIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iUmlnaHQiPjxzdHJvbmc+WyUgRGF0YS5Ub3RhbEFsbCB8IGh0bWwgJV08L3N0cm9uZz48L3RkPgpbJSBSZW5kZXJCbG9ja0VuZCgiVXNlclRvdGFsQWxsIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PgogICAgICAgICAgICAgICAgPC90YWJsZT4KIFslIFJlbmRlckJsb2NrRW5kKCJVc2VyVGFibGUiKSAlXQoKICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CgogICAgICAgIDxkaXYgY2xhc3M9IldpZGdldFNpbXBsZSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9IkhlYWRlciI+CiAgICAgICAgICAgICAgICA8aDI+WyUgVHJhbnNsYXRlKCJIaXN0b3J5IikgfCBodG1sICVdOiBbJSBEYXRhLlByb2plY3QgfCBodG1sICVdPC9oMj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9IkNvbnRlbnQiPgoKWyUgUmVuZGVyQmxvY2tTdGFydCgiTm9Qcm9qZWN0RGF0YUZvdW5kTXNnIikgJV0KICAgICAgICAgICAgICAgIDxkaXYgaWQ9IlRpbWVBY2NvdW50aW5nRW1wdHlNZXNzYWdlU21hbGwiPgogICAgICAgICAgICAgICAgICAgIFslIFRyYW5zbGF0ZSgiTm8gZGF0YSBmb3VuZC4iKSB8IGh0bWwgJV0KICAgICAgICAgICAgICAgIDwvZGl2PgpbJSBSZW5kZXJCbG9ja0VuZCgiTm9Qcm9qZWN0RGF0YUZvdW5kTXNnIikgJV0KClslIFJlbmRlckJsb2NrU3RhcnQoIlByb2plY3RUYWJsZSIpICVdCiAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9IkRhdGFUYWJsZSBEYXRhVGFibGVOb0hpZ2hsaWdodCI+CiAgICAgICAgICAgICAgICAgICAgPHRoZWFkPgogICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+WyUgVHJhbnNsYXRlKCJEYXRlIikgfCBodG1sICVdPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5bJSBUcmFuc2xhdGUoIlVzZXIiKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlslIFRyYW5zbGF0ZSgiVGFzayIpIHwgaHRtbCAlXTwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+WyUgVHJhbnNsYXRlKCJSZW1hcmsiKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlslIFRyYW5zbGF0ZSgiUGVyaW9kIikgfCBodG1sICVdPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPgogICAgICAgICAgICAgICAgICAgIDx0Ym9keT4KWyUgUmVuZGVyQmxvY2tTdGFydCgiUm93IikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlslIERhdGEuRGF0ZSB8IGh0bWwgJV08L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlslIERhdGEuVXNlciB8IGh0bWwgJV08L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlslIERhdGEuQWN0aW9uIHwgaHRtbCAlXTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+WyUgRGF0YS5SZW1hcmsgfCBodG1sICVdPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iUmlnaHQiPlslIERhdGEuUGVyaW9kIHwgaHRtbCAlXTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+ClslIFJlbmRlckJsb2NrRW5kKCJSb3ciKSAlXQogICAgICAgICAgICAgICAgICAgICAgICA8dHIgY2xhc3M9IkdyYW5kVG90YWwiPgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJIaXN0b3J5VG90YWwiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNvbHNwYW49IjQiPjxzdHJvbmc+WyUgVHJhbnNsYXRlKCJUb3RhbCIpIHwgaHRtbCAlXTwvc3Ryb25nPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9IlJpZ2h0Ij48c3Ryb25nPlslIERhdGEuSGlzdG9yeVRvdGFsIHwgaHRtbCAlXTwvc3Ryb25nPjwvdGQ+ClslIFJlbmRlckJsb2NrRW5kKCJIaXN0b3J5VG90YWwiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+CiAgICAgICAgICAgICAgICA8L3RhYmxlPgpbJSBSZW5kZXJCbG9ja0VuZCgiUHJvamVjdFRhYmxlIikgJV0KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KPC9kaXY+Cg==</File>
        <File Location="Kernel/Output/HTML/Templates/Standard/AgentTimeAccountingReportingTicket.tt" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgo8ZGl2IGNsYXNzPSJNYWluQm94IEFSSUFSb2xlTWFpbiBMYXlvdXRGaXhlZFNpZGViYXIgU2lkZWJhckZpcnN0Ij4KICAgIDxoMSBjbGFzcz0iSGVhZGVyIj5bJSBUcmFuc2xhdGUoIlRpY2tldCByZXBvcnQiKSB8IGh0bWwgJV06IFslIERhdGEuVGlja2V0TnVtYmVyIHwgaHRtbCAlXTwvaDE+CgogICAgPGRpdiBjbGFzcz0iU2lkZWJhckNvbHVtbiI+CiAgICAgICAgPGRpdiBjbGFzcz0iV2lkZ2V0U2ltcGxlIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iSGVhZGVyIj4KICAgICAgICAgICAgICAgIDxoMj5bJSBUcmFuc2xhdGUoIkFjdGlvbnMiKSB8IGh0bWwgJV08L2gyPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ29udGVudCI+CiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9IkFjdGlvbkxpc3QiPgogICAgICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iWyUgRW52KCJCYXNlbGluayIpICVdQWN0aW9uPUFnZW50VGlja2V0Wm9vbTtUaWNrZXRJRD1bJSBEYXRhLlRpY2tldElEIHwgaHRtbCAlXSIgY2xhc3M9IkNhbGxGb3JBY3Rpb24gRnVsbHNpemUgQ2VudGVyIj48c3Bhbj48aSBjbGFzcz0iZmEgZmEtY2FyZXQtbGVmdCI+PC9pPlslIFRyYW5zbGF0ZSgiR28gdG8gdGlja2V0IikgfCBodG1sICVdPC9zcGFuPjwvYT4KICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KCiAgICA8ZGl2IGNsYXNzPSJDb250ZW50Q29sdW1uIj4KICAgICAgICA8ZGl2IGNsYXNzPSJXaWRnZXRTaW1wbGUiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJIZWFkZXIiPgogICAgICAgICAgICAgICAgPGgyPlslIFRyYW5zbGF0ZSgiUHJvamVjdCByZXBvcnQiKSB8IGh0bWwgJV06IFslIERhdGEuUHJvamVjdCB8IGh0bWwgJV08L2gyPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ29udGVudCI+CgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJOb1VzZXJEYXRhRm91bmRNc2ciKSAlXQogICAgICAgICAgICAgICAgPGRpdiBpZD0iVGltZUFjY291bnRpbmdFbXB0eU1lc3NhZ2VTbWFsbCI+CiAgICAgICAgICAgICAgICAgICAgWyUgVHJhbnNsYXRlKCJObyBkYXRhIGZvdW5kLiIpIHwgaHRtbCAlXQogICAgICAgICAgICAgICAgPC9kaXY+ClslIFJlbmRlckJsb2NrRW5kKCJOb1VzZXJEYXRhRm91bmRNc2ciKSAlXQoKWyUgUmVuZGVyQmxvY2tTdGFydCgiVXNlclRhYmxlIikgJV0KICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0iRGF0YVRhYmxlIERhdGFUYWJsZU5vSGlnaGxpZ2h0Ij4KICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5bJSBUcmFuc2xhdGUoIlRhc2siKSB8IGh0bWwgJV08L3RoPgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJVc2VyTmFtZSIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+WyUgRGF0YS5Vc2VyIHwgaHRtbCAlXTwvdGg+ClslIFJlbmRlckJsb2NrRW5kKCJVc2VyTmFtZSIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+WyUgVHJhbnNsYXRlKCJUb3RhbCIpIHwgaHRtbCAlXTwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgPC90aGVhZD4KICAgICAgICAgICAgICAgICAgICA8dGJvZHk+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KWyUgUmVuZGVyQmxvY2tTdGFydCgiQWN0aW9uIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5bJSBEYXRhLkFjdGlvbiB8IGh0bWwgJV08L3RkPgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJVc2VyIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iUmlnaHQiPlslIERhdGEuSG91cnMgfCBodG1sICVdPC90ZD4KWyUgUmVuZGVyQmxvY2tFbmQoIlVzZXIiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgpbJSBSZW5kZXJCbG9ja0VuZCgiQWN0aW9uIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgPHRyIGNsYXNzPSJHcmFuZFRvdGFsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48c3Ryb25nPlslIFRyYW5zbGF0ZSgiVG90YWwiKSB8IGh0bWwgJV08L3N0cm9uZz48L3RkPgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJVc2VyVG90YWwiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJSaWdodCI+PHN0cm9uZz5bJSBEYXRhLlRvdGFsIHwgaHRtbCAlXTwvc3Ryb25nPjwvdGQ+ClslIFJlbmRlckJsb2NrRW5kKCJVc2VyVG90YWwiKSAlXQpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJVc2VyVG90YWxBbGwiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJSaWdodCI+PHN0cm9uZz5bJSBEYXRhLlRvdGFsQWxsIHwgaHRtbCAlXTwvc3Ryb25nPjwvdGQ+ClslIFJlbmRlckJsb2NrRW5kKCJVc2VyVG90YWxBbGwiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+CiAgICAgICAgICAgICAgICA8L3RhYmxlPgogWyUgUmVuZGVyQmxvY2tFbmQoIlVzZXJUYWJsZSIpICVdCgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KCiAgICAgICAgPGRpdiBjbGFzcz0iV2lkZ2V0U2ltcGxlIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iSGVhZGVyIj4KICAgICAgICAgICAgICAgIDxoMj5bJSBUcmFuc2xhdGUoIkhpc3RvcnkiKSB8IGh0bWwgJV06IFslIERhdGEuUHJvamVjdCB8IGh0bWwgJV08L2gyPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ29udGVudCI+CgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJOb1Byb2plY3REYXRhRm91bmRNc2ciKSAlXQogICAgICAgICAgICAgICAgPGRpdiBpZD0iVGltZUFjY291bnRpbmdFbXB0eU1lc3NhZ2VTbWFsbCI+CiAgICAgICAgICAgICAgICAgICAgWyUgVHJhbnNsYXRlKCJObyBkYXRhIGZvdW5kLiIpIHwgaHRtbCAlXQogICAgICAgICAgICAgICAgPC9kaXY+ClslIFJlbmRlckJsb2NrRW5kKCJOb1Byb2plY3REYXRhRm91bmRNc2ciKSAlXQoKWyUgUmVuZGVyQmxvY2tTdGFydCgiUHJvamVjdFRhYmxlIikgJV0KICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0iRGF0YVRhYmxlIERhdGFUYWJsZU5vSGlnaGxpZ2h0Ij4KICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5bJSBUcmFuc2xhdGUoIkRhdGUiKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlslIFRyYW5zbGF0ZSgiVXNlciIpIHwgaHRtbCAlXTwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+WyUgVHJhbnNsYXRlKCJUYXNrIikgfCBodG1sICVdPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5bJSBUcmFuc2xhdGUoIlJlbWFyayIpIHwgaHRtbCAlXTwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+WyUgVHJhbnNsYXRlKCJQZXJpb2QiKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+CiAgICAgICAgICAgICAgICAgICAgPHRib2R5PgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJSb3ciKSAlXQogICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+WyUgRGF0YS5EYXRlIHwgaHRtbCAlXTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+WyUgRGF0YS5Vc2VyIHwgaHRtbCAlXTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+WyUgRGF0YS5BY3Rpb24gfCBodG1sICVdPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5bJSBEYXRhLlJlbWFyayB8IGh0bWwgJV08L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJSaWdodCI+WyUgRGF0YS5QZXJpb2QgfCBodG1sICVdPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KWyUgUmVuZGVyQmxvY2tFbmQoIlJvdyIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBjbGFzcz0iR3JhbmRUb3RhbCI+ClslIFJlbmRlckJsb2NrU3RhcnQoIkhpc3RvcnlUb3RhbCIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY29sc3Bhbj0iNCI+PHN0cm9uZz5bJSBUcmFuc2xhdGUoIlRvdGFsIikgfCBodG1sICVdPC9zdHJvbmc+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iUmlnaHQiPjxzdHJvbmc+WyUgRGF0YS5IaXN0b3J5VG90YWwgfCBodG1sICVdPC9zdHJvbmc+PC90ZD4KWyUgUmVuZGVyQmxvY2tFbmQoIkhpc3RvcnlUb3RhbCIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT4KICAgICAgICAgICAgICAgIDwvdGFibGU+ClslIFJlbmRlckJsb2NrRW5kKCJQcm9qZWN0VGFibGUiKSAlXQogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2Pgo8L2Rpdj4K</File>
        <File Location="Kernel/Output/HTML/Templates/Standard/AgentTimeAccountingSetting.tt" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJPdmVydmlld1Byb2plY3QiKSAlXQo8ZGl2IGNsYXNzPSJNYWluQm94IEFSSUFSb2xlTWFpbiBMYXlvdXRGaXhlZFNpZGViYXIgU2lkZWJhckZpcnN0Ij4KICAgIDxoMSBjbGFzcz0iSGVhZGVyIj5bJSBUcmFuc2xhdGUoIkVkaXQgVGltZSBBY2NvdW50aW5nIFByb2plY3QgU2V0dGluZ3MiKSB8IGh0bWwgJV08L2gxPgoKICAgIDxkaXYgY2xhc3M9IlNpZGViYXJDb2x1bW4iPgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJBY3Rpb25MaXN0UHJvamVjdCIpICVdCiAgICAgICAgPGRpdiBjbGFzcz0iV2lkZ2V0U2ltcGxlIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iSGVhZGVyIj4KICAgICAgICAgICAgICAgIDxoMj5bJSBUcmFuc2xhdGUoIkFjdGlvbnMiKSB8IGh0bWwgJV08L2gyPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ29udGVudCI+CiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9IkFjdGlvbkxpc3QiPgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJBY3Rpb25BZGRQcm9qZWN0IikgJV0KICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgIDxmb3JtIGFjdGlvbj0iWyUgRW52KCJDR0lIYW5kbGUiKSAlXSIgbWV0aG9kPSJwb3N0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IkFjdGlvbiIgdmFsdWU9IlslIEVudigiQWN0aW9uIikgJV0iLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IlN1YmFjdGlvbiIgdmFsdWU9IkFkZFByb2plY3QiLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9IkNhbGxGb3JBY3Rpb24gRnVsbHNpemUgQ2VudGVyIiB0eXBlPSJzdWJtaXQiIHZhbHVlPSJbJSBUcmFuc2xhdGUoIkFkZCIpIHwgaHRtbCAlXSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+PGkgY2xhc3M9ImZhIGZhLXBsdXMtc3F1YXJlIj48L2k+WyUgVHJhbnNsYXRlKCJBZGQgcHJvamVjdCIpIHwgaHRtbCAlXTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Zvcm0+CiAgICAgICAgICAgICAgICAgICAgPC9saT4KWyUgUmVuZGVyQmxvY2tFbmQoIkFjdGlvbkFkZFByb2plY3QiKSAlXQoKWyUgUmVuZGVyQmxvY2tTdGFydCgiQWN0aW9uU2V0dGluZ092ZXJ2aWV3IikgJV0KICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IlslIEVudigiQmFzZWxpbmsiKSAlXUFjdGlvbj1bJSBFbnYoIkFjdGlvbiIpICVdIiBjbGFzcz0iQ2FsbEZvckFjdGlvbiBGdWxsc2l6ZSBDZW50ZXIiPjxzcGFuPjxpIGNsYXNzPSJmYSBmYS1jYXJldC1sZWZ0Ij48L2k+WyUgVHJhbnNsYXRlKCJHbyB0byBzZXR0aW5ncyBvdmVydmlldyIpIHwgaHRtbCAlXTwvc3Bhbj48L2E+CiAgICAgICAgICAgICAgICAgICAgPC9saT4KWyUgUmVuZGVyQmxvY2tFbmQoIkFjdGlvblNldHRpbmdPdmVydmlldyIpICVdCiAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KWyUgUmVuZGVyQmxvY2tFbmQoIkFjdGlvbkxpc3RQcm9qZWN0IikgJV0KICAgIDwvZGl2PgoKICAgIDxkaXYgY2xhc3M9IkNvbnRlbnRDb2x1bW4iPgoKWyUgUmVuZGVyQmxvY2tTdGFydCgiT3ZlcnZpZXdVcGRhdGVQcm9qZWN0IikgJV0KICAgICAgICA8ZGl2IGNsYXNzPSJXaWRnZXRTaW1wbGUiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJIZWFkZXIiPgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJIZWFkZXJBZGRQcm9qZWN0IikgJV0KICAgICAgICAgICAgICAgIDxoMj5bJSBUcmFuc2xhdGUoIkFkZCBQcm9qZWN0IikgfCBodG1sICVdPC9oMj4KWyUgUmVuZGVyQmxvY2tFbmQoIkhlYWRlckFkZFByb2plY3QiKSAlXQpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJIZWFkZXJFZGl0UHJvamVjdCIpICVdCiAgICAgICAgICAgICAgICA8aDI+WyUgVHJhbnNsYXRlKCJFZGl0IFByb2plY3QgU2V0dGluZ3MiKSB8IGh0bWwgJV08L2gyPgpbJSBSZW5kZXJCbG9ja0VuZCgiSGVhZGVyRWRpdFByb2plY3QiKSAlXQogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ29udGVudCI+CiAgICAgICAgICAgICAgICA8Zm9ybSBhY3Rpb249IlslIEVudigiQ0dJSGFuZGxlIikgJV0iIG1ldGhvZD0icG9zdCIgbmFtZT0iUHJvamVjdFVwZGF0ZSIgY2xhc3M9IlZhbGlkYXRlIFByZXZlbnRNdWx0aXBsZVN1Ym1pdHMiPgogICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IkFjdGlvbiIgdmFsdWU9IlslIEVudigiQWN0aW9uIikgJV0iPgogICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IlN1YmFjdGlvbiIgdmFsdWU9IlslIERhdGEuQWN0aW9uIHwgaHRtbCAlXUFjdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iSUQiIHZhbHVlPSJbJSBEYXRhLklEIHwgaHRtbCAlXSIvPgogICAgICAgICAgICAgICAgICAgIDxmaWVsZHNldCBjbGFzcz0iVGFibGVMaWtlIj4KCiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz0iTWFuZGF0b3J5IiBmb3I9IlByb2plY3QiPjxzcGFuIGNsYXNzPSJNYXJrZXIiPio8L3NwYW4+IFslIFRyYW5zbGF0ZSgiTmFtZSIpIHwgaHRtbCAlXTo8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJGaWVsZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iUHJvamVjdCIgaWQ9IlByb2plY3QiIHZhbHVlPSJbJSBEYXRhLlByb2plY3QgfCBodG1sICVdIiBjbGFzcz0iVzUwcGMgVmFsaWRhdGVfUmVxdWlyZWQgWyUgRGF0YS5Qcm9qZWN0SW52YWxpZCB8IGh0bWwgJV0iIG1heGxlbmd0aD0iNTAiLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IlByb2plY3RFcnJvciIgY2xhc3M9IlRvb2x0aXBFcnJvck1lc3NhZ2UiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlslIFRyYW5zbGF0ZSgiVGhpcyBmaWVsZCBpcyByZXF1aXJlZC4iKSB8IGh0bWwgJV08L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KClslIFJlbmRlckJsb2NrU3RhcnQoIlByb2plY3RNaXNzaW5nVmFsdWUiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iUHJvamVjdFNlcnZlckVycm9yIiBjbGFzcz0iVG9vbHRpcEVycm9yTWVzc2FnZSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+WyUgVHJhbnNsYXRlKCJUaGlzIGZpZWxkIGlzIHJlcXVpcmVkLiIpIHwgaHRtbCAlXTwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgpbJSBSZW5kZXJCbG9ja0VuZCgiUHJvamVjdE1pc3NpbmdWYWx1ZSIpICVdCgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJQcm9qZWN0RHVwbGljYXRlTmFtZSIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJQcm9qZWN0U2VydmVyRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5bJSBUcmFuc2xhdGUoIlRoZXJlIGlzIGFscmVhZHkgYSBwcm9qZWN0IHdpdGggdGhpcyBuYW1lLiBQbGVhc2UsIGNob29zZSBhIGRpZmZlcmVudCBvbmUuIikgfCBodG1sICVdPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+ClslIFJlbmRlckJsb2NrRW5kKCJQcm9qZWN0RHVwbGljYXRlTmFtZSIpICVdCgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ2xlYXIiPjwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0iUHJvamVjdERlc2NyaXB0aW9uIj5bJSBUcmFuc2xhdGUoIkRlc2NyaXB0aW9uIikgfCBodG1sICVdOjwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IkZpZWxkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJQcm9qZWN0RGVzY3JpcHRpb24iIGlkPSJQcm9qZWN0RGVzY3JpcHRpb24iIHZhbHVlPSJbJSBEYXRhLlByb2plY3REZXNjcmlwdGlvbiB8IGh0bWwgJV0iIGNsYXNzPSJXNTBwYyIgbWF4bGVuZ3RoPSIxNTAiLz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IkNsZWFyIj48L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9IlByb2plY3RTdGF0dXMiPlslIFRyYW5zbGF0ZSgiU3RhdHVzIikgfCBodG1sICVdOjwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IkZpZWxkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFslIERhdGEuU3RhdHVzT3B0aW9uICVdCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJDbGVhciI+PC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJGaWVsZCBTcGFjaW5nVG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9IlByaW1hcnkgQ2FsbEZvckFjdGlvbiIgdHlwZT0ic3VibWl0IiBpZD0iU3VibWl0IiB2YWx1ZT0iWyUgVHJhbnNsYXRlKCJTdWJtaXQiKSB8IGh0bWwgJV0iPjxzcGFuPjxpIGNsYXNzPSJmYSBmYS1jaGVjay1zcXVhcmUtbyI+PC9pPiBbJSBUcmFuc2xhdGUoIlN1Ym1pdCIpIHwgaHRtbCAlXTwvc3Bhbj48L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFslIFRyYW5zbGF0ZSgib3IiKSB8IGh0bWwgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IlslIEVudigiQmFzZWxpbmsiKSAlXUFjdGlvbj1bJSBFbnYoIkFjdGlvbiIpICVdIj5bJSBUcmFuc2xhdGUoIkNhbmNlbCIpIHwgaHRtbCAlXTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IkNsZWFyIj48L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8L2ZpZWxkc2V0PgogICAgICAgICAgICAgICAgPC9mb3JtPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KWyUgUmVuZGVyQmxvY2tFbmQoIk92ZXJ2aWV3VXBkYXRlUHJvamVjdCIpICVdCiAgICA8L2Rpdj4KPC9kaXY+ClslIFJlbmRlckJsb2NrRW5kKCJPdmVydmlld1Byb2plY3QiKSAlXQoKWyUgUmVuZGVyQmxvY2tTdGFydCgiU2V0dGluZyIpICVdCjxkaXYgY2xhc3M9Ik1haW5Cb3ggQVJJQVJvbGVNYWluIExheW91dEZpeGVkU2lkZWJhciBTaWRlYmFyRmlyc3QiPgogICAgPGgxIGNsYXNzPSJIZWFkZXIiPlslIFRyYW5zbGF0ZSgiRWRpdCBUaW1lIEFjY291bnRpbmcgU2V0dGluZ3MiKSB8IGh0bWwgJV08L2gxPgoKICAgIDxkaXYgY2xhc3M9IlNpZGViYXJDb2x1bW4iPgoKWyUgUmVuZGVyQmxvY2tTdGFydCgiQWN0aW9uTGlzdFNldHRpbmciKSAlXQogICAgICAgIDxkaXYgY2xhc3M9IldpZGdldFNpbXBsZSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9IkhlYWRlciI+CiAgICAgICAgICAgICAgICA8aDI+WyUgVHJhbnNsYXRlKCJBY3Rpb25zIikgfCBodG1sICVdPC9oMj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9IkNvbnRlbnQiPgogICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJBY3Rpb25MaXN0Ij4KWyUgUmVuZGVyQmxvY2tTdGFydCgiQWN0aW9uQWRkUHJvamVjdCIpICVdCiAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICA8Zm9ybSBhY3Rpb249IlslIEVudigiQ0dJSGFuZGxlIikgJV0iIG1ldGhvZD0icG9zdCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJBY3Rpb24iIHZhbHVlPSJbJSBFbnYoIkFjdGlvbiIpICVdIi8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJTdWJhY3Rpb24iIHZhbHVlPSJBZGRQcm9qZWN0Ii8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJDYWxsRm9yQWN0aW9uIEZ1bGxzaXplIENlbnRlciIgdHlwZT0ic3VibWl0IiB2YWx1ZT0iWyUgVHJhbnNsYXRlKCJBZGQiKSB8IGh0bWwgJV0iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPjxpIGNsYXNzPSJmYSBmYS1wbHVzLXNxdWFyZSI+PC9pPlslIFRyYW5zbGF0ZSgiQWRkIHByb2plY3QiKSB8IGh0bWwgJV08L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9mb3JtPgogICAgICAgICAgICAgICAgICAgIDwvbGk+ClslIFJlbmRlckJsb2NrRW5kKCJBY3Rpb25BZGRQcm9qZWN0IikgJV0KWyUgUmVuZGVyQmxvY2tTdGFydCgiQWN0aW9uQWRkVGFzayIpICVdCiAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICA8Zm9ybSBhY3Rpb249IlslIEVudigiQ0dJSGFuZGxlIikgJV0iIG1ldGhvZD0icG9zdCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJBY3Rpb24iIHZhbHVlPSJbJSBFbnYoIkFjdGlvbiIpICVdIi8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJTdWJhY3Rpb24iIHZhbHVlPSJBZGRUYXNrIi8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJDYWxsRm9yQWN0aW9uIEZ1bGxzaXplIENlbnRlciIgdHlwZT0ic3VibWl0IiB2YWx1ZT0iWyUgVHJhbnNsYXRlKCJBZGQgdGFzayIpIHwgaHRtbCAlXSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+PGkgY2xhc3M9ImZhIGZhLXBsdXMtc3F1YXJlIj48L2k+WyUgVHJhbnNsYXRlKCJBZGQgdGFzayIpIHwgaHRtbCAlXTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Zvcm0+CiAgICAgICAgICAgICAgICAgICAgPC9saT4KWyUgUmVuZGVyQmxvY2tFbmQoIkFjdGlvbkFkZFRhc2siKSAlXQpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJBY3Rpb25BZGRVc2VyIikgJV0KICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgIDxmb3JtIGFjdGlvbj0iWyUgRW52KCJDR0lIYW5kbGUiKSAlXSIgbWV0aG9kPSJwb3N0IiBpZD0iQWN0aW9uQWRkVXNlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJBY3Rpb24iIHZhbHVlPSJbJSBFbnYoIkFjdGlvbiIpICVdIi8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJTdWJhY3Rpb24iIHZhbHVlPSJBZGRVc2VyIi8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbJSBEYXRhLk5ld1VzZXJPcHRpb24gJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJGaWVsZEV4cGxhbmF0aW9uIj5bJSBUcmFuc2xhdGUoIkFkZCBhIHVzZXIgdG8gdGltZSBhY2NvdW50aW5nLiIpIHwgaHRtbCAlXTwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9mb3JtPgogICAgICAgICAgICAgICAgICAgIDwvbGk+ClslIFJlbmRlckJsb2NrRW5kKCJBY3Rpb25BZGRVc2VyIikgJV0KWyUgUmVuZGVyQmxvY2tTdGFydCgiQWN0aW9uT3ZlcnZpZXdTZXR0aW5nIikgJV0KICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IlslIEVudigiQmFzZWxpbmsiKSAlXUFjdGlvbj1bJSBFbnYoIkFjdGlvbiIpICVdIiBjbGFzcz0iQ2FsbEZvckFjdGlvbiBGdWxsc2l6ZSBDZW50ZXIiPjxzcGFuPjxpIGNsYXNzPSJmYSBmYS1jYXJldC1sZWZ0Ij48L2k+WyUgVHJhbnNsYXRlKCJHbyB0byBzZXR0aW5ncyBvdmVydmlldyIpIHwgaHRtbCAlXTwvc3Bhbj48L2E+CiAgICAgICAgICAgICAgICAgICAgPC9saT4KWyUgUmVuZGVyQmxvY2tFbmQoIkFjdGlvbk92ZXJ2aWV3U2V0dGluZyIpICVdCgogICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+ClslIFJlbmRlckJsb2NrRW5kKCJBY3Rpb25MaXN0U2V0dGluZyIpICVdCgogICAgWyUgSUYgIUVudigiU3ViYWN0aW9uIikgJV0KICAgICAgICA8ZGl2IGNsYXNzPSJXaWRnZXRTaW1wbGUiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJIZWFkZXIiPgogICAgICAgICAgICAgICAgPGgyPlslIFRyYW5zbGF0ZSgiRmlsdGVyIikgfCBodG1sICVdPC9oMj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9IkNvbnRlbnQiPgogICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIGNsYXNzPSJGaWx0ZXJCb3giIHBsYWNlaG9sZGVyPSJbJSBUcmFuc2xhdGUoIkp1c3Qgc3RhcnQgdHlwaW5nIHRvIGZpbHRlci4uLiIpIHwgaHRtbCAlXSIgdmFsdWU9IiIgdGl0bGU9IlslIFRyYW5zbGF0ZSgiRmlsdGVyIGZvciBwcm9qZWN0cywgdGFza3Mgb3IgdXNlcnMiKSB8IGh0bWwgJV0iIC8+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgWyUgRU5EICVdCgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJSZWZlcmVuY2UiKSAlXQogICAgICAgIDxkaXYgY2xhc3M9IldpZGdldFNpbXBsZSBTcGFjaW5nVG9wIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iSGVhZGVyIj4KICAgICAgICAgICAgICAgIDxoMj5bJSBUcmFuc2xhdGUoIlJlZmVyZW5jZSIpIHwgaHRtbCAlXTwvaDI+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJDb250ZW50Ij4KICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJGaWVsZEV4cGxhbmF0aW9uIj4KICAgICAgICAgICAgICAgICAgICBbJSBUcmFuc2xhdGUoIlJlcXVpcmVkIGZpZWxkcyBhcmUgbWFya2VkIHdpdGggYSBcIipcIi4iKSB8IGh0bWwgJV0KICAgICAgICAgICAgICAgIDwvcD4KICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJGaWVsZEV4cGxhbmF0aW9uIj4KICAgICAgICAgICAgICAgICAgICBbJSBUcmFuc2xhdGUoIlRpbWUgcGVyaW9kcyBjYW4gbm90IGJlIGRlbGV0ZWQuIikgfCBodG1sICVdCiAgICAgICAgICAgICAgICA8L3A+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgpbJSBSZW5kZXJCbG9ja0VuZCgiUmVmZXJlbmNlIikgJV0KCiAgICA8L2Rpdj4KCiAgICA8ZGl2IGNsYXNzPSJDb250ZW50Q29sdW1uIj4KWyUgUmVuZGVyQmxvY2tTdGFydCgiT3ZlcnZpZXdSZXN1bHRQcm9qZWN0IikgJV0KICAgICAgICA8ZGl2IGNsYXNzPSJXaWRnZXRTaW1wbGUiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJIZWFkZXIiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iV2lkZ2V0QWN0aW9uIFRvZ2dsZSI+PGEgaHJlZj0iIyIgdGl0bGU9IlslIFRyYW5zbGF0ZSgiU2hvdyBvciBoaWRlIHRoZSBjb250ZW50IikgfCBodG1sICVdIj48aSBjbGFzcz0iZmEgZmEtY2FyZXQtcmlnaHQiPjwvaT48aSBjbGFzcz0iZmEgZmEtY2FyZXQtZG93biI+PC9pPjwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxoMj5bJSBUcmFuc2xhdGUoIlByb2plY3QgTGlzdCIpIHwgaHRtbCAlXTwvaDI+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJDb250ZW50Ij4KClslIFJlbmRlckJsb2NrU3RhcnQoIk5vUHJvamVjdERhdGFGb3VuZE1zZyIpICVdCiAgICAgICAgICAgICAgICA8ZGl2IGlkPSJUaW1lQWNjb3VudGluZ0VtcHR5TWVzc2FnZVNtYWxsIj4KICAgICAgICAgICAgICAgICAgICBbJSBUcmFuc2xhdGUoIk5vIGRhdGEgZm91bmQuIikgfCBodG1sICVdCiAgICAgICAgICAgICAgICA8L2Rpdj4KWyUgUmVuZGVyQmxvY2tFbmQoIk5vUHJvamVjdERhdGFGb3VuZE1zZyIpICVdCgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJPdmVydmlld1Jlc3VsdFByb2plY3RUYWJsZSIpICVdCiAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9IkRhdGFUYWJsZSIgaWQ9IlByb2plY3RzIj4KICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz0iVzMzcGMiPlslIFRyYW5zbGF0ZSgiUHJvamVjdCIpIHwgaHRtbCAlXTwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggY2xhc3M9IlczM3BjIj5bJSBUcmFuc2xhdGUoIkNvbW1lbnQiKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlslIFRyYW5zbGF0ZSgiU3RhdHVzIikgfCBodG1sICVdPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPgogICAgICAgICAgICAgICAgICAgIDx0Ym9keT4KICAgICAgICAgICAgICAgICAgICAgICAgPHRyIGNsYXNzPSJGaWx0ZXJNZXNzYWdlIEhpZGRlbiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY29sc3Bhbj0iMiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyUgVHJhbnNsYXRlKCJObyBtYXRjaGVzIGZvdW5kLiIpIHwgaHRtbCAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KWyUgUmVuZGVyQmxvY2tTdGFydCgiT3ZlcnZpZXdSZXN1bHRQcm9qZWN0Um93IikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgPHRyIFslIElGIERhdGEuU3RhdHVzID09ICdpbnZhbGlkJyVdY2xhc3M9IkludmFsaWQiWyUgRU5EICVdPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxhIGNsYXNzPSJBc0Jsb2NrIiBocmVmPSJbJSBFbnYoIkJhc2VsaW5rIikgJV1BY3Rpb249WyUgRW52KCJBY3Rpb24iKSAlXTtTdWJhY3Rpb249RWRpdFByb2plY3Q7SUQ9WyUgRGF0YS5Qcm9qZWN0SUQgfCB1cmkgJV0iPlslIERhdGEuUHJvamVjdCB8IGh0bWwgJV08L2E+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCB0aXRsZT0iWyUgRGF0YS5Qcm9qZWN0RGVzY3JpcHRpb24gfCBodG1sICVdIj5bJSBEYXRhLlByb2plY3REZXNjcmlwdGlvbiB8IHRydW5jYXRlKDQwKSB8IGh0bWwgJV08L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlslIFRyYW5zbGF0ZShEYXRhLlN0YXR1cykgfCBodG1sICVdPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KWyUgUmVuZGVyQmxvY2tFbmQoIk92ZXJ2aWV3UmVzdWx0UHJvamVjdFJvdyIpICVdCiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT4KICAgICAgICAgICAgICAgIDwvdGFibGU+ClslIFJlbmRlckJsb2NrRW5kKCJPdmVydmlld1Jlc3VsdFByb2plY3RUYWJsZSIpICVdCiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgpbJSBSZW5kZXJCbG9ja0VuZCgiT3ZlcnZpZXdSZXN1bHRQcm9qZWN0IikgJV0KClslIFJlbmRlckJsb2NrU3RhcnQoIk92ZXJ2aWV3UmVzdWx0U2V0dGluZyIpICVdCiAgICAgICAgPGRpdiBjbGFzcz0iV2lkZ2V0U2ltcGxlIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iSGVhZGVyIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IldpZGdldEFjdGlvbiBUb2dnbGUiPjxhIGhyZWY9IiMiIHRpdGxlPSJbJSBUcmFuc2xhdGUoIlNob3cgb3IgaGlkZSB0aGUgY29udGVudCIpIHwgaHRtbCAlXSI+PGkgY2xhc3M9ImZhIGZhLWNhcmV0LXJpZ2h0Ij48L2k+PGkgY2xhc3M9ImZhIGZhLWNhcmV0LWRvd24iPjwvaT48L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8aDI+WyUgVHJhbnNsYXRlKCJUYXNrIExpc3QiKSB8IGh0bWwgJV08L2gyPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ29udGVudCI+CgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJOb1NldHRpbmdEYXRhRm91bmRNc2ciKSAlXQogICAgICAgICAgICAgICAgPGRpdiBpZD0iVGltZUFjY291bnRpbmdFbXB0eU1lc3NhZ2VTbWFsbCI+CiAgICAgICAgICAgICAgICAgICAgWyUgVHJhbnNsYXRlKCJObyBkYXRhIGZvdW5kLiIpIHwgaHRtbCAlXQogICAgICAgICAgICAgICAgPC9kaXY+ClslIFJlbmRlckJsb2NrRW5kKCJOb1NldHRpbmdEYXRhRm91bmRNc2ciKSAlXQoKWyUgUmVuZGVyQmxvY2tTdGFydCgiT3ZlcnZpZXdSZXN1bHRTZXR0aW5nVGFibGUiKSAlXQogICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJEYXRhVGFibGUiIGlkPSJUYXNrcyI+CiAgICAgICAgICAgICAgICAgICAgPHRoZWFkPgogICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggY2xhc3M9IlczM3BjIj5bJSBUcmFuc2xhdGUoIlRhc2siKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlslIFRyYW5zbGF0ZSgiU3RhdHVzIikgfCBodG1sICVdPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPgogICAgICAgICAgICAgICAgICAgIDx0Ym9keT4KICAgICAgICAgICAgICAgICAgICAgICAgPHRyIGNsYXNzPSJGaWx0ZXJNZXNzYWdlIEhpZGRlbiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY29sc3Bhbj0iMiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyUgVHJhbnNsYXRlKCJObyBtYXRjaGVzIGZvdW5kLiIpIHwgaHRtbCAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KClslIFJlbmRlckJsb2NrU3RhcnQoIk92ZXJ2aWV3UmVzdWx0U2V0dGluZ1JvdyIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBbJSBJRiBEYXRhLlN0YXR1cyA9PSAnaW52YWxpZCclXWNsYXNzPSJJbnZhbGlkIlslIEVORCAlXT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48YSBjbGFzcz0iQXNCbG9jayIgaHJlZj0iWyUgRW52KCJCYXNlbGluayIpICVdQWN0aW9uPVslIEVudigiQWN0aW9uIikgJV07U3ViYWN0aW9uPUVkaXRUYXNrO0FjdGlvbklEPVslIERhdGEuQWN0aW9uSUQgfCB1cmkgJV0iPlslIERhdGEuQWN0aW9uIHwgaHRtbCAlXTwvYT48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlslIFRyYW5zbGF0ZShEYXRhLlN0YXR1cykgfCBodG1sICVdPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KWyUgUmVuZGVyQmxvY2tFbmQoIk92ZXJ2aWV3UmVzdWx0U2V0dGluZ1JvdyIpICVdCiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT4KICAgICAgICAgICAgICAgIDwvdGFibGU+ClslIFJlbmRlckJsb2NrRW5kKCJPdmVydmlld1Jlc3VsdFNldHRpbmdUYWJsZSIpICVdCiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgpbJSBSZW5kZXJCbG9ja0VuZCgiT3ZlcnZpZXdSZXN1bHRTZXR0aW5nIikgJV0KClslIFJlbmRlckJsb2NrU3RhcnQoIk92ZXJ2aWV3VXBkYXRlVGFzayIpICVdCiAgICAgICAgPGRpdiBjbGFzcz0iV2lkZ2V0U2ltcGxlIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iSGVhZGVyIj4KWyUgUmVuZGVyQmxvY2tTdGFydCgiSGVhZGVyQWRkVGFzayIpICVdCiAgICAgICAgICAgICAgICA8aDI+WyUgVHJhbnNsYXRlKCJBZGQgVGFzayIpIHwgaHRtbCAlXTwvaDI+ClslIFJlbmRlckJsb2NrRW5kKCJIZWFkZXJBZGRUYXNrIikgJV0KWyUgUmVuZGVyQmxvY2tTdGFydCgiSGVhZGVyRWRpdFRhc2siKSAlXQogICAgICAgICAgICAgICAgPGgyPlslIFRyYW5zbGF0ZSgiRWRpdCBUYXNrIFNldHRpbmdzIikgfCBodG1sICVdPC9oMj4KWyUgUmVuZGVyQmxvY2tFbmQoIkhlYWRlckVkaXRUYXNrIikgJV0KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9IkNvbnRlbnQiPgogICAgICAgICAgICAgICAgPGZvcm0gYWN0aW9uPSJbJSBFbnYoIkNHSUhhbmRsZSIpICVdIiBtZXRob2Q9InBvc3QiIG5hbWU9IlRhc2tVcGRhdGUiIGNsYXNzPSJWYWxpZGF0ZSBQcmV2ZW50TXVsdGlwbGVTdWJtaXRzIj4KICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJBY3Rpb24iIHZhbHVlPSJbJSBFbnYoIkFjdGlvbiIpICVdIj4KICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJTdWJhY3Rpb24iIHZhbHVlPSJbJSBEYXRhLkFjdGlvbiB8IGh0bWwgJV1BY3Rpb24iPgogICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IkFjdGlvbklEIiB2YWx1ZT0iWyUgRGF0YS5BY3Rpb25JRCB8IGh0bWwgJV0iLz4KICAgICAgICAgICAgICAgICAgICA8ZmllbGRzZXQgY2xhc3M9IlRhYmxlTGlrZSI+CgogICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9Ik1hbmRhdG9yeSIgZm9yPSJUYXNrIj48c3BhbiBjbGFzcz0iTWFya2VyIj4qPC9zcGFuPiBbJSBUcmFuc2xhdGUoIlRhc2siKSB8IGh0bWwgJV06PC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iRmllbGQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9IlRhc2siIGlkPSJUYXNrIiB2YWx1ZT0iWyUgRGF0YS5UYXNrIHwgaHRtbCAlXSIgY2xhc3M9Ilc1MHBjIFZhbGlkYXRlX1JlcXVpcmVkIFslIERhdGEuVGFza0ludmFsaWQgfCBodG1sICVdIiBtYXhsZW5ndGg9IjUwIi8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJUYXNrRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5bJSBUcmFuc2xhdGUoIlRoaXMgZmllbGQgaXMgcmVxdWlyZWQuIikgfCBodG1sICVdPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJUYXNrTWlzc2luZ1ZhbHVlIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IlRhc2tTZXJ2ZXJFcnJvciIgY2xhc3M9IlRvb2x0aXBFcnJvck1lc3NhZ2UiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlslIFRyYW5zbGF0ZSgiVGhpcyBmaWVsZCBpcyByZXF1aXJlZC4iKSB8IGh0bWwgJV08L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KWyUgUmVuZGVyQmxvY2tFbmQoIlRhc2tNaXNzaW5nVmFsdWUiKSAlXQoKWyUgUmVuZGVyQmxvY2tTdGFydCgiVGFza0R1cGxpY2F0ZU5hbWUiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iVGFza1NlcnZlckVycm9yIiBjbGFzcz0iVG9vbHRpcEVycm9yTWVzc2FnZSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+WyUgVHJhbnNsYXRlKCJUaGVyZSBpcyBhbHJlYWR5IGEgdGFzayB3aXRoIHRoaXMgbmFtZS4gUGxlYXNlLCBjaG9vc2UgYSBkaWZmZXJlbnQgb25lLiIpIHwgaHRtbCAlXTwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgpbJSBSZW5kZXJCbG9ja0VuZCgiVGFza0R1cGxpY2F0ZU5hbWUiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ2xlYXIiPjwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0iVGFza1N0YXR1cyI+WyUgVHJhbnNsYXRlKCJTdGF0dXMiKSB8IGh0bWwgJV06PC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iRmllbGQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyUgRGF0YS5TdGF0dXNPcHRpb24gJV0KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IkNsZWFyIj48L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IkZpZWxkIFNwYWNpbmdUb3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iUHJpbWFyeSBDYWxsRm9yQWN0aW9uIiB0eXBlPSJzdWJtaXQiIGlkPSJTdWJtaXQiIHZhbHVlPSJbJSBUcmFuc2xhdGUoIlN1Ym1pdCIpIHwgaHRtbCAlXSI+PHNwYW4+PGkgY2xhc3M9ImZhIGZhLWNoZWNrLXNxdWFyZS1vIj48L2k+IFslIFRyYW5zbGF0ZSgiU3VibWl0IikgfCBodG1sICVdPC9zcGFuPjwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgWyUgVHJhbnNsYXRlKCJvciIpIHwgaHRtbCAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iWyUgRW52KCJCYXNlbGluayIpICVdQWN0aW9uPVslIEVudigiQWN0aW9uIikgJV0iPlslIFRyYW5zbGF0ZSgiQ2FuY2VsIikgfCBodG1sICVdPC9hPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ2xlYXIiPjwvZGl2PgogICAgICAgICAgICAgICAgICAgIDwvZmllbGRzZXQ+CiAgICAgICAgICAgICAgICA8L2Zvcm0+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgpbJSBSZW5kZXJCbG9ja0VuZCgiT3ZlcnZpZXdVcGRhdGVUYXNrIikgJV0KClslIFJlbmRlckJsb2NrU3RhcnQoIk92ZXJ2aWV3UmVzdWx0VXNlciIpICVdCiAgICAgICAgPGRpdiBjbGFzcz0iV2lkZ2V0U2ltcGxlIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iSGVhZGVyIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IldpZGdldEFjdGlvbiBUb2dnbGUiPjxhIGhyZWY9IiMiIHRpdGxlPSJbJSBUcmFuc2xhdGUoIlNob3cgb3IgaGlkZSB0aGUgY29udGVudCIpIHwgaHRtbCAlXSI+PGkgY2xhc3M9ImZhIGZhLWNhcmV0LXJpZ2h0Ij48L2k+PGkgY2xhc3M9ImZhIGZhLWNhcmV0LWRvd24iPjwvaT48L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8aDI+WyUgVHJhbnNsYXRlKCJVc2VyIExpc3QiKSB8IGh0bWwgJV08L2gyPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ29udGVudCI+CgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJOb1VzZXJEYXRhRm91bmRNc2ciKSAlXQogICAgICAgICAgICAgICAgPGRpdiBpZD0iVGltZUFjY291bnRpbmdFbXB0eU1lc3NhZ2VTbWFsbCI+CiAgICAgICAgICAgICAgICAgICAgWyUgVHJhbnNsYXRlKCJObyBkYXRhIGZvdW5kLiIpIHwgaHRtbCAlXQogICAgICAgICAgICAgICAgPC9kaXY+ClslIFJlbmRlckJsb2NrRW5kKCJOb1VzZXJEYXRhRm91bmRNc2ciKSAlXQoKWyUgUmVuZGVyQmxvY2tTdGFydCgiT3ZlcnZpZXdSZXN1bHRVc2VyVGFibGUiKSAlXQogICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJEYXRhVGFibGUiIGlkPSJVc2VycyI+CiAgICAgICAgICAgICAgICAgICAgPHRoZWFkPgogICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggY2xhc3M9IlczM3BjIj5bJSBUcmFuc2xhdGUoIlVzZXIiKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPSJXMzNwYyI+WyUgVHJhbnNsYXRlKCJDb21tZW50IikgfCBodG1sICVdPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5bJSBUcmFuc2xhdGUoIkNhbGVuZGFyIikgfCBodG1sICVdPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPgogICAgICAgICAgICAgICAgICAgIDx0Ym9keT4KICAgICAgICAgICAgICAgICAgICAgICAgPHRyIGNsYXNzPSJGaWx0ZXJNZXNzYWdlIEhpZGRlbiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY29sc3Bhbj0iMyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyUgVHJhbnNsYXRlKCJObyBtYXRjaGVzIGZvdW5kLiIpIHwgaHRtbCAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KClslIFJlbmRlckJsb2NrU3RhcnQoIk92ZXJ2aWV3UmVzdWx0VXNlclJvdyIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48YSBjbGFzcz0iQXNCbG9jayIgaHJlZj0iWyUgRW52KCJCYXNlbGluayIpICVdQWN0aW9uPVslIEVudigiQWN0aW9uIikgJV07U3ViYWN0aW9uPUVkaXRVc2VyO1VzZXJJRD1bJSBEYXRhLlVzZXJJRCB8IHVyaSAlXSI+WyUgRGF0YS5Vc2VyIHwgaHRtbCAlXTwvYT48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlslIERhdGEuQ29tbWVudCB8IGh0bWwgJV08L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlslIFRyYW5zbGF0ZShEYXRhLkNhbGVuZGFyKSB8IGh0bWwgJV08L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgpbJSBSZW5kZXJCbG9ja0VuZCgiT3ZlcnZpZXdSZXN1bHRVc2VyUm93IikgJV0KICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PgogICAgICAgICAgICAgICAgPC90YWJsZT4KWyUgUmVuZGVyQmxvY2tFbmQoIk92ZXJ2aWV3UmVzdWx0VXNlclRhYmxlIikgJV0KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+ClslIFJlbmRlckJsb2NrRW5kKCJPdmVydmlld1Jlc3VsdFVzZXIiKSAlXQoKWyUgUmVuZGVyQmxvY2tTdGFydCgiT3ZlcnZpZXdVcGRhdGVVc2VyIikgJV0KICAgIDxmb3JtIGFjdGlvbj0iWyUgRW52KCJDR0lIYW5kbGUiKSAlXSIgbWV0aG9kPSJwb3N0IiBuYW1lPSJVc2VyVXBkYXRlIiBjbGFzcz0iVmFsaWRhdGUgUHJldmVudE11bHRpcGxlU3VibWl0cyI+CiAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iQWN0aW9uIiB2YWx1ZT0iWyUgRW52KCJBY3Rpb24iKSAlXSIgLz4KICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJTdWJhY3Rpb24iIHZhbHVlPSJbJSBEYXRhLlN1YmFjdGlvbiB8IGh0bWwgJV0iIC8+CiAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iVXNlcklEIiB2YWx1ZT0iWyUgRGF0YS5Vc2VySUQgfCBodG1sICVdIiAvPgogICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IkFkZFBlcmlvZCIgdmFsdWU9IiIgLz4KICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJTdWJtaXRVc2VyRGF0YSIgdmFsdWU9IiIgLz4KCiAgICAgICAgPGRpdiBjbGFzcz0iV2lkZ2V0U2ltcGxlIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iSGVhZGVyIj4KICAgICAgICAgICAgICAgIDxoMj5bJSBUcmFuc2xhdGUoIlVzZXIgU2V0dGluZ3MiKSB8IGh0bWwgJV08L2gyPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ29udGVudCI+CiAgICAgICAgICAgICAgICA8ZmllbGRzZXQgY2xhc3M9IlRhYmxlTGlrZSI+CiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0iTmFtZSI+WyUgVHJhbnNsYXRlKCJOYW1lIikgfCBodG1sICVdIChbJSBUcmFuc2xhdGUoIlVzZXJuYW1lIikgfCBodG1sICVdKTo8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IlZhbHVlIj5bJSBEYXRhLlVzZXJGdWxsbmFtZSB8IGh0bWwgJV0gKFslIERhdGEuVXNlckxvZ2luIHwgaHRtbCAlXSk8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJDbGVhciI+PC9kaXY+CgogICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9IkRlc2NyaXB0aW9uIj5bJSBUcmFuc2xhdGUoIkRlc2NyaXB0aW9uIikgfCBodG1sICVdOjwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iRmllbGQiPgogICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iRGVzY3JpcHRpb24iIGlkPSJEZXNjcmlwdGlvbiIgY2xhc3M9Ilc1MHBjIiB2YWx1ZT0iWyUgRGF0YS5EZXNjcmlwdGlvbiB8IGh0bWwgJV0iIC8+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ2xlYXIiPjwvZGl2PgoKICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJTaG93T3ZlcnRpbWUiPlslIFRyYW5zbGF0ZSgiVXNlciBpcyBhbGxvd2VkIHRvIHNlZSBvdmVydGltZXMiKSB8IGh0bWwgJV08L2xhYmVsPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IkZpZWxkIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJTaG93T3ZlcnRpbWUiIGlkPSJTaG93T3ZlcnRpbWUiIHZhbHVlPSIxIiB0aXRsZT0iWyUgVHJhbnNsYXRlKCJTaG93IE92ZXJ0aW1lIikgfCBodG1sICVdIiBbJSBEYXRhLlNob3dPdmVydGltZSAlXSAvPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IkNsZWFyIj48L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0iQ3JlYXRlUHJvamVjdCI+WyUgVHJhbnNsYXRlKCJVc2VyIGlzIGFsbG93ZWQgdG8gY3JlYXRlIHByb2plY3RzIikgfCBodG1sICVdPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJGaWVsZCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0iQ3JlYXRlUHJvamVjdCIgaWQ9IkNyZWF0ZVByb2plY3QiIHZhbHVlPSIxIiB0aXRsZT0iWyUgVHJhbnNsYXRlKCJBbGxvdyBwcm9qZWN0IGNyZWF0aW9uIikgfCBodG1sICVdIiBbJSBEYXRhLkNyZWF0ZVByb2plY3QgJV0gLz4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJDbGVhciI+PC9kaXY+CgogICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9IkFsbG93U2tpcCI+WyUgVHJhbnNsYXRlKCJVc2VyIGlzIGFsbG93ZWQgdG8gc2tpcCB0aW1lIGFjY291bnRpbmciKSB8IGh0bWwgJV08L2xhYmVsPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IkZpZWxkIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJBbGxvd1NraXAiIGlkPSJBbGxvd1NraXAiIHZhbHVlPSIxIiB0aXRsZT0iWyUgVHJhbnNsYXRlKCJBbGxvdyB0aW1lIGFjY291bnRpbmcgc2tpcHBpbmciKSB8IGh0bWwgJV0iIFslIERhdGEuQWxsb3dTa2lwICVdIC8+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJGaWVsZEV4cGxhbmF0aW9uIj5bJSBUcmFuc2xhdGUoIklmIHRoaXMgb3B0aW9uIGlzIHNlbGVjdGVkLCB0aW1lIGFjY291bnRpbmcgaXMgZWZmZWN0aXZlbHkgb3B0aW9uYWwgZm9yIHRoZSB1c2VyLiIpIHwgaHRtbCAlXTwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9IkZpZWxkRXhwbGFuYXRpb24iPlslIFRyYW5zbGF0ZSgiVGhlcmUgd2lsbCBiZSBubyB3YXJuaW5ncyBhYm91dCBtaXNzaW5nIGVudHJpZXMgYW5kIG5vIGVudHJ5IGVuZm9yY2VtZW50LiIpIHwgaHRtbCAlXTwvcD4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJDbGVhciI+PC9kaXY+CgogICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9IkNhbGVuZGFyIj5bJSBUcmFuc2xhdGUoIkNhbGVuZGFyIikgfCBodG1sICVdOjwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iRmllbGQiPgogICAgICAgICAgICAgICAgICAgICAgICBbJSBEYXRhLkNhbGVuZGFyT3B0aW9uICVdCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ2xlYXIiPjwvZGl2PgogICAgICAgICAgICAgICAgPC9maWVsZHNldD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CgogICAgICAgIDxkaXYgY2xhc3M9IldpZGdldFNpbXBsZSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9IkhlYWRlciI+CiAgICAgICAgICAgICAgICA8aDI+WyUgVHJhbnNsYXRlKCJUaW1lIFNwYW5zIikgfCBodG1sICVdPC9oMj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9IkNvbnRlbnQiPgoKICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0iRGF0YVRhYmxlIE5vSG92ZXIgVGltZUFjY291bnRpbmdUYWJsZSI+CiAgICAgICAgICAgICAgICAgICAgPHRoZWFkPgogICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+PHNwYW4gY2xhc3M9Ik1hcmtlciI+Kjwvc3Bhbj4gWyUgVHJhbnNsYXRlKCJQZXJpb2QgQmVnaW4iKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPjxzcGFuIGNsYXNzPSJNYXJrZXIiPio8L3NwYW4+IFslIFRyYW5zbGF0ZSgiUGVyaW9kIEVuZCIpIHwgaHRtbCAlXTwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+PHNwYW4gY2xhc3M9Ik1hcmtlciI+Kjwvc3Bhbj4gWyUgVHJhbnNsYXRlKCJEYXlzIG9mIFZhY2F0aW9uIikgfCBodG1sICVdPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5bJSBUcmFuc2xhdGUoIkhvdXJzIHBlciBXZWVrIikgfCBodG1sICVdPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5bJSBUcmFuc2xhdGUoIkF1dGhvcml6ZWQgT3ZlcnRpbWUiKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlslIFRyYW5zbGF0ZSgiU3RhdHVzIikgfCBodG1sICVdPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPgogICAgICAgICAgICAgICAgICAgIDx0Ym9keT4KWyUgUmVuZGVyQmxvY2tTdGFydCgiUGVyaW9kT3ZlcnZpZXdSb3ciKSAlXQogICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIGlkPSJEYXRlU3RhcnQtWyUgRGF0YS5QZXJpb2QgfCBodG1sICVdIiBuYW1lPSJEYXRlU3RhcnRbWyUgRGF0YS5QZXJpb2QgfCBodG1sICVdXSIgdmFsdWU9IlslIERhdGEuRGF0ZVN0YXJ0IHwgaHRtbCAlXSIgY2xhc3M9IiBWYWxpZGF0ZV9SZXF1aXJlZCBbJSBEYXRhLkRhdGVTdGFydEludmFsaWQgfCBodG1sICVdIiB0aXRsZT0iWyUgVHJhbnNsYXRlKCJTdGFydCBEYXRlIikgfCBodG1sICVdIiAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IkRhdGVTdGFydC1bJSBEYXRhLlBlcmlvZCB8IGh0bWwgJV1FcnJvciIgY2xhc3M9IlRvb2x0aXBFcnJvck1lc3NhZ2UiPjxwPlslIFRyYW5zbGF0ZSgiVGhpcyBmaWVsZCBpcyByZXF1aXJlZC4iKSB8IGh0bWwgJV0gWyUgVHJhbnNsYXRlKCJQbGVhc2UgaW5zZXJ0IGEgdmFsaWQgZGF0ZS4iKSB8IGh0bWwgJV08L3A+PC9kaXY+ClslIFJlbmRlckJsb2NrU3RhcnQoIkRhdGVTdGFydEludmFsaWQiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IkRhdGVTdGFydC1bJSBEYXRhLlBlcmlvZCB8IGh0bWwgJV1TZXJ2ZXJFcnJvciIgY2xhc3M9IlRvb2x0aXBFcnJvck1lc3NhZ2UiPjxwPlslIFRyYW5zbGF0ZSgiSW52YWxpZCBkYXRlISIpIHwgaHRtbCAlXTwvcD48L2Rpdj4KWyUgUmVuZGVyQmxvY2tFbmQoIkRhdGVTdGFydEludmFsaWQiKSAlXQpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJEYXRlU3RhcnRNaXNzaW5nVmFsdWUiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IkRhdGVTdGFydC1bJSBEYXRhLlBlcmlvZCB8IGh0bWwgJV1TZXJ2ZXJFcnJvciIgY2xhc3M9IlRvb2x0aXBFcnJvck1lc3NhZ2UiPjxwPlslIFRyYW5zbGF0ZSgiVGhpcyBmaWVsZCBpcyByZXF1aXJlZC4iKSB8IGh0bWwgJV08L3A+PC9kaXY+ClslIFJlbmRlckJsb2NrRW5kKCJEYXRlU3RhcnRNaXNzaW5nVmFsdWUiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgaWQ9IkRhdGVFbmQtWyUgRGF0YS5QZXJpb2QgfCBodG1sICVdIiBuYW1lPSJEYXRlRW5kW1slIERhdGEuUGVyaW9kIHwgaHRtbCAlXV0iIHZhbHVlPSJbJSBEYXRhLkRhdGVFbmQgfCBodG1sICVdIiBjbGFzcz0iIFZhbGlkYXRlX1JlcXVpcmVkIFslIERhdGEuRGF0ZUVuZEludmFsaWQgfCBodG1sICVdIiB0aXRsZT0iWyUgVHJhbnNsYXRlKCJFbmQgRGF0ZSIpIHwgaHRtbCAlXSIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJEYXRlRW5kLVslIERhdGEuUGVyaW9kIHwgaHRtbCAlXUVycm9yIiBjbGFzcz0iVG9vbHRpcEVycm9yTWVzc2FnZSI+PHA+WyUgVHJhbnNsYXRlKCJUaGlzIGZpZWxkIGlzIHJlcXVpcmVkLiIpIHwgaHRtbCAlXSBbJSBUcmFuc2xhdGUoIlBsZWFzZSBpbnNlcnQgYSB2YWxpZCBkYXRlLiIpIHwgaHRtbCAlXTwvcD48L2Rpdj4KWyUgUmVuZGVyQmxvY2tTdGFydCgiRGF0ZUVuZEludmFsaWQiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IkRhdGVFbmQtWyUgRGF0YS5QZXJpb2QgfCBodG1sICVdU2VydmVyRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj48cD5bJSBUcmFuc2xhdGUoIkludmFsaWQgZGF0ZSEiKSB8IGh0bWwgJV08L3A+PC9kaXY+ClslIFJlbmRlckJsb2NrRW5kKCJEYXRlRW5kSW52YWxpZCIpICVdClslIFJlbmRlckJsb2NrU3RhcnQoIkRhdGVFbmRNaXNzaW5nVmFsdWUiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IkRhdGVFbmQtWyUgRGF0YS5QZXJpb2QgfCBodG1sICVdU2VydmVyRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj48cD5bJSBUcmFuc2xhdGUoIlRoaXMgZmllbGQgaXMgcmVxdWlyZWQuIikgfCBodG1sICVdPC9wPjwvZGl2PgpbJSBSZW5kZXJCbG9ja0VuZCgiRGF0ZUVuZE1pc3NpbmdWYWx1ZSIpICVdClslIFJlbmRlckJsb2NrU3RhcnQoIkRhdGVFbmRCZWZvcmVEYXRlU3RhcnQiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IkRhdGVFbmQtWyUgRGF0YS5QZXJpb2QgfCBodG1sICVdU2VydmVyRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj48cD5bJSBUcmFuc2xhdGUoIlBlcmlvZCBlbmQgbXVzdCBiZSBhZnRlciBwZXJpb2QgYmVnaW4uIikgfCBodG1sICVdPC9wPjwvZGl2PgpbJSBSZW5kZXJCbG9ja0VuZCgiRGF0ZUVuZEJlZm9yZURhdGVTdGFydCIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0iTGVhdmVEYXlzLVslIERhdGEuUGVyaW9kIHwgaHRtbCAlXSIgbmFtZT0iTGVhdmVEYXlzW1slIERhdGEuUGVyaW9kIHwgaHRtbCAlXV0iIHZhbHVlPSJbJSBEYXRhLkxlYXZlRGF5cyB8IGh0bWwgJV0iIGNsYXNzPSJMZWF2ZURheXMgVmFsaWRhdGVfUmVxdWlyZWQgWyUgRGF0YS5MZWF2ZURheXNJbnZhbGlkIHwgaHRtbCAlXSIgdGl0bGU9IlslIFRyYW5zbGF0ZSgiTGVhdmUgRGF5cyIpIHwgaHRtbCAlXSIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJMZWF2ZURheXMtWyUgRGF0YS5QZXJpb2QgfCBodG1sICVdRXJyb3IiIGNsYXNzPSJUb29sdGlwRXJyb3JNZXNzYWdlIj48cD5bJSBUcmFuc2xhdGUoIlRoaXMgZmllbGQgaXMgcmVxdWlyZWQuIikgfCBodG1sICVdPC9wPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IkxlYXZlRGF5cy1bJSBEYXRhLlBlcmlvZCB8IGh0bWwgJV1TZXJ2ZXJFcnJvciIgY2xhc3M9IlRvb2x0aXBFcnJvck1lc3NhZ2UiPjxwPlslIFRyYW5zbGF0ZSgiVGhpcyBmaWVsZCBpcyByZXF1aXJlZC4iKSB8IGh0bWwgJV08L3A+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0iV2Vla2x5SG91cnMtWyUgRGF0YS5QZXJpb2QgfCBodG1sICVdIiBuYW1lPSJXZWVrbHlIb3Vyc1tbJSBEYXRhLlBlcmlvZCB8IGh0bWwgJV1dIiB2YWx1ZT0iWyUgRGF0YS5XZWVrbHlIb3VycyB8IGh0bWwgJV0iIHRpdGxlPSJbJSBUcmFuc2xhdGUoIldlZWtseSBIb3VycyIpIHwgaHRtbCAlXSIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIGlkPSJPdmVydGltZS1bJSBEYXRhLlBlcmlvZCB8IGh0bWwgJV0iIG5hbWU9Ik92ZXJ0aW1lW1slIERhdGEuUGVyaW9kIHwgaHRtbCAlXV0iIHZhbHVlPSJbJSBEYXRhLk92ZXJ0aW1lIHwgaHRtbCAlXSIgdGl0bGU9IlslIFRyYW5zbGF0ZSgiT3ZlcnRpbWUiKSB8IGh0bWwgJV0iIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFslIERhdGEuUGVyaW9kU3RhdHVzT3B0aW9uICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgpbJSBSZW5kZXJCbG9ja0VuZCgiUGVyaW9kT3ZlcnZpZXdSb3ciKSAlXQoKWyUgUmVuZGVyQmxvY2tTdGFydCgiUGVyaW9kT3ZlcnZpZXdSb3dOb0RhdGEiKSAlXQogICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY29sc3Bhbj0iNiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyUgVHJhbnNsYXRlKCJObyB0aW1lIHBlcmlvZHMgZm91bmQuIikgfCBodG1sICVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgpbJSBSZW5kZXJCbG9ja0VuZCgiUGVyaW9kT3ZlcnZpZXdSb3dOb0RhdGEiKSAlXQogICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+CiAgICAgICAgICAgICAgICA8L3RhYmxlPgoKICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT0ic3VibWl0IiB0aXRsZT0iWyUgVHJhbnNsYXRlKCJBZGQgdGltZSBwZXJpb2QiKSB8IGh0bWwgJV0iIHZhbHVlPSJbJSBUcmFuc2xhdGUoIkFkZCB0aW1lIHBlcmlvZCIpIHwgaHRtbCAlXSIgaWQ9IkFkZFBlcmlvZCIgY2xhc3M9IkNhbGxGb3JBY3Rpb24gUGx1cyBTcGFjaW5nVG9wU21hbGwiPjxzcGFuPjxpIGNsYXNzPSJmYSBmYS1wbHVzLXNxdWFyZSI+PC9pPiBbJSBUcmFuc2xhdGUoIkFkZCB0aW1lIHBlcmlvZCIpIHwgaHRtbCAlXTwvc3Bhbj48L2J1dHRvbj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iV2lkZ2V0U2ltcGxlIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ29udGVudCI+CiAgICAgICAgICAgICAgICA8ZmllbGRzZXQgY2xhc3M9IlRhYmxlTGlrZSI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iRmllbGQiPgogICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJQcmltYXJ5IENhbGxGb3JBY3Rpb24iIHR5cGU9InN1Ym1pdCIgdmFsdWU9IlslIFRyYW5zbGF0ZSgiU3VibWl0IikgfCBodG1sICVdIiBpZD0iU3VibWl0VXNlckRhdGEiPjxzcGFuPjxpIGNsYXNzPSJmYSBmYS1jaGVjay1zcXVhcmUtbyI+PC9pPiBbJSBUcmFuc2xhdGUoIlN1Ym1pdCIpIHwgaHRtbCAlXTwvc3Bhbj48L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgWyUgVHJhbnNsYXRlKCJvciIpIHwgaHRtbCAlXQogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJbJSBFbnYoIkJhc2VsaW5rIikgJV1BY3Rpb249WyUgRW52KCJBY3Rpb24iKSAlXSI+WyUgVHJhbnNsYXRlKCJDYW5jZWwiKSB8IGh0bWwgJV08L2E+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2ZpZWxkc2V0PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZm9ybT4KWyUgUmVuZGVyQmxvY2tFbmQoIk92ZXJ2aWV3VXBkYXRlVXNlciIpICVdCiAgICA8L2Rpdj4KPC9kaXY+CgpbJSBSZW5kZXJCbG9ja0VuZCgiU2V0dGluZyIpICVdCg==</File>
        <File Location="Kernel/Output/HTML/Templates/Standard/AgentTimeAccountingView.tt" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgo8ZGl2IGNsYXNzPSJNYWluQm94IEFSSUFSb2xlTWFpbiBMYXlvdXRGaXhlZFNpZGViYXIgU2lkZWJhckZpcnN0Ij4KICAgIDxoMSBjbGFzcz0iSGVhZGVyIj5bJSBUcmFuc2xhdGUoIlZpZXcgVGltZSBSZWNvcmQiKSB8IGh0bWwgJV0KWyUgUmVuZGVyQmxvY2tTdGFydCgiVXNlciIpICVdCiAgICAgICAgLSBbJSBUcmFuc2xhdGUoIlZpZXcgb2YgIikgfCBodG1sICVdIFslIERhdGEuVXNlciB8IGh0bWwgJV0KWyUgUmVuZGVyQmxvY2tFbmQoIlVzZXIiKSAlXQogICAgPC9oMT4KCiAgICA8ZGl2IGNsYXNzPSJTaWRlYmFyQ29sdW1uIj4KICAgICAgICA8ZGl2IGNsYXNzPSJXaWRnZXRTaW1wbGUiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJIZWFkZXIiPgogICAgICAgICAgICAgICAgPGgyPlslIFRyYW5zbGF0ZSgiQWN0aW9ucyIpIHwgaHRtbCAlXTwvaDI+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJDb250ZW50Ij4KICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0iQWN0aW9uTGlzdCI+CiAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJbJSBFbnYoIkJhc2VsaW5rIikgJV1BY3Rpb249QWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3O1llYXI9WyUgRGF0YS5ZZWFyIHwgdXJpICVdO01vbnRoPVslIERhdGEuTW9udGggfCB1cmkgJV0iIGNsYXNzPSJDYWxsRm9yQWN0aW9uIEZ1bGxzaXplIENlbnRlciI+PHNwYW4+PGkgY2xhc3M9ImZhIGZhLWNhcmV0LWxlZnQiPjwvaT5bJSBUcmFuc2xhdGUoIkdvIHRvIG92ZXJ2aWV3IikgfCBodG1sICVdPC9zcGFuPjwvYT4KICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iV2lkZ2V0U2ltcGxlIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iSGVhZGVyIj4KICAgICAgICAgICAgICAgIDxoMj5bJSBUcmFuc2xhdGUoIkRhdGUgTmF2aWdhdGlvbiIpIHwgaHRtbCAlXTwvaDI+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJDb250ZW50Ij4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Ik1vbnRoU2VsZWN0aW9uIj4KICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0iQXJyb3ciIHRpdGxlPSJbJSBUcmFuc2xhdGUoIlByZXZpb3VzIGRheSIpIHwgaHRtbCAlXSIgaHJlZj0iWyUgRW52KCJCYXNlbGluayIpICVdQWN0aW9uPVslIEVudigiQWN0aW9uIikgJV07WWVhcj1bJSBEYXRhLlllYXJCYWNrIHwgdXJpICVdO01vbnRoPVslIERhdGEuTW9udGhCYWNrIHwgdXJpICVdO0RheT1bJSBEYXRhLkRheUJhY2sgfCB1cmkgJV07VXNlcklEPVslIERhdGEuVXNlcklEIHwgdXJpICVdIj48aSBjbGFzcz0iZmEgZmEtY2FyZXQtbGVmdCI+PC9pPjwvYT4KICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0iQXJyb3ciIHRpdGxlPSJbJSBUcmFuc2xhdGUoIk5leHQgZGF5IikgfCBodG1sICVdIiBocmVmPSJbJSBFbnYoIkJhc2VsaW5rIikgJV1BY3Rpb249WyUgRW52KCJBY3Rpb24iKSAlXTtZZWFyPVslIERhdGEuWWVhck5leHQgfCB1cmkgJV07TW9udGg9WyUgRGF0YS5Nb250aE5leHQgfCB1cmkgJV07RGF5PVslIERhdGEuRGF5TmV4dCB8IHVyaSAlXTtVc2VySUQ9WyUgRGF0YS5Vc2VySUQgfCB1cmkgJV0iPjxpIGNsYXNzPSJmYSBmYS1jYXJldC1yaWdodCI+PC9pPjwvYT4KICAgICAgICAgICAgICAgICAgICBbJSBEYXRhLlllYXIgfCBodG1sICVdLVslIERhdGEuTW9udGggfCBodG1sICVdLVslIERhdGEuRGF5IHwgaHRtbCAlXQogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJDbGVhciI+PC9kaXY+CiAgICAgICAgICAgICAgICA8Zm9ybSBhY3Rpb249IlslIEVudigiQ0dJSGFuZGxlIikgJV0iIG1ldGhvZD0icG9zdCIgZW5jdHlwZT0ibXVsdGlwYXJ0L2Zvcm0tZGF0YSIgbmFtZT0iRGF0ZVNlbGVjdGlvbiIgY2xhc3M9IlZhbGlkYXRlIiBpZD0iRGF0ZVNlbGVjdGlvbkZvcm0iPgogICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IkFjdGlvbiIgdmFsdWU9IlslIEVudigiQWN0aW9uIikgJV0iIC8+CiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iU3ViYWN0aW9uIiB2YWx1ZT0iVmlldyIgLz4KICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJVc2VySUQiICAgIHZhbHVlPSJbJSBEYXRhLlVzZXJJRCB8IGh0bWwgJV0iIC8+CiAgICAgICAgICAgICAgICAgICAgWyUgRGF0YS5EYXRlU2VsZWN0aW9uICVdCiAgICAgICAgICAgICAgICA8L2Zvcm0+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBpZD0iTmF2aWdhdGlvblNlbGVjdCIgY2xhc3M9IkNhbGxGb3JBY3Rpb24gRnVsbHNpemUgQ2VudGVyIFNwYWNpbmdUb3AiPjxzcGFuPjxpIGNsYXNzPSJmYSBmYS1hcnJvdy1jaXJjbGUtby1yaWdodCI+PC9pPlslIFRyYW5zbGF0ZSgiR28gdG8gZGF0ZSIpIHwgaHRtbCAlXTwvc3Bhbj48L2E+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0iQ29udGVudENvbHVtbiI+CiAgICAgICAgPGRpdiBjbGFzcz0iV2lkZ2V0U2ltcGxlIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iSGVhZGVyIj4KICAgICAgICAgICAgICAgIDxoMj5bJSBUcmFuc2xhdGUoIkRhdGUiKSB8IGh0bWwgJV06IFslIFRyYW5zbGF0ZShEYXRhLldlZWtkYXlfdG9fVGV4dCkgfCBodG1sICVdIFslIERhdGEuRGF0ZSB8IGh0bWwgJV08L2gyPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iQ29udGVudCI+CiAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9IkRhdGFUYWJsZSBEYXRhVGFibGVOb0hpZ2hsaWdodCI+CiAgICAgICAgICAgICAgICAgICAgPHRoZWFkPgogICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+WyUgVHJhbnNsYXRlKCJQcm9qZWN0IikgfCBodG1sICVdPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5bJSBUcmFuc2xhdGUoIlRhc2siKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlslIFRyYW5zbGF0ZSgiUmVtYXJrIikgfCBodG1sICVdPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5bJSBUcmFuc2xhdGUoIlN0YXJ0IikgfCBodG1sICVdPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5bJSBUcmFuc2xhdGUoIkVuZCIpIHwgaHRtbCAlXTwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+WyUgVHJhbnNsYXRlKCJQZXJpb2QiKSB8IGh0bWwgJV08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+CiAgICAgICAgICAgICAgICAgICAgPHRib2R5PgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJVbml0IikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlslIERhdGEuUHJvamVjdCB8IGh0bWwgJV08L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlslIERhdGEuQWN0aW9uIHwgaHRtbCAlXTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+WyUgRGF0YS5SZW1hcmsgfCBodG1sICVdPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iUmlnaHQiPlslIERhdGEuU3RhcnRUaW1lIHwgaHRtbCAlXTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9IlJpZ2h0Ij5bJSBEYXRhLkVuZFRpbWUgfCBodG1sICVdPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iUmlnaHQiPlslIERhdGEuUGVyaW9kIHwgaHRtbCAlXTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+ClslIFJlbmRlckJsb2NrRW5kKCJVbml0IikgJV0KClslIFJlbmRlckJsb2NrU3RhcnQoIlRvdGFsIikgJV0KICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNvbHNwYW49IjQiPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHN0cm9uZz5bJSBUcmFuc2xhdGUoIlRvdGFsIikgfCBodG1sICVdOjwvc3Ryb25nPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9IlJpZ2h0Ij48c3Ryb25nPlslIERhdGEuVG90YWwgfCBodG1sICVdPC9zdHJvbmc+PC90ZD4KCiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+ClslIFJlbmRlckJsb2NrRW5kKCJUb3RhbCIpICVdCgpbJSBSZW5kZXJCbG9ja1N0YXJ0KCJOb0RhdGFGb3VuZCIpICVdCiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjb2xzcGFuPSI2Ij5bJSBUcmFuc2xhdGUoIk5vIGRhdGEgZm91bmQgZm9yIHRoaXMgZGF5LiIpIHwgaHRtbCAlXTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+ClslIFJlbmRlckJsb2NrRW5kKCJOb0RhdGFGb3VuZCIpICVdCgogICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+CiAgICAgICAgICAgICAgICA8L3RhYmxlPgoKWyUgUmVuZGVyQmxvY2tTdGFydCgiT3RoZXJUaW1lcyIpICVdCiAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJjaGVja2JveCIgdmFsdWU9Ii0yIiBpZD0iTGVhdmVEYXkiIG5hbWU9IkxlYXZlRGF5IiB0aXRsZT0iWyUgVHJhbnNsYXRlKCJPbiB2YWNhdGlvbiIpIHwgaHRtbCAlXSIgWyUgRGF0YS5MZWF2ZURheSAlXSBkaXNhYmxlZCAvPgogICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9IkxlYXZlRGF5Ij5bJSBUcmFuc2xhdGUoIk9uIHZhY2F0aW9uIikgfCBodG1sICVdPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iY2hlY2tib3giIHZhbHVlPSItMSIgaWQ9IlNpY2siIG5hbWU9IlNpY2siIHRpdGxlPSJbJSBUcmFuc2xhdGUoIk9uIHNpY2sgbGVhdmUiKSB8IGh0bWwgJV0iIFslIERhdGEuU2ljayAlXSBkaXNhYmxlZCAvPgogICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9IlNpY2siPlslIFRyYW5zbGF0ZSgiT24gc2ljayBsZWF2ZSIpIHwgaHRtbCAlXTwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iLTMiIGlkPSJPdmVydGltZSIgbmFtZT0iT3ZlcnRpbWUiIHRpdGxlPSJbJSBUcmFuc2xhdGUoIk9uIG92ZXJ0aW1lIGxlYXZlIikgfCBodG1sICVdIiBbJSBEYXRhLk92ZXJ0aW1lICVdIGRpc2FibGVkIC8+CiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0iT3ZlcnRpbWUiPlslIFRyYW5zbGF0ZSgiT24gb3ZlcnRpbWUgbGVhdmUiKSB8IGh0bWwgJV08L2xhYmVsPgogICAgICAgICAgICAgICAgPC9kaXY+ClslIFJlbmRlckJsb2NrRW5kKCJPdGhlclRpbWVzIikgJV0KCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJDbGVhciI+PC9kaXY+ClslIFJlbmRlckJsb2NrU3RhcnQoIlZhY2F0aW9uIikgJV0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IlNwYWNpbmdUb3BTbWFsbCI+CiAgICAgICAgICAgICAgICAgICAgPHA+CiAgICAgICAgICAgICAgICAgICAgICAgIFslIERhdGEuVmFjYXRpb24gfCBodG1sICVdCiAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgPC9kaXY+ClslIFJlbmRlckJsb2NrRW5kKCJWYWNhdGlvbiIpICVdCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJDbGVhciI+PC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CjwvZGl2Pgo=</File>
        <File Location="Kernel/Output/HTML/Notification/TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6T3V0cHV0OjpIVE1MOjpOb3RpZmljYXRpb246OlRpbWVBY2NvdW50aW5nOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwoKdXNlIEtlcm5lbDo6TGFuZ3VhZ2UgcXcoVHJhbnNsYXRhYmxlKTsKCm91ciBAT2JqZWN0RGVwZW5kZW5jaWVzID0gKAogICAgJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScsCiAgICAnS2VybmVsOjpTeXN0ZW06OlRpbWVBY2NvdW50aW5nJywKICAgICdLZXJuZWw6Ok91dHB1dDo6SFRNTDo6TGF5b3V0JywKKTsKCnN1YiBuZXcgewogICAgbXkgKCAkVHlwZSwgJVBhcmFtICkgPSBAXzsKCiAgICAjIGFsbG9jYXRlIG5ldyBoYXNoIGZvciBvYmplY3QKICAgIG15ICRTZWxmID0ge307CiAgICBibGVzcyggJFNlbGYsICRUeXBlICk7CgogICAgIyBnZXQgVXNlcklEIHBhcmFtCiAgICAkU2VsZi0+e1VzZXJJRH0gPSAkUGFyYW17VXNlcklEfSB8fCBkaWUgIkdvdCBubyBVc2VySUQhIjsKCiAgICByZXR1cm4gJFNlbGY7Cn0KCnN1YiBSdW4gewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICBteSAkRGF0ZVRpbWVPYmplY3QgICA9ICRLZXJuZWw6Ok9NLT5DcmVhdGUoJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScpOwogICAgbXkgJERhdGVUaW1lU2V0dGluZ3MgPSAkRGF0ZVRpbWVPYmplY3QtPkdldCgpOwoKICAgICMgZ2V0IHRpbWUgYWNjb3VudGluZyBvYmplY3QKICAgIG15ICRUaW1lQWNjb3VudGluZ09iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycpOwoKICAgIG15ICVVc2VyID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyQ3VycmVudFBlcmlvZEdldCgKICAgICAgICBZZWFyICA9PiAkRGF0ZVRpbWVTZXR0aW5ncy0+e1llYXJ9LAogICAgICAgIE1vbnRoID0+ICREYXRlVGltZVNldHRpbmdzLT57TW9udGh9LAogICAgICAgIERheSAgID0+ICREYXRlVGltZVNldHRpbmdzLT57RGF5fSwKICAgICk7CiAgICBpZiAoICRVc2VyeyAkU2VsZi0+e1VzZXJJRH0gfSApIHsKICAgICAgICBteSAlSW5jb21wbGV0ZVdvcmtpbmdEYXlzID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Xb3JraW5nVW5pdHNDb21wbGV0bmVzc0NoZWNrKAogICAgICAgICAgICBVc2VySUQgPT4gJFNlbGYtPntVc2VySUR9LAogICAgICAgICk7CgogICAgICAgICMgcmVkaXJlY3QgaWYgaW5jb21wbGV0ZSB3b3JraW5nIGRheSBhcmUgb3V0IG9mIHJhbmdlCiAgICAgICAgbXkgJExheW91dE9iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6T3V0cHV0OjpIVE1MOjpMYXlvdXQnKTsKICAgICAgICBteSAkUHJpb3JpdHkgICAgID0gKCAkSW5jb21wbGV0ZVdvcmtpbmdEYXlze0VuZm9yY2VJbnNlcnR9ICkgPyAnRXJyb3InIDogJ1dhcm5pbmcnOwogICAgICAgIGlmICggJEluY29tcGxldGVXb3JraW5nRGF5c3tXYXJuaW5nfSB8fCAkSW5jb21wbGV0ZVdvcmtpbmdEYXlze0VuZm9yY2VJbnNlcnR9ICkgewogICAgICAgICAgICByZXR1cm4gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpPdXRwdXQ6OkhUTUw6OkxheW91dCcpLT5Ob3RpZnkoCiAgICAgICAgICAgICAgICBQcmlvcml0eSA9PiAkUHJpb3JpdHksCiAgICAgICAgICAgICAgICBMaW5rICAgICA9PiAkTGF5b3V0T2JqZWN0LT57QmFzZWxpbmt9IC4gJ0FjdGlvbj1BZ2VudFRpbWVBY2NvdW50aW5nRWRpdCcsCiAgICAgICAgICAgICAgICBJbmZvICAgICA9PiBUcmFuc2xhdGFibGUoJ1BsZWFzZSBpbnNlcnQgeW91ciB3b3JraW5nIGhvdXJzIScpLAogICAgICAgICAgICApOwogICAgICAgIH0KICAgIH0KCiAgICByZXR1cm4gJyc7Cn0KCjE7Cg==</File>
        <File Location="Kernel/Output/HTML/ToolBar/IncompleteWorkingDays.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6T3V0cHV0OjpIVE1MOjpUb29sQmFyOjpJbmNvbXBsZXRlV29ya2luZ0RheXM7Cgp1c2Ugc3RyaWN0Owp1c2Ugd2FybmluZ3M7Cgp1c2UgS2VybmVsOjpMYW5ndWFnZSBxdyhUcmFuc2xhdGFibGUpOwoKb3VyIEBPYmplY3REZXBlbmRlbmNpZXMgPSAoCiAgICAnS2VybmVsOjpDb25maWcnLAogICAgJ0tlcm5lbDo6T3V0cHV0OjpIVE1MOjpMYXlvdXQnLAogICAgJ0tlcm5lbDo6U3lzdGVtOjpHcm91cCcsCiAgICAnS2VybmVsOjpTeXN0ZW06OlRpbWVBY2NvdW50aW5nJywKKTsKCnN1YiBuZXcgewogICAgbXkgKCAkVHlwZSwgJVBhcmFtICkgPSBAXzsKCiAgICBteSAkU2VsZiA9IHt9OwogICAgYmxlc3MoICRTZWxmLCAkVHlwZSApOwoKICAgICRTZWxmLT57VXNlcklEfSA9ICRQYXJhbXtVc2VySUR9IHx8IGRpZSAiR290IG5vIFVzZXJJRCEiOwoKICAgIHJldHVybiAkU2VsZjsKfQoKc3ViIFJ1biB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgICMgRGVmaW5lIGFjdGlvbiBhbmQgZ2V0IGl0cyBmcm9udGVuZCBtb2R1bGUgcmVnaXN0cmF0aW9uLgogICAgbXkgJEFjdGlvbiA9ICdBZ2VudFRpbWVBY2NvdW50aW5nRWRpdCc7CiAgICBteSAkQ29uZmlnID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpDb25maWcnKS0+R2V0KCdGcm9udGVuZDo6TW9kdWxlJyktPnskQWN0aW9ufTsKCiAgICAjIERvIG5vdCBzaG93IGljb24gaWYgZnJvbnRlbmQgbW9kdWxlIGlzIG5vdCByZWdpc3RlcmVkLgogICAgcmV0dXJuIGlmICEkQ29uZmlnOwoKICAgICMgR2V0IGdyb3VwIG5hbWVzIGZyb20gY29uZmlnLgogICAgbXkgQEdyb3VwTmFtZXMgPSBAeyAkQ29uZmlnLT57R3JvdXB9IHx8IFtdIH07CgogICAgIyBJZiBhY2Nlc3MgaXMgcmVzdHJpY3RlZCwgYWxsb3cgYWNjZXNzIG9ubHkgaWYgdXNlciBoYXMgYXBwcm9wcmlhdGUgcGVybWlzc2lvbnMgaW4gY29uZmlndXJlZCBncm91cChzKS4KICAgIGlmIChAR3JvdXBOYW1lcykgewoKICAgICAgICBteSAkR3JvdXBPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6R3JvdXAnKTsKCiAgICAgICAgIyBHZXQgdXNlciBncm91cHMsIHdoZXJlIHRoZSB1c2VyIGhhcyB0aGUgYXBwcm9wcmlhdGUgcGVybWlzc2lvbnMuCiAgICAgICAgbXkgJUdyb3VwTGlzdCA9ICRHcm91cE9iamVjdC0+R3JvdXBNZW1iZXJMaXN0KAogICAgICAgICAgICBVc2VySUQgPT4gJFNlbGYtPntVc2VySUR9LAogICAgICAgICAgICBUeXBlICAgPT4gJ3J3JywKICAgICAgICAgICAgUmVzdWx0ID0+ICdIQVNIJywKICAgICAgICApOwoKICAgICAgICBteSAkUGVybWlzc2lvbiA9IDA7CgogICAgICAgIEdST1VQOgogICAgICAgIGZvciBteSAkR3JvdXBOYW1lIChAR3JvdXBOYW1lcykgewogICAgICAgICAgICBuZXh0IEdST1VQIGlmICEkR3JvdXBOYW1lOwoKICAgICAgICAgICAgIyBHZXQgdGhlIGdyb3VwIElELgogICAgICAgICAgICBteSAkR3JvdXBJRCA9ICRHcm91cE9iamVjdC0+R3JvdXBMb29rdXAoCiAgICAgICAgICAgICAgICBHcm91cCA9PiAkR3JvdXBOYW1lLAogICAgICAgICAgICApOwogICAgICAgICAgICBuZXh0IEdST1VQIGlmICEkR3JvdXBJRDsKCiAgICAgICAgICAgICMgU3RvcCBjaGVja2luZyBpZiBtZW1iZXJzaGlwIGluIGF0IGxlYXN0IG9uZSBncm91cCBpcyBmb3VuZC4KICAgICAgICAgICAgaWYgKCAkR3JvdXBMaXN0eyRHcm91cElEfSApIHsKICAgICAgICAgICAgICAgICRQZXJtaXNzaW9uID0gMTsKICAgICAgICAgICAgICAgIGxhc3QgR1JPVVA7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgICMgRGVueSBhY2Nlc3MgaWYgdGhlIGFnZW50IGRvZXNuJ3QgaGF2ZSB0aGUgYXBwcm9wcmlhdGUgcGVybWlzc2lvbnMuCiAgICAgICAgcmV0dXJuIGlmICEkUGVybWlzc2lvbjsKICAgIH0KCiAgICBteSAkRGF0ZVRpbWVPYmplY3QgICA9ICRLZXJuZWw6Ok9NLT5DcmVhdGUoJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScpOwogICAgbXkgJERhdGVUaW1lU2V0dGluZ3MgPSAkRGF0ZVRpbWVPYmplY3QtPkdldCgpOwoKICAgIG15ICRUaW1lQWNjb3VudGluZ09iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycpOwoKICAgIG15ICVVc2VyQ3VycmVudFBlcmlvZCA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+VXNlckN1cnJlbnRQZXJpb2RHZXQoCiAgICAgICAgWWVhciAgPT4gJERhdGVUaW1lU2V0dGluZ3MtPntZZWFyfSwKICAgICAgICBNb250aCA9PiAkRGF0ZVRpbWVTZXR0aW5ncy0+e01vbnRofSwKICAgICAgICBEYXkgICA9PiAkRGF0ZVRpbWVTZXR0aW5ncy0+e0RheX0sCiAgICApOwoKICAgICMgRGVueSBhY2Nlc3MsIGlmIHVzZXIgaGFzIG5vIHZhbGlkIHBlcmlvZC4KICAgIHJldHVybiBpZiAhJFVzZXJDdXJyZW50UGVyaW9keyAkU2VsZi0+e1VzZXJJRH0gfTsKCiAgICAjIEdldCB0aGUgbnVtYmVyIG9mIGluY29tcGxldGUgd29ya2luZyBkYXlzLgogICAgbXkgJENvdW50ICAgICAgICAgICAgICAgICA9IDA7CiAgICBteSAlSW5jb21wbGV0ZVdvcmtpbmdEYXlzID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Xb3JraW5nVW5pdHNDb21wbGV0bmVzc0NoZWNrKAogICAgICAgIFVzZXJJRCA9PiAkU2VsZi0+e1VzZXJJRH0sCiAgICApOwoKICAgIFlFQVJJRDoKICAgIGZvciBteSAkWWVhcklEICggc29ydCBrZXlzICV7ICRJbmNvbXBsZXRlV29ya2luZ0RheXN7SW5jb21wbGV0ZX0gfSApIHsKCiAgICAgICAgbmV4dCBZRUFSSUQgaWYgISRZZWFySUQ7CiAgICAgICAgbmV4dCBZRUFSSUQgaWYgISRJbmNvbXBsZXRlV29ya2luZ0RheXN7SW5jb21wbGV0ZX17JFllYXJJRH07CiAgICAgICAgbmV4dCBZRUFSSUQgaWYgcmVmICRJbmNvbXBsZXRlV29ya2luZ0RheXN7SW5jb21wbGV0ZX17JFllYXJJRH0gbmUgJ0hBU0gnOwoKICAgICAgICAjIEV4dHJhY3QgeWVhci4KICAgICAgICBteSAlWWVhciA9ICV7ICRJbmNvbXBsZXRlV29ya2luZ0RheXN7SW5jb21wbGV0ZX17JFllYXJJRH0gfTsKCiAgICAgICAgTU9OVEg6CiAgICAgICAgZm9yIG15ICRNb250aElEICggc29ydCBrZXlzICVZZWFyICkgewoKICAgICAgICAgICAgbmV4dCBNT05USCBpZiAhJE1vbnRoSUQ7CiAgICAgICAgICAgIG5leHQgTU9OVEggaWYgISRZZWFyeyRNb250aElEfTsKICAgICAgICAgICAgbmV4dCBNT05USCBpZiByZWYgJFllYXJ7JE1vbnRoSUR9IG5lICdIQVNIJzsKCiAgICAgICAgICAgICMgZXh0cmFjdCBtb250aAogICAgICAgICAgICBteSAlTW9udGggPSAleyAkWWVhcnskTW9udGhJRH0gfTsKCiAgICAgICAgICAgICRDb3VudCArPSBzY2FsYXIga2V5cyAlTW9udGg7CgogICAgICAgICAgICAjIFJlbW92ZSBjdXJyZW50IGRheSBiZWNhdXNlIGl0IG1ha2VzIG5vIHNlbnNlIHRvIHNob3cgdGhlIGN1cnJlbnQgZGF5IGFzIGluY29tcGxldGUuCiAgICAgICAgICAgIGlmICgKICAgICAgICAgICAgICAgICREYXRlVGltZVNldHRpbmdzLT57WWVhcn0gZXEgJFllYXJJRAogICAgICAgICAgICAgICAgJiYgJE1vbnRoSUQgZXEgc3ByaW50ZiggJyUwMmQnLCAkRGF0ZVRpbWVTZXR0aW5ncy0+e01vbnRofSApCiAgICAgICAgICAgICAgICAmJiBkZWZpbmVkICRNb250aHsgc3ByaW50ZiggJyUwMmQnLCAkRGF0ZVRpbWVTZXR0aW5ncy0+e0RheX0gKSB9CiAgICAgICAgICAgICAgICApCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICRDb3VudC0tOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIG15ICRMYXlvdXRPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6Ok91dHB1dDo6SFRNTDo6TGF5b3V0Jyk7CgogICAgIyBHZXQgdG9vbGJhciBvYmplY3QgcGFyYW1ldGVycy4KICAgIG15ICRDbGFzcyA9ICRQYXJhbXtDb25maWd9LT57Q3NzQ2xhc3N9OwogICAgbXkgJFRleHQgID0gVHJhbnNsYXRhYmxlKCdJbmNvbXBsZXRlIHdvcmtpbmcgZGF5cycpOwogICAgbXkgJFVSTCAgID0gJExheW91dE9iamVjdC0+e0Jhc2VsaW5rfTsKICAgIG15ICRJY29uICA9ICRQYXJhbXtDb25maWd9LT57SWNvbn07CgogICAgcmV0dXJuICgpIGlmICEkQ291bnQ7CgogICAgbXkgJVJldHVybiA9ICgKICAgICAgICAxMDAwODEwID0+IHsKICAgICAgICAgICAgQmxvY2sgICAgICAgPT4gJ1Rvb2xCYXJJdGVtJywKICAgICAgICAgICAgRGVzY3JpcHRpb24gPT4gJFRleHQsCiAgICAgICAgICAgIENvdW50ICAgICAgID0+ICRDb3VudCwKICAgICAgICAgICAgQ2xhc3MgICAgICAgPT4gJENsYXNzLAogICAgICAgICAgICBJY29uICAgICAgICA9PiAkSWNvbiwKICAgICAgICAgICAgTGluayAgICAgICAgPT4gJFVSTCAuICdBY3Rpb249JyAuICRBY3Rpb24sCiAgICAgICAgICAgIEFjY2Vzc0tleSAgID0+ICcnLAogICAgICAgIH0sCiAgICApOwoKICAgIHJldHVybiAlUmV0dXJuOwp9CgoxOwo=</File>
        <File Location="Kernel/Output/JavaScript/Templates/Standard/Agent/TimeAccounting/Option.html.tmpl" Permission="660" Encode="Base64">IyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBzb2Z0d2FyZSBjb21lcyB3aXRoIEFCU09MVVRFTFkgTk8gV0FSUkFOVFkuIEZvciBkZXRhaWxzLCBzZWUKIyB0aGUgZW5jbG9zZWQgZmlsZSBDT1BZSU5HIGZvciBsaWNlbnNlIGluZm9ybWF0aW9uIChHUEwpLiBJZiB5b3UKIyBkaWQgbm90IHJlY2VpdmUgdGhpcyBmaWxlLCBzZWUgaHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMy4wLnR4dC4KIyAtLQoKPG9wdGlvbiB2YWx1ZT0ie3sgVmFsdWUgfX0iIHt7ICJzZWxlY3RlZCIgaWYgU2VsZWN0ZWQgfX0+e3sgVGV4dCB9fTwvb3B0aW9uPgo=</File>
        <File Location="Kernel/Output/JavaScript/Templates/Standard/Agent/TimeAccounting/Dialog/AjaxLoader.html.tmpl" Permission="660" Encode="Base64">IyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBzb2Z0d2FyZSBjb21lcyB3aXRoIEFCU09MVVRFTFkgTk8gV0FSUkFOVFkuIEZvciBkZXRhaWxzLCBzZWUKIyB0aGUgZW5jbG9zZWQgZmlsZSBDT1BZSU5HIGZvciBsaWNlbnNlIGluZm9ybWF0aW9uIChHUEwpLiBJZiB5b3UKIyBkaWQgbm90IHJlY2VpdmUgdGhpcyBmaWxlLCBzZWUgaHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMy4wLnR4dC4KIyAtLQoKPHNwYW4gY2xhc3M9IkFKQVhMb2FkZXIiPjwvc3Bhbj4K</File>
        <File Location="Kernel/System/Ticket/Event/TimeAccountingTicketTimeUnitsSync.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAxOS0yMDI2IFJvdGhlciBPU1MgR21iSCwgaHR0cHM6Ly9vdG9iby5pby8KIyAtLQojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5IGl0IHVuZGVyCiMgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLCBidXQgV0lUSE9VVAojIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTCiMgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gSWYgbm90LCBzZWUgPGh0dHBzOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KIyAtLQoKcGFja2FnZSBLZXJuZWw6OlN5c3RlbTo6VGlja2V0OjpFdmVudDo6VGltZUFjY291bnRpbmdUaWNrZXRUaW1lVW5pdHNTeW5jOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwoKdXNlIEtlcm5lbDo6U3lzdGVtOjpWYXJpYWJsZUNoZWNrIHF3KDphbGwpOwoKb3VyIEBPYmplY3REZXBlbmRlbmNpZXMgPSAoCiAgICAnS2VybmVsOjpDb25maWcnLAogICAgJ0tlcm5lbDo6U3lzdGVtOjpDdXN0b21lclVzZXInLAogICAgJ0tlcm5lbDo6U3lzdGVtOjpEeW5hbWljRmllbGQnLAogICAgJ0tlcm5lbDo6U3lzdGVtOjpEeW5hbWljRmllbGQ6OkJhY2tlbmQnLAogICAgJ0tlcm5lbDo6U3lzdGVtOjpMb2cnLAogICAgJ0tlcm5lbDo6U3lzdGVtOjpUaWNrZXQnLAogICAgJ0tlcm5lbDo6U3lzdGVtOjpUaWNrZXQ6OkFydGljbGUnLAogICAgJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycsCiAgICAnS2VybmVsOjpTeXN0ZW06OkN1c3RvbWVyQ29tcGFueScsCik7CgpzdWIgbmV3IHsKICAgIG15ICggJFR5cGUsICVQYXJhbSApID0gQF87CgogICAgIyBhbGxvY2F0ZSBuZXcgaGFzaCBmb3Igb2JqZWN0CiAgICBteSAkU2VsZiA9IHt9OwogICAgYmxlc3MoICRTZWxmLCAkVHlwZSApOwoKICAgIHJldHVybiAkU2VsZjsKfQoKc3ViIFJ1biB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgICMgY2hlY2sgbmVlZGVkIHN0dWZmCiAgICBmb3IgKHF3KERhdGEgRXZlbnQgQ29uZmlnKSkgewogICAgICAgIGlmICggISRQYXJhbXskX30gKSB7CiAgICAgICAgICAgICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpMb2cnKS0+TG9nKAogICAgICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICAgICAgICAgIE1lc3NhZ2UgID0+ICJOZWVkICRfISIKICAgICAgICAgICAgKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgIH0KCiAgICByZXR1cm4gaWYgJFBhcmFte0V2ZW50fSBuZSAnVGlja2V0QWNjb3VudFRpbWUnOwoKICAgIGZvciAocXcoVGlja2V0SUQgQXJ0aWNsZUlEKSkgewogICAgICAgIGlmICggISRQYXJhbXtEYXRhfS0+eyRffSApIHsKICAgICAgICAgICAgJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkxvZycpLT5Mb2coCiAgICAgICAgICAgICAgICBQcmlvcml0eSA9PiAnZXJyb3InLAogICAgICAgICAgICAgICAgTWVzc2FnZSAgPT4gIk5lZWQgJF8gaW4gRGF0YSEiCiAgICAgICAgICAgICk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICB9CgogICAgbXkgJENvbmZpZ09iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6Q29uZmlnJyk7CgogICAgIyBnZXQgdGFzayBjb25maWcKICAgIG15ICRTeW5jVG9QZXJzb25hbFRpbWUgID0gJENvbmZpZ09iamVjdC0+R2V0KCdUaW1lQWNjb3VudGluZzo6VGlja2V0U3luYzo6RW5hYmxlJyk7CiAgICBteSAkU3luY1RvQXJ0aWNsZURGTmFtZSA9ICRDb25maWdPYmplY3QtPkdldCgnVGltZUFjY291bnRpbmc6OlRpY2tldFN5bmM6OlNhdmVUaW1lVW5pdFRvQXJ0aWNsZUZpZWxkJyk7CgogICAgIyByZXR1cm4gaWYgbm8gdGFzayBpcyBjb25maWd1cmVkCiAgICByZXR1cm4gMSBpZiAhJFN5bmNUb1BlcnNvbmFsVGltZSAmJiAhJFN5bmNUb0FydGljbGVERk5hbWU7CgogICAgbXkgJFN1Y2Nlc3MgPSAxOwoKICAgICMgc3luYyBwZXJzb25hbCB0aW1lIChvbmx5LCBpZiB0aW1lIHVuaXRzIGFyZSBub3QgMCkKICAgIGlmICggJFN5bmNUb1BlcnNvbmFsVGltZSAmJiAkUGFyYW17RGF0YX17VGltZVVuaXRzfSApIHsKICAgICAgICBteSAkVGlja2V0T2JqZWN0ICAgICAgICAgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VGlja2V0Jyk7CiAgICAgICAgbXkgJEFydGljbGVPYmplY3QgICAgICAgID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlRpY2tldDo6QXJ0aWNsZScpOwogICAgICAgIG15ICRUaW1lQWNjb3VudGluZ09iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycpOwoKICAgICAgICBteSAkQXJ0aWNsZUJhY2tlbmRPYmplY3QgPSAkQXJ0aWNsZU9iamVjdC0+QmFja2VuZEZvckFydGljbGUoCiAgICAgICAgICAgIFRpY2tldElEICA9PiAkUGFyYW17RGF0YX17VGlja2V0SUR9LAogICAgICAgICAgICBBcnRpY2xlSUQgPT4gJFBhcmFte0RhdGF9e0FydGljbGVJRH0sCiAgICAgICAgKTsKCiAgICAgICAgIyBHZXQgdGhlIGFkZGVkIGFydGljbGUgd2l0aCBhbGwgcmVxdWlyZWQgaW5mb3JtYXRpb24KICAgICAgICBteSAlQXJ0aWNsZSA9ICRBcnRpY2xlQmFja2VuZE9iamVjdC0+QXJ0aWNsZUdldCgKICAgICAgICAgICAgVGlja2V0SUQgICAgICA9PiAkUGFyYW17RGF0YX17VGlja2V0SUR9LAogICAgICAgICAgICBBcnRpY2xlSUQgICAgID0+ICRQYXJhbXtEYXRhfXtBcnRpY2xlSUR9LAogICAgICAgICAgICBEeW5hbWljRmllbGRzID0+IDEsCiAgICAgICAgKTsKCiAgICAgICAgIyBBZGQgVGltZVVuaXRzIHRvIHRoZSBBcnRpY2xlIGhhc2gKICAgICAgICAkQXJ0aWNsZXtUaW1lVW5pdHN9ID0gJFBhcmFte0RhdGF9e1RpbWVVbml0c307CgogICAgICAgICMgTm93IHdlIHNwbGl0IHRoZSBkYXRlIHRvIHllYXIgbW9udGggZGF5CiAgICAgICAgbXkgJFllYXI7CiAgICAgICAgbXkgJE1vbnRoOwogICAgICAgIG15ICREYXk7CiAgICAgICAgaWYgKCAkQXJ0aWNsZXtDcmVhdGVUaW1lfSA9fiAvXihcZFxkXGRcZClcLShcZFxkKVwtKFxkXGQpLiokLyApIHsKICAgICAgICAgICAgJFllYXIgID0gJDE7CiAgICAgICAgICAgICRNb250aCA9ICQyOwogICAgICAgICAgICAkRGF5ICAgPSAkMzsKICAgICAgICB9CgogICAgICAgICMgTm93IEkgd3JpdGUgdGhlIHRpbWUgdW5pdCB0byB0aW1lYWNjb3VudGluZyBtb2R1bGUKICAgICAgICAjIEdldCBUaW1lQWNjb3VuaW5nIHByb2plY3QgYW5kIGFjdGlvbiwgd2hpY2ggd2FzIHNldCB3aXRoIFRpbWVVbml0CiAgICAgICAgbXkgJFByb2plY3RJRDsKICAgICAgICBteSAkQWN0aW9uSUQ7CgogICAgICAgIG15ICREZWZhdWx0UHJvamVjdElEID0gJENvbmZpZ09iamVjdC0+R2V0KCdUaW1lQWNjb3VudGluZzo6VGlja2V0U3luYzo6RGVmYXVsdFByb2plY3RJRCcpOwogICAgICAgIG15ICREZWZhdWx0QWN0aW9uSUQgID0gJENvbmZpZ09iamVjdC0+R2V0KCdUaW1lQWNjb3VudGluZzo6VGlja2V0U3luYzo6RGVmYXVsdEFjdGlvbklEJyk7CgogICAgICAgICMgRmlyc3Qgb2YgYWxsLCB3ZSBjaGVjayBpZiB0aGUgcHJvamVjdCAoY3VzdG9tZXJfaWQpIGFscmVhZHkgZXhpc3RzIG9yIG5lZWQgdG8gY3JlYXRlCiAgICAgICAgbXkgJVRpY2tldCA9ICRUaWNrZXRPYmplY3QtPlRpY2tldEdldCgKICAgICAgICAgICAgVGlja2V0SUQgPT4gJFBhcmFte0RhdGF9e1RpY2tldElEfSwKICAgICAgICAgICAgVXNlcklEICAgPT4gMSwKICAgICAgICApOwoKICAgICAgICBteSAkUHJvamVjdE5hbWUgPSAkU2VsZi0+X0NoZWNrUHJvamVjdE5hbWUoCiAgICAgICAgICAgIFByb2plY3ROYW1lID0+ICRUaWNrZXR7Q3VzdG9tZXJJRH0gfHwgJycsCiAgICAgICAgKTsKCiAgICAgICAgbXkgJVByb2plY3REYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Qcm9qZWN0R2V0KCBQcm9qZWN0ID0+ICRQcm9qZWN0TmFtZSApOwoKICAgICAgICAjIFdlIG5lZWQgdG8gY3JlYXRlIHRoZSBwcm9qZWN0IGlmIGl0IG5vdCBleGlzdC4KICAgICAgICBpZiAoICFJc0hhc2hSZWZXaXRoRGF0YSggXCVQcm9qZWN0RGF0YSApICkgewogICAgICAgICAgICAkUHJvamVjdElEID0gJFNlbGYtPl9DcmVhdGVQcm9qZWN0KAogICAgICAgICAgICAgICAgUHJvamVjdE5hbWUgPT4gJFByb2plY3ROYW1lLAogICAgICAgICAgICAgICAgWWVhciAgICAgICAgPT4gJFllYXIsCiAgICAgICAgICAgICAgICBNb250aCAgICAgICA9PiAkTW9udGgsCiAgICAgICAgICAgICAgICBEYXkgICAgICAgICA9PiAkRGF5LAogICAgICAgICAgICApOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgJFByb2plY3RJRCA9ICRQcm9qZWN0RGF0YXtJRH07CiAgICAgICAgfQoKICAgICAgICAjIEdldCB0aGUgcmlnaHQgVGltZUFjY291bnRpbmcgQWN0aW9uIGZvciB0aGUgZW50cnkKICAgICAgICBteSAkU2VydmljZVRvQWN0aW9uSGFzaFJlZiA9ICRDb25maWdPYmplY3QtPkdldCgnVGltZUFjY291bnRpbmc6OlRpY2tldFN5bmM6OlNlcnZpY2VUb0FjdGlvbicpOwoKICAgICAgICBpZiAoIElzSGFzaFJlZldpdGhEYXRhKCRTZXJ2aWNlVG9BY3Rpb25IYXNoUmVmKSApIHsKCiAgICAgICAgICAgIEFDVElPTjoKICAgICAgICAgICAgZm9yIG15ICRBY3Rpb24gKCBrZXlzICUkU2VydmljZVRvQWN0aW9uSGFzaFJlZiApIHsKICAgICAgICAgICAgICAgIG15ICRTZXJ2aWNlQXJyYXlSZWYgPSAkU2VydmljZVRvQWN0aW9uSGFzaFJlZi0+eyRBY3Rpb259OwoKICAgICAgICAgICAgICAgIFNFUlZJQ0U6CiAgICAgICAgICAgICAgICBmb3IgbXkgJFNlcnZpY2UgKEAkU2VydmljZUFycmF5UmVmKSB7CiAgICAgICAgICAgICAgICAgICAgbmV4dCBTRVJWSUNFIGlmICRUaWNrZXR7U2VydmljZX0gIX4gLyRTZXJ2aWNlL2k7CgogICAgICAgICAgICAgICAgICAgICMgTm93IHdvIGhhdmUgdGhlIHJpZ2h0IHNlcnZpY2UgYW5kIGFjdGlvbi4gV2UgbmVlZCBvbmx5IHRoZSBJRCBpbiB0aGUgbmV4dCBzdGVwIQogICAgICAgICAgICAgICAgICAgIG15ICVBY3Rpb25EYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5BY3Rpb25HZXQoIEFjdGlvbiA9PiAkQWN0aW9uICk7CiAgICAgICAgICAgICAgICAgICAgJEFjdGlvbklEID0gJEFjdGlvbkRhdGF7SUR9OwogICAgICAgICAgICAgICAgICAgIGxhc3QgQUNUSU9OOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICAjIE5vIEFjdGlvbiBleGlzdHMgZm9yIHRoaXMgc2VydmljZSwgc28gd2UgdXNlIHRoZSBkZWZhdWx0IGFjdGlvbgogICAgICAgICAgICBpZiAoICEkQWN0aW9uSUQgKSB7CiAgICAgICAgICAgICAgICAkQWN0aW9uSUQgPSAkRGVmYXVsdEFjdGlvbklEOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICAkQWN0aW9uSUQgPSAkRGVmYXVsdEFjdGlvbklEOwogICAgICAgIH0KCiAgICAgICAgaWYgKCAkWWVhciAmJiAkTW9udGggJiYgJERheSAmJiAkQXJ0aWNsZXtDcmVhdGVCeX0gKSB7CgogICAgICAgICAgICBteSAkVGlja2V0TnVtYmVyID0gJFRpY2tldE9iamVjdC0+VGlja2V0TnVtYmVyTG9va3VwKAogICAgICAgICAgICAgICAgVGlja2V0SUQgPT4gJFBhcmFte0RhdGF9e1RpY2tldElEfSwKICAgICAgICAgICAgKTsKCiAgICAgICAgICAgIG15ICRDdXJyZW50VGltZU9iamVjdCA9ICRLZXJuZWw6Ok9NLT5DcmVhdGUoJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScpOwoKICAgICAgICAgICAgIyB0aGUgd29ya2luZyB1bml0IG1heSBjb25jZXJuIHRvIHNvbWUgYXJ0aWNsZSBlZGl0aW9uIGxhdGVyIHRvIHRoZSBhcnRpY2xlIGNyZWF0aW9uCiAgICAgICAgICAgICMgdGhlcmVmb3JlIGl0IG11c3QgYmUgYXNzaWduZWQgdGhlIGN1cnJlbnQgZGF0ZSBpbnN0ZWFkIG9mIHRoZSBhcnRpY2xlIGNyZWF0aW9uIGRhdGUKICAgICAgICAgICAgbXkgJEN1cnJlbnRUaW1lVmFsdWUgPSAkQ3VycmVudFRpbWVPYmplY3QtPkdldCgpOwoKICAgICAgICAgICAgJFN1Y2Nlc3MgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPldvcmtpbmdVbml0c0luc2VydCgKICAgICAgICAgICAgICAgIFllYXIgICAgICAgICA9PiAkQ3VycmVudFRpbWVWYWx1ZS0+e1llYXJ9LAogICAgICAgICAgICAgICAgTW9udGggICAgICAgID0+ICRDdXJyZW50VGltZVZhbHVlLT57TW9udGh9LAogICAgICAgICAgICAgICAgRGF5ICAgICAgICAgID0+ICRDdXJyZW50VGltZVZhbHVlLT57RGF5fSwKICAgICAgICAgICAgICAgIExlYXZlRGF5ICAgICA9PiAwLAogICAgICAgICAgICAgICAgU2ljayAgICAgICAgID0+IDAsCiAgICAgICAgICAgICAgICBPdmVydGltZSAgICAgPT4gMCwKICAgICAgICAgICAgICAgIFdvcmtpbmdVbml0cyA9PiBbCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBQcm9qZWN0SUQgID0+ICRQcm9qZWN0SUQsCiAgICAgICAgICAgICAgICAgICAgICAgIEFjdGlvbklEICAgPT4gJEFjdGlvbklELAogICAgICAgICAgICAgICAgICAgICAgICBSZW1hcmsgICAgID0+ICdUaW1lOiAnIC4gJEN1cnJlbnRUaW1lT2JqZWN0LT5Gb3JtYXQoIEZvcm1hdCA9PiAnJUg6JU0nICkgLiAnIC0gJyAuICRBcnRpY2xle1N1YmplY3R9LAogICAgICAgICAgICAgICAgICAgICAgICBUaWNrZXRJRCAgID0+ICRQYXJhbXtEYXRhfS0+e1RpY2tldElEfSwKICAgICAgICAgICAgICAgICAgICAgICAgQXJ0aWNsZUlEICA9PiAkUGFyYW17RGF0YX0tPntBcnRpY2xlSUR9LAogICAgICAgICAgICAgICAgICAgICAgICBQZXJpb2QgICAgID0+ICRBcnRpY2xle1RpbWVVbml0c30gLyA2MCwKICAgICAgICAgICAgICAgICAgICAgICAgQmFzZU1vZHVsZSA9PiAnVGlja2V0JywKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgXSwKCiAgICAgICAgICAgICAgICAjIHVzZSBnaXZlbiB1c2VyIGlkIGluc3RlYWQgb2YgYXJ0aWNsZSBjcmVhdG9yIHVzZXIgaWQgdG8gdGFrZSBBcnRpY2xlRWRpdCBpbnRvIGFjY291bnQKICAgICAgICAgICAgICAgIFVzZXJJRCAgICAgICAgID0+ICRQYXJhbXtVc2VySUR9LAogICAgICAgICAgICAgICAgRXh0ZXJuYWxJbnNlcnQgPT4gMSwKICAgICAgICAgICAgKTsKCiAgICAgICAgICAgIGlmICggISRTdWNjZXNzICkgewogICAgICAgICAgICAgICAgJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkxvZycpLT5Mb2coCiAgICAgICAgICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICAgICAgICAgICAgICBNZXNzYWdlICA9PiAiQ291bGQgbm90IGluc2VydCB3b3JraW5nIHVuaXRzICgiIC4gKCAkQXJ0aWNsZXtUaW1lVW5pdHN9IC8gNjAgKQogICAgICAgICAgICAgICAgICAgICAgICAuICIpIG9mIGFydGljbGUgKEFydGljbGVJRDogJFBhcmFte0RhdGF9e0FydGljbGVJRH0sIFRpY2tldElEOiAkUGFyYW17RGF0YX17VGlja2V0SUR9KSBmb3IgJEFydGljbGV7Q3JlYXRlQnl9LiIKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpMb2cnKS0+TG9nKAogICAgICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICAgICAgICAgIE1lc3NhZ2UgID0+ICJFcnJvciBpbiByZWNlaXZpbmcgcGFyYW1ldGVycyBmb3Igd29ya2luZyB1bml0cyBpbnNlcnRpb24gKCIgLiAoICRBcnRpY2xle1RpbWVVbml0c30gLyA2MCApCiAgICAgICAgICAgICAgICAgICAgLiAiKSBvZiBhcnRpY2xlIChBcnRpY2xlSUQ6ICRQYXJhbXtEYXRhfXtBcnRpY2xlSUR9LCBUaWNrZXRJRDogJFBhcmFte0RhdGF9e1RpY2tldElEfSkuIgogICAgICAgICAgICApOwoKICAgICAgICAgICAgJFN1Y2Nlc3MgPSAwOwogICAgICAgIH0KICAgIH0KCiAgICAjIHN5bmMgYXJ0aWNsZSB0aW1lIHRvIERGCiAgICBpZiAoJFN5bmNUb0FydGljbGVERk5hbWUpIHsKICAgICAgICBteSAkRHluYW1pY0ZpZWxkQ29uZmlnID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkR5bmFtaWNGaWVsZCcpLT5EeW5hbWljRmllbGRHZXQoCiAgICAgICAgICAgIE5hbWUgPT4gJFN5bmNUb0FydGljbGVERk5hbWUsCiAgICAgICAgKTsKCiAgICAgICAgaWYgKCREeW5hbWljRmllbGRDb25maWcpIHsKICAgICAgICAgICAgbXkgJERGU3VjY2VzcyA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpEeW5hbWljRmllbGQ6OkJhY2tlbmQnKS0+VmFsdWVTZXQoCiAgICAgICAgICAgICAgICBEeW5hbWljRmllbGRDb25maWcgPT4gJER5bmFtaWNGaWVsZENvbmZpZywKICAgICAgICAgICAgICAgIE9iamVjdElEICAgICAgICAgICA9PiAkUGFyYW17RGF0YX17QXJ0aWNsZUlEfSwKICAgICAgICAgICAgICAgIFZhbHVlICAgICAgICAgICAgICA9PiAkUGFyYW17RGF0YX17VGltZVVuaXRzfSwKICAgICAgICAgICAgICAgIFVzZXJJRCAgICAgICAgICAgICA9PiAxLAogICAgICAgICAgICApOwoKICAgICAgICAgICAgJFN1Y2Nlc3MgPSAkU3VjY2VzcyA/ICRERlN1Y2Nlc3MgOiAkU3VjY2VzczsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpMb2cnKS0+TG9nKAogICAgICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICAgICAgICAgIE1lc3NhZ2UgID0+ICJObyBkeW5hbWljIGZpZWxkICckU3luY1RvQXJ0aWNsZURGTmFtZSchIiwKICAgICAgICAgICAgKTsKCiAgICAgICAgICAgICRTdWNjZXNzID0gMDsKICAgICAgICB9CiAgICB9CgogICAgcmV0dXJuICRTdWNjZXNzOwp9CgpzdWIgX0NoZWNrUHJvamVjdE5hbWUgewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICBteSAkVGltZUFjY291bnRpbmdPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VGltZUFjY291bnRpbmcnKTsKICAgIG15ICRDb25maWdPYmplY3QgICAgICAgICA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6Q29uZmlnJyk7CgogICAgbXkgJERlZmF1bHRQcm9qZWN0SUQgPSAkQ29uZmlnT2JqZWN0LT5HZXQoJ1RpbWVBY2NvdW50aW5nOjpUaWNrZXRTeW5jOjpEZWZhdWx0UHJvamVjdElEJyk7CiAgICBteSAlRGVmYXVsdFByb2plY3QgICA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+UHJvamVjdEdldCggSUQgPT4gJERlZmF1bHRQcm9qZWN0SUQgKTsKICAgIG15ICREZWZhdWx0TmFtZSAgICAgID0gJERlZmF1bHRQcm9qZWN0e1Byb2plY3R9OwoKICAgICMgY2hlY2sgbmVlZGVkIHN0dWZmCiAgICBpZiAoICEkUGFyYW17UHJvamVjdE5hbWV9IHx8ICRQYXJhbXtQcm9qZWN0TmFtZX0gZXEgJycgKSB7CiAgICAgICAgcmV0dXJuICREZWZhdWx0TmFtZTsKICAgIH0KCiAgICAjIElmIHRoaXMgb3B0aW9uIGlzIGRpc2FibGVkLCByZXR1cm4uIFdlIGRvIG5vdCBjcmVhdGUgYSBwcm9qZWN0LgogICAgaWYgKCAhJENvbmZpZ09iamVjdC0+R2V0KCdUaW1lQWNjb3VudGluZzo6VGlja2V0U3luYzo6Q3JlYXRlUHJvamVjdEZyb21DdXN0b21lcklEJykgKSB7CiAgICAgICAgcmV0dXJuICREZWZhdWx0TmFtZTsKICAgIH0KCiAgICAjIE5vdyB3ZSBuZWVkIHRvIGNoZWNrIGlmIHRoZSBjdXN0b21lciBjb21wYW55IGV4aXN0cyBhbHJlYWR5IGV4aXN0cyBpbnNpZGUgdGhlIGRhdGFiYXNlCiAgICBteSAkQ3VzdG9tZXJDb21wYW55T2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkN1c3RvbWVyQ29tcGFueScpOwoKICAgICMgQ2hlY2sgaWYgYSBjdXN0b21lciBjb21wYW55IGFscmVhZHkgZXhpc3RzIGluIHRoZSBjdXN0b21lciBjb21wYW55IGRhdGFiYXNlCiAgICBteSAlQ3VzdG9tZXJDb21wYW55ID0gJEN1c3RvbWVyQ29tcGFueU9iamVjdC0+Q3VzdG9tZXJDb21wYW55R2V0KAogICAgICAgIEN1c3RvbWVySUQgPT4gJFBhcmFte1Byb2plY3ROYW1lfSwKICAgICk7CgogICAgIyBSZXR1cm4gcmVndWxhciBwcm9qZWN0IGNhdXNlIGN1c3RvbWVyY29tcGFueSBleGlzdHMKICAgIGlmICggSXNIYXNoUmVmV2l0aERhdGEoIFwlQ3VzdG9tZXJDb21wYW55ICkgKSB7CiAgICAgICAgbXkgJVByb2plY3REYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Qcm9qZWN0R2V0KCBQcm9qZWN0ID0+ICRQYXJhbXtQcm9qZWN0TmFtZX0gKTsKCiAgICAgICAgaWYgKCBJc0hhc2hSZWZXaXRoRGF0YSggXCVQcm9qZWN0RGF0YSApICkgewogICAgICAgICAgICByZXR1cm4gJFByb2plY3REYXRhe1Byb2plY3R9OwogICAgICAgIH0KICAgICAgICByZXR1cm4gJFBhcmFte1Byb2plY3ROYW1lfTsKICAgIH0KCiAgICAjIEN1c3RvbWVyIGNvbXBhbnkgbm90IGV4aXN0LCBzbyB3ZSBuZWVkIHRvIGNoZWNrIGlmIHdlIGNyZWF0ZSBwcm9qZWN0cyBmcm9tIHRtcCBjdXN0b21lcnMuCiAgICBpZiAoICEkQ29uZmlnT2JqZWN0LT5HZXQoJ1RpbWVBY2NvdW50aW5nOjpUaWNrZXRTeW5jOjpDcmVhdGVQcm9qZWN0RnJvbVRNUEN1c3RvbWVySUQnKSApIHsKICAgICAgICByZXR1cm4gJERlZmF1bHROYW1lOwogICAgfQoKICAgICMgTm93IHdlIG5vdyB0aGF0IHdlIG5lZWQgdG8gY3JlYXRlIHRoZSBwcm9qZWN0IGlmIGl0IG5vdCBleGlzdAogICAgbXkgKCAkVXNlciwgJERvbWFpbiApID0gc3BsaXQoIC9ALywgJFBhcmFte1Byb2plY3ROYW1lfSApOwogICAgbXkgJVByb2plY3REYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Qcm9qZWN0R2V0KCBQcm9qZWN0ID0+ICREb21haW4gKTsKCiAgICBpZiAoIElzSGFzaFJlZldpdGhEYXRhKCBcJVByb2plY3REYXRhICkgKSB7CiAgICAgICAgcmV0dXJuICRQcm9qZWN0RGF0YXtQcm9qZWN0fTsKICAgIH0KICAgIGVsc2UgewoKICAgICAgICByZXR1cm4gJERvbWFpbjsKICAgIH0KICAgIHJldHVybiAkRGVmYXVsdE5hbWU7Cn0KCnN1YiBfQ3JlYXRlUHJvamVjdCB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgICMgY2hlY2sgbmVlZGVkIHN0dWZmCiAgICBpZiAoICEkUGFyYW17UHJvamVjdE5hbWV9ICYmICEkUGFyYW17WWVhcn0gJiYgISRQYXJhbXtNb250aH0gJiYgISRQYXJhbXtEYXl9ICkgewogICAgICAgICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpMb2cnKS0+TG9nKAogICAgICAgICAgICBQcmlvcml0eSA9PiAnZXJyb3InLAogICAgICAgICAgICBNZXNzYWdlICA9PiAnTmVlZCBOYW1lIScsCiAgICAgICAgKTsKICAgICAgICByZXR1cm47CiAgICB9CgogICAgbXkgJFRpbWVBY2NvdW50aW5nT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlRpbWVBY2NvdW50aW5nJyk7CgogICAgbXkgJFByb2plY3RJRCA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+UHJvamVjdFNldHRpbmdzSW5zZXJ0KAogICAgICAgIFByb2plY3QgICAgICAgICAgICA9PiAkUGFyYW17UHJvamVjdE5hbWV9LAogICAgICAgIFByb2plY3REZXNjcmlwdGlvbiA9PiAiQ3JlYXRlIFRpbWU6ICRQYXJhbXtZZWFyfS0kUGFyYW17TW9udGh9LSRQYXJhbXtEYXl9IiwKICAgICAgICBQcm9qZWN0U3RhdHVzICAgICAgPT4gMSwKICAgICk7CgogICAgaWYgKCRQcm9qZWN0SUQpIHsKICAgICAgICByZXR1cm4gJFByb2plY3RJRDsKICAgIH0KfQoKMTsK</File>
        <File Location="Kernel/System/TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZzsKCnVzZSBzdHJpY3Q7CnVzZSB3YXJuaW5nczsKCnVzZSBLZXJuZWw6OlN5c3RlbTo6RGF0ZVRpbWU7CnVzZSBLZXJuZWw6OlN5c3RlbTo6VmFyaWFibGVDaGVjayBxdyggOmFsbCApOwoKb3VyIEBPYmplY3REZXBlbmRlbmNpZXMgPSAoCiAgICAnS2VybmVsOjpDb25maWcnLAogICAgJ0tlcm5lbDo6U3lzdGVtOjpEQicsCiAgICAnS2VybmVsOjpTeXN0ZW06OkxvZycsCiAgICAnS2VybmVsOjpTeXN0ZW06OkRhdGVUaW1lJywKICAgICdLZXJuZWw6OlN5c3RlbTo6VXNlcicsCik7Cgo9aGVhZDEgTkFNRQoKS2VybmVsOjpTeXN0ZW06OlRpbWVBY2NvdW50aW5nIC0gdGltZSBhY2NvdW50aW5nIGxpYgoKPWhlYWQxIERFU0NSSVBUSU9OCgpBbGwgdGltZSBhY2NvdW50aW5nIGZ1bmN0aW9ucwoKPWhlYWQxIFBVQkxJQyBJTlRFUkZBQ0UKCj1oZWFkMiBuZXcoKQoKY3JlYXRlIGFuIG9iamVjdAoKICAgIHVzZSBLZXJuZWw6OlN5c3RlbTo6T2JqZWN0TWFuYWdlcjsKICAgIGxvY2FsICRLZXJuZWw6Ok9NID0gS2VybmVsOjpTeXN0ZW06Ok9iamVjdE1hbmFnZXItPm5ldygpOwogICAgbXkgJFRpbWVBY2NvdW50aW5nT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlRpbWVBY2NvdW50aW5nJyk7Cgo9Y3V0CgpzdWIgbmV3IHsKICAgIG15ICggJFR5cGUsICVQYXJhbSApID0gQF87CgogICAgIyBhbGxvY2F0ZSBuZXcgaGFzaCBmb3Igb2JqZWN0CiAgICBteSAkU2VsZiA9IHt9OwogICAgYmxlc3MoICRTZWxmLCAkVHlwZSApOwoKICAgIG15ICREYXRlVGltZU9iamVjdCA9ICRLZXJuZWw6Ok9NLT5DcmVhdGUoJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScpOwoKICAgICRTZWxmLT57VGltZVpvbmV9ID0gJFBhcmFte1RpbWVab25lfQogICAgICAgIHx8ICRQYXJhbXtVc2VyVGltZVpvbmV9CiAgICAgICAgfHwgJERhdGVUaW1lT2JqZWN0LT5PVE9CT1RpbWVab25lR2V0KCk7CgogICAgcmV0dXJuICRTZWxmOwp9Cgo9aGVhZDIgVXNlckN1cnJlbnRQZXJpb2RHZXQoKQoKcmV0dXJucyBhIGhhc2ggd2l0aCB0aGUgY3VycmVudCBwZXJpb2QgZGF0YSBvZiB0aGUgc3BlY2lmaWVkIHVzZXIKCiAgICBteSAlVXNlckRhdGEgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlVzZXJDdXJyZW50UGVyaW9kR2V0KAogICAgICAgIFllYXIgID0+ICcyMDA1JywKICAgICAgICBNb250aCA9PiAnMTInLAogICAgICAgIERheSAgID0+ICcyNCcsCiAgICApOwoKVGhlIHJldHVybmVkIGhhc2ggY29udGFpbnMgdGhlIGZvbGxvd2luZyBlbGVtZW50czoKCiAgICAlVXNlckRhdGEgPSAoCiAgICAgICAgMSA9PiB7CiAgICAgICAgICAgIFVzZXJJRCAgICAgID0+IDEsCiAgICAgICAgICAgIFBlcmlvZCAgICAgID0+IDEyMywKICAgICAgICAgICAgRGF0ZVN0YXJ0ICAgPT4gJzIwMDUtMTItMjQnLAogICAgICAgICAgICBEYXRlRW5kICAgICA9PiAnMjAwNS0xMi0yNCcsCiAgICAgICAgICAgIFdlZWtseUhvdXJzID0+IDQwLjQsCiAgICAgICAgICAgIExlYXZlRGF5cyAgID0+IDEyLAogICAgICAgICAgICBPdmVyVGltZSAgICA9PiAzNCwKICAgICAgICB9LAogICAgKTsKCj1jdXQKCnN1YiBVc2VyQ3VycmVudFBlcmlvZEdldCB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgICMgY2hlY2sgbmVlZGVkIHBhcmFtcwogICAgZm9yIG15ICROZWVkZWRQYXJhbSAocXcoWWVhciBNb250aCBEYXkpKSB7CiAgICAgICAgaWYgKCAhJFBhcmFteyROZWVkZWRQYXJhbX0gKSB7CiAgICAgICAgICAgICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpMb2cnKS0+TG9nKAogICAgICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICAgICAgICAgIE1lc3NhZ2UgID0+ICJVc2VyQ3VycmVudFBlcmlvZEdldDogTmVlZCAkTmVlZGVkUGFyYW0hIiwKICAgICAgICAgICAgKTsKCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICB9CgogICAgIyBidWlsZCBkYXRlIHN0cmluZyBmb3IgZ2l2ZW4gcGFyYW1zCiAgICBteSAkRGF0ZSA9IHNwcmludGYgIiUwNGQtJTAyZC0lMDJkIDAwOjAwOjAwIiwgJFBhcmFte1llYXJ9LCAkUGFyYW17TW9udGh9LCAkUGFyYW17RGF5fTsKCiAgICAjIGNoZWNrIGNhY2hlCiAgICBpZiAoICRTZWxmLT57J0NhY2hlOjpVc2VyQ3VycmVudFBlcmlvZEdldCd9eyREYXRlfSApIHsKCiAgICAgICAgcmV0dXJuICV7ICRTZWxmLT57J0NhY2hlOjpVc2VyQ3VycmVudFBlcmlvZEdldCd9eyREYXRlfSB9OwogICAgfQoKICAgICMgZ2V0IGRhdGFiYXNlIG9iamVjdAogICAgbXkgJERCT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkRCJyk7CgogICAgIyBkYiBzZWxlY3QKICAgIHJldHVybiBpZiAhJERCT2JqZWN0LT5QcmVwYXJlKAogICAgICAgIFNRTCA9PiAnCiAgICAgICAgICAgIFNFTEVDVCB1c2VyX2lkLCBwcmVmZXJlbmNlX3BlcmlvZCwgZGF0ZV9zdGFydCwgZGF0ZV9lbmQsIHdlZWtseV9ob3VycywgbGVhdmVfZGF5cywKICAgICAgICAgICAgICAgIG92ZXJ0aW1lCiAgICAgICAgICAgIEZST00gdGltZV9hY2NvdW50aW5nX3VzZXJfcGVyaW9kCiAgICAgICAgICAgIFdIRVJFIGRhdGVfc3RhcnQgPD0gPwogICAgICAgICAgICAgICAgQU5EIGRhdGVfZW5kICA+PSA/CiAgICAgICAgICAgICAgICBBTkQgc3RhdHVzID0gPycsCiAgICAgICAgQmluZCA9PiBbIFwkRGF0ZSwgXCREYXRlLCBcMSwgXSwKICAgICk7CgogICAgIyBmZXRjaCB0aGUgZGF0YQogICAgbXkgJURhdGE7CiAgICB3aGlsZSAoIG15IEBSb3cgPSAkREJPYmplY3QtPkZldGNocm93QXJyYXkoKSApIHsKICAgICAgICBteSAkVXNlclJlZiA9IHsKICAgICAgICAgICAgVXNlcklEICAgICAgPT4gJFJvd1swXSwKICAgICAgICAgICAgUGVyaW9kICAgICAgPT4gJFJvd1sxXSwKICAgICAgICAgICAgRGF0ZVN0YXJ0ICAgPT4gc3Vic3RyKCAkUm93WzJdLCAwLCAxMCApLAogICAgICAgICAgICBEYXRlRW5kICAgICA9PiBzdWJzdHIoICRSb3dbM10sIDAsIDEwICksCiAgICAgICAgICAgIFdlZWtseUhvdXJzID0+ICRSb3dbNF0sCiAgICAgICAgICAgIExlYXZlRGF5cyAgID0+ICRSb3dbNV0sCiAgICAgICAgICAgIE92ZXJ0aW1lICAgID0+ICRSb3dbNl0sCiAgICAgICAgfTsKICAgICAgICAkRGF0YXsgJFJvd1swXSB9ID0gJFVzZXJSZWY7CiAgICB9CgogICAgIyBjaGVjayBmb3IgdmFsaWQgdXNlciBkYXRhCiAgICByZXR1cm4gaWYgISVEYXRhOwoKICAgICMgc3RvcmUgdXNlciBkYXRhIGluIGNhY2hlCiAgICAkU2VsZi0+eydDYWNoZTo6VXNlckN1cnJlbnRQZXJpb2RHZXQnfXskRGF0ZX0gPSBcJURhdGE7CgogICAgcmV0dXJuICVEYXRhOwp9Cgo9aGVhZDIgVXNlclJlcG9ydGluZygpCgpyZXR1cm5zIGEgaGFzaCB3aXRoIGluZm9ybWF0aW9uIGFib3V0IGxlYXZlIGRheXMsIG92ZXJ0aW1lcywKd29ya2luZyBob3VycyBldGMuIG9mIGFsbCB1c2VycwoKICAgIG15ICVEYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyUmVwb3J0aW5nKAogICAgICAgIFllYXIgID0+ICcyMDA1JywKICAgICAgICBNb250aCA9PiAnMTInLAogICAgICAgIERheSAgID0+ICcxMicsICAgICAgIyBPcHRpb25hbAogICAgKTsKCj1jdXQKCnN1YiBVc2VyUmVwb3J0aW5nIHsKICAgIG15ICggJFNlbGYsICVQYXJhbSApID0gQF87CgogICAgIyBnZXQgbG9nIG9iamVjdAogICAgbXkgJExvZ09iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpMb2cnKTsKCiAgICAjIGNoZWNrIG5lZWRlZCBwYXJhbXMKICAgIGZvciBteSAkTmVlZGVkUGFyYW0gKHF3KFllYXIgTW9udGggRGF5KSkgewogICAgICAgIGlmICggISRQYXJhbXskTmVlZGVkUGFyYW19ICYmICROZWVkZWRQYXJhbSBuZSAnRGF5JyApIHsKICAgICAgICAgICAgJExvZ09iamVjdC0+TG9nKAogICAgICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICAgICAgICAgIE1lc3NhZ2UgID0+ICJVc2VyUmVwb3J0aW5nOiBOZWVkICROZWVkZWRQYXJhbSEiCiAgICAgICAgICAgICk7CgogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgfQoKICAgICMgY2hlY2sgdmFsaWQgZGF0ZSB2YWx1ZXMKICAgIG15ICREYXRlVGltZU9iamVjdCA9ICRLZXJuZWw6Ok9NLT5DcmVhdGUoCiAgICAgICAgJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScsCiAgICAgICAgT2JqZWN0UGFyYW1zID0+IHsKICAgICAgICAgICAgWWVhciAgPT4gJFBhcmFte1llYXJ9LAogICAgICAgICAgICBNb250aCA9PiAkUGFyYW17TW9udGh9LAogICAgICAgICAgICBEYXkgICA9PiAkUGFyYW17RGF5fSB8fCAxLAogICAgICAgIH0sCiAgICApOwoKICAgIHJldHVybiBpZiAhJERhdGVUaW1lT2JqZWN0OwoKICAgICMgZ2V0IGRheXMgb2YgbW9udGggaWYgbm90IHByb3ZpZGVkCiAgICBteSAkTGFzdERheU9mTW9udGggPSAkRGF0ZVRpbWVPYmplY3QtPkxhc3REYXlPZk1vbnRoR2V0KCk7CiAgICAkUGFyYW17RGF5fSB8fD0gJExhc3REYXlPZk1vbnRoLT57RGF5fTsKCiAgICBteSAlVXNlckN1cnJlbnRQZXJpb2QgPSAkU2VsZi0+VXNlckN1cnJlbnRQZXJpb2RHZXQoJVBhcmFtKTsKICAgIG15ICRZZWFyU3RhcnQgICAgICAgICA9IDE5NzA7CiAgICBteSAkTW9udGhTdGFydCAgICAgICAgPSAxOwogICAgbXkgJERheVN0YXJ0ICAgICAgICAgID0gMTsKICAgIG15ICRZZWFyRW5kICAgICAgICAgICA9ICRQYXJhbXtZZWFyfTsKICAgIG15ICRNb250aEVuZCAgICAgICAgICA9ICRQYXJhbXtNb250aH07CiAgICBteSAkRGF5RW5kICAgICAgICAgICAgPSAkUGFyYW17RGF5fTsKCiAgICBteSAlRGF0YTsKCiAgICBVU0VSSUQ6CiAgICBmb3IgbXkgJFVzZXJJRCAoIHNvcnQga2V5cyAlVXNlckN1cnJlbnRQZXJpb2QgKSB7CgogICAgICAgIGlmICggJFVzZXJDdXJyZW50UGVyaW9keyRVc2VySUR9LT57RGF0ZVN0YXJ0fSA9fiBteyBcQSAoXGR7NH0pLShcZHsyfSktKFxkezJ9KSB9eG1zICkgewogICAgICAgICAgICAkWWVhclN0YXJ0ICA9ICQxOwogICAgICAgICAgICAkTW9udGhTdGFydCA9ICQyOwogICAgICAgICAgICAkRGF5U3RhcnQgICA9ICQzOwogICAgICAgIH0KCiAgICAgICAgbXkgJERhdGVUaW1lT2JqZWN0ID0gJEtlcm5lbDo6T00tPkNyZWF0ZSgKICAgICAgICAgICAgJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScsCiAgICAgICAgICAgIE9iamVjdFBhcmFtcyA9PiB7CiAgICAgICAgICAgICAgICBZZWFyICA9PiAkWWVhclN0YXJ0LAogICAgICAgICAgICAgICAgTW9udGggPT4gJE1vbnRoU3RhcnQsCiAgICAgICAgICAgICAgICBEYXkgICA9PiAkRGF5U3RhcnQsCiAgICAgICAgICAgIH0sCiAgICAgICAgKTsKCiAgICAgICAgaWYgKCAhJERhdGVUaW1lT2JqZWN0ICkgewoKICAgICAgICAgICAgJExvZ09iamVjdC0+TG9nKAogICAgICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ25vdGljZScsCiAgICAgICAgICAgICAgICBNZXNzYWdlICA9PiAnVXNlclJlcG9ydGluZzogSW52YWxpZCBzdGFydCBkYXRlIGZvciB1c2VyICcKICAgICAgICAgICAgICAgICAgICAuICIkVXNlcklEOiAkVXNlckN1cnJlbnRQZXJpb2R7JFVzZXJJRH17RGF0ZVN0YXJ0fSIsCiAgICAgICAgICAgICk7CgogICAgICAgICAgICBuZXh0IFVTRVJJRDsKICAgICAgICB9CgogICAgICAgIG15ICVDdXJyZW50VXNlckRhdGEgPSAoCiAgICAgICAgICAgIExlYXZlRGF0ZSAgICAgICAgPT4gMCwKICAgICAgICAgICAgU2ljayAgICAgICAgICAgICA9PiAwLAogICAgICAgICAgICBPdmVydGltZSAgICAgICAgID0+IDAsCiAgICAgICAgICAgIFRhcmdldFN0YXRlICAgICAgPT4gMCwKICAgICAgICAgICAgTGVhdmVEYXlUb3RhbCAgICA9PiAwLAogICAgICAgICAgICBTaWNrVG90YWwgICAgICAgID0+IDAsCiAgICAgICAgICAgIFNpY2tUb3RhbCAgICAgICAgPT4gMCwKICAgICAgICAgICAgVGFyZ2V0U3RhdGVUb3RhbCA9PiAwLAogICAgICAgICk7CgogICAgICAgIG15ICRDYWxlbmRhciA9IHsgJFNlbGYtPlVzZXJHZXQoIFVzZXJJRCA9PiAkVXNlcklEICkgfS0+e0NhbGVuZGFyfTsKCiAgICAgICAgWUVBUjoKICAgICAgICBmb3IgbXkgJFllYXIgKCAkWWVhclN0YXJ0IC4uICRZZWFyRW5kICkgewoKICAgICAgICAgICAgbXkgJE1vbnRoU3RhcnRQb2ludCA9ICRZZWFyID09ICRZZWFyU3RhcnQgPyAkTW9udGhTdGFydCA6IDE7CiAgICAgICAgICAgIG15ICRNb250aEVuZFBvaW50ICAgPSAkWWVhciA9PSAkWWVhckVuZCAgID8gJE1vbnRoRW5kICAgOiAxMjsKCiAgICAgICAgICAgIE1PTlRIOgogICAgICAgICAgICBmb3IgbXkgJE1vbnRoICggJE1vbnRoU3RhcnRQb2ludCAuLiAkTW9udGhFbmRQb2ludCApIHsKCiAgICAgICAgICAgICAgICBteSAkRGF5U3RhcnRQb2ludCA9CiAgICAgICAgICAgICAgICAgICAgJFllYXIgPT0gJFllYXJTdGFydCAmJiAkTW9udGggPT0gJE1vbnRoU3RhcnQKICAgICAgICAgICAgICAgICAgICA/ICREYXlTdGFydAogICAgICAgICAgICAgICAgICAgIDogMTsKCiAgICAgICAgICAgICAgICBteSAkRGF5RW5kUG9pbnQ7CgogICAgICAgICAgICAgICAgaWYgKCAkWWVhciA9PSAkWWVhckVuZCAmJiAkTW9udGggPT0gJE1vbnRoRW5kICkgewogICAgICAgICAgICAgICAgICAgICREYXlFbmRQb2ludCA9ICREYXlFbmQ7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAkRGF5RW5kUG9pbnQgPSAkU2VsZi0+RGF5c0luTW9udGgoICRZZWFyLCAkTW9udGggKTsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBEQVk6CiAgICAgICAgICAgICAgICBmb3IgbXkgJERheSAoICREYXlTdGFydFBvaW50IC4uICREYXlFbmRQb2ludCApIHsKCiAgICAgICAgICAgICAgICAgICAgbXkgJVdvcmtpbmdVbml0ID0gJFNlbGYtPldvcmtpbmdVbml0c0dldCgKICAgICAgICAgICAgICAgICAgICAgICAgWWVhciAgID0+ICRZZWFyLAogICAgICAgICAgICAgICAgICAgICAgICBNb250aCAgPT4gJE1vbnRoLAogICAgICAgICAgICAgICAgICAgICAgICBEYXkgICAgPT4gJERheSwKICAgICAgICAgICAgICAgICAgICAgICAgVXNlcklEID0+ICRVc2VySUQsCiAgICAgICAgICAgICAgICAgICAgKTsKCiAgICAgICAgICAgICAgICAgICAgbXkgJExlYXZlRGF5ICAgID0gMDsKICAgICAgICAgICAgICAgICAgICBteSAkU2ljayAgICAgICAgPSAwOwogICAgICAgICAgICAgICAgICAgIG15ICRPdmVydGltZSAgICA9IDA7CiAgICAgICAgICAgICAgICAgICAgbXkgJFRhcmdldFN0YXRlID0gMDsKCiAgICAgICAgICAgICAgICAgICAgaWYgKCAkV29ya2luZ1VuaXR7TGVhdmVEYXl9ICkgewogICAgICAgICAgICAgICAgICAgICAgICAkQ3VycmVudFVzZXJEYXRhe0xlYXZlRGF5VG90YWx9Kys7CiAgICAgICAgICAgICAgICAgICAgICAgICRMZWF2ZURheSA9IDE7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGVsc2lmICggJFdvcmtpbmdVbml0e1NpY2t9ICkgewogICAgICAgICAgICAgICAgICAgICAgICAkQ3VycmVudFVzZXJEYXRhe1NpY2tUb3RhbH0rKzsKICAgICAgICAgICAgICAgICAgICAgICAgJFNpY2sgPSAxOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBlbHNpZiAoICRXb3JraW5nVW5pdHtPdmVydGltZX0gKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRDdXJyZW50VXNlckRhdGF7T3ZlcnRpbWVUb3RhbH0rKzsKICAgICAgICAgICAgICAgICAgICAgICAgJE92ZXJ0aW1lID0gMTsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICRDdXJyZW50VXNlckRhdGF7V29ya2luZ0hvdXJzVG90YWx9ICs9ICRXb3JraW5nVW5pdHtUb3RhbH07CiAgICAgICAgICAgICAgICAgICAgbXkgJFZhY2F0aW9uQ2hlY2sgPSAkU2VsZi0+VmFjYXRpb25DaGVjaygKICAgICAgICAgICAgICAgICAgICAgICAgWWVhciAgICAgPT4gJFllYXIsCiAgICAgICAgICAgICAgICAgICAgICAgIE1vbnRoICAgID0+ICRNb250aCwKICAgICAgICAgICAgICAgICAgICAgICAgRGF5ICAgICAgPT4gJERheSwKICAgICAgICAgICAgICAgICAgICAgICAgQ2FsZW5kYXIgPT4gJENhbGVuZGFyIHx8ICcnLAogICAgICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICAgICAgbXkgJFdlZWtkYXkgPSAkU2VsZi0+RGF5T2ZXZWVrKCAkWWVhciwgJE1vbnRoLCAkRGF5ICk7CiAgICAgICAgICAgICAgICAgICAgaWYgKAogICAgICAgICAgICAgICAgICAgICAgICAkV2Vla2RheSAhPSA2CiAgICAgICAgICAgICAgICAgICAgICAgICYmICRXZWVrZGF5ICE9IDcKICAgICAgICAgICAgICAgICAgICAgICAgJiYgISRWYWNhdGlvbkNoZWNrCiAgICAgICAgICAgICAgICAgICAgICAgICYmICEkU2ljawogICAgICAgICAgICAgICAgICAgICAgICAmJiAhJExlYXZlRGF5CiAgICAgICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICRDdXJyZW50VXNlckRhdGF7VGFyZ2V0U3RhdGVUb3RhbH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICs9ICRVc2VyQ3VycmVudFBlcmlvZHskVXNlcklEfXtXZWVrbHlIb3Vyc30gLyA1OwogICAgICAgICAgICAgICAgICAgICAgICAkVGFyZ2V0U3RhdGUgPSAkVXNlckN1cnJlbnRQZXJpb2R7JFVzZXJJRH17V2Vla2x5SG91cnN9IC8gNTsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIGlmICggJE1vbnRoID09ICRNb250aEVuZCAmJiAkWWVhciA9PSAkWWVhckVuZCApIHsKICAgICAgICAgICAgICAgICAgICAgICAgJEN1cnJlbnRVc2VyRGF0YXtUYXJnZXRTdGF0ZX0gICs9ICRUYXJnZXRTdGF0ZTsKICAgICAgICAgICAgICAgICAgICAgICAgJEN1cnJlbnRVc2VyRGF0YXtXb3JraW5nSG91cnN9ICs9ICRXb3JraW5nVW5pdHtUb3RhbH07CiAgICAgICAgICAgICAgICAgICAgICAgICRDdXJyZW50VXNlckRhdGF7TGVhdmVEYXl9ICAgICArPSAkTGVhdmVEYXk7CiAgICAgICAgICAgICAgICAgICAgICAgICRDdXJyZW50VXNlckRhdGF7U2lja30gICAgICAgICArPSAkU2ljazsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgICRDdXJyZW50VXNlckRhdGF7T3ZlcnRpbWV9ICAgICAgPSAkQ3VycmVudFVzZXJEYXRhe1dvcmtpbmdIb3Vyc30gLSAkQ3VycmVudFVzZXJEYXRhe1RhcmdldFN0YXRlfTsKICAgICAgICAkQ3VycmVudFVzZXJEYXRhe092ZXJ0aW1lVG90YWx9ID0gJFVzZXJDdXJyZW50UGVyaW9keyRVc2VySUR9e092ZXJ0aW1lfQogICAgICAgICAgICArICRDdXJyZW50VXNlckRhdGF7V29ya2luZ0hvdXJzVG90YWx9CiAgICAgICAgICAgIC0gJEN1cnJlbnRVc2VyRGF0YXtUYXJnZXRTdGF0ZVRvdGFsfTsKICAgICAgICAkQ3VycmVudFVzZXJEYXRhe092ZXJ0aW1lVW50aWx9ICAgICA9ICRDdXJyZW50VXNlckRhdGF7T3ZlcnRpbWVUb3RhbH0gLSAkQ3VycmVudFVzZXJEYXRhe092ZXJ0aW1lfTsKICAgICAgICAkQ3VycmVudFVzZXJEYXRhe0xlYXZlRGF5UmVtYWluaW5nfSA9ICRVc2VyQ3VycmVudFBlcmlvZHskVXNlcklEfXtMZWF2ZURheXN9IC0gJEN1cnJlbnRVc2VyRGF0YXtMZWF2ZURheVRvdGFsfTsKCiAgICAgICAgJERhdGF7JFVzZXJJRH0gPSBcJUN1cnJlbnRVc2VyRGF0YTsKICAgIH0KCiAgICByZXR1cm4gJURhdGE7Cn0KCj1oZWFkMiBQcm9qZWN0U2V0dGluZ3NHZXQoKQoKcmV0dXJucyBhIGhhc2ggd2l0aCBhbGwgdGhlIHByb2plY3RzJyBkYXRhCgogICAgbXkgJVByb2plY3REYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Qcm9qZWN0U2V0dGluZ3NHZXQoCiAgICAgICAgU3RhdHVzID0+ICd2YWxpZCcgfHwgJ2ludmFsaWQnLCBvcHRpb25hbCBkZWZhdWx0IHZhbGlkICYmIGludmFsaWQKICAgICk7Cgo9Y3V0CgpzdWIgUHJvamVjdFNldHRpbmdzR2V0IHsKICAgIG15ICggJFNlbGYsICVQYXJhbSApID0gQF87CgogICAgbXkgJFdoZXJlID0gJyc7CiAgICBpZiAoICRQYXJhbXtTdGF0dXN9ICkgewogICAgICAgICRXaGVyZSA9ICcgV0hFUkUgc3RhdHVzID0gJzsKICAgICAgICAkV2hlcmUgLj0gJFBhcmFte1N0YXR1c30gZXEgJ2ludmFsaWQnID8gIicwJyIgOiAiJzEnIjsKICAgIH0KCiAgICAjIGdldCBkYXRhYmFzZSBvYmplY3QKICAgIG15ICREQk9iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpEQicpOwoKICAgICMgZGIgc2VsZWN0CiAgICAkREJPYmplY3QtPlByZXBhcmUoCiAgICAgICAgU1FMID0+ICIKICAgICAgICAgICAgU0VMRUNUIGlkLCBwcm9qZWN0LCBkZXNjcmlwdGlvbiwgc3RhdHVzCiAgICAgICAgICAgIEZST00gdGltZV9hY2NvdW50aW5nX3Byb2plY3QKICAgICAgICAgICAgJFdoZXJlIiwKICAgICk7CgogICAgIyBmZXRjaCB0aGUgZGF0YQogICAgbXkgJURhdGE7CiAgICB3aGlsZSAoIG15IEBSb3cgPSAkREJPYmplY3QtPkZldGNocm93QXJyYXkoKSApIHsKICAgICAgICBteSAkSUQgPSAkUm93WzBdOwogICAgICAgICREYXRhe1Byb2plY3R9eyRJRH0gICAgICAgICAgICA9ICRSb3dbMV07CiAgICAgICAgJERhdGF7UHJvamVjdERlc2NyaXB0aW9ufXskSUR9ID0gJFJvd1syXTsKICAgICAgICAkRGF0YXtQcm9qZWN0U3RhdHVzfXskSUR9ICAgICAgPSAkUm93WzNdOwogICAgfQoKICAgIHJldHVybiAlRGF0YTsKfQoKPWhlYWQyIFByb2plY3RHZXQoKQoKcmV0dXJucyBhIGhhc2ggd2l0aCB0aGUgcmVxdWVzdGVkIHByb2plY3QgZGF0YQoKICAgIG15ICVQcm9qZWN0RGF0YSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+UHJvamVjdEdldCggSUQgPT4gMiApOwoKVGhpcyByZXR1cm5zIHNvbWV0aGluZyBsaWtlOgoKICAgICRUaW1lQWNjb3VudGluZ09iamVjdCA9ICgKICAgICAgICBQcm9qZWN0ICAgICAgICAgICAgPT4gJ2ludGVybmFsJywKICAgICAgICBQcm9qZWN0RGVzY3JpcHRpb24gPT4gJ2Rlc2NyaXB0aW9uJywKICAgICAgICBQcm9qZWN0U3RhdHVzICAgICAgPT4gMSwKICAgICk7CgogICAgb3IKCiAgICBteSAlUHJvamVjdERhdGEgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlByb2plY3RHZXQoIFByb2plY3QgPT4gJ2ludGVybmFsJyApOwoKVGhpcyByZXR1cm5zIHNvbWV0aGluZyBsaWtlOgoKICAgICRUaW1lQWNjb3VudGluZ09iamVjdCA9ICgKICAgICAgICBJRCAgICAgICAgICAgICAgICAgPT4gMiwKICAgICAgICBQcm9qZWN0RGVzY3JpcHRpb24gPT4gJ2Rlc2NyaXB0aW9uJywKICAgICAgICBQcm9qZWN0U3RhdHVzICAgICAgPT4gMSwKICAgICk7Cgo9Y3V0CgpzdWIgUHJvamVjdEdldCB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgICMgY2hlY2sgbmVlZGVkIHN0dWZmCiAgICBpZiAoICEkUGFyYW17SUR9ICYmICEkUGFyYW17UHJvamVjdH0gKSB7CiAgICAgICAgJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkxvZycpLT5Mb2coCiAgICAgICAgICAgIFByaW9yaXR5ID0+ICdlcnJvcicsCiAgICAgICAgICAgIE1lc3NhZ2UgID0+ICdOZWVkIElEIG9yIHByb2plY3QgbmFtZSEnCiAgICAgICAgKTsKCiAgICAgICAgcmV0dXJuOwogICAgfQoKICAgIG15ICVQcm9qZWN0OwoKICAgICMgZ2V0IGRhdGFiYXNlIG9iamVjdAogICAgbXkgJERCT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkRCJyk7CgogICAgIyBsb29rIGZvciB0aGUgdGFzayBkYXRhIHdpdGggdGhlIElECiAgICBpZiAoICRQYXJhbXtJRH0gKSB7CgogICAgICAgICMgU1FMCiAgICAgICAgcmV0dXJuIGlmICEkREJPYmplY3QtPlByZXBhcmUoCiAgICAgICAgICAgIFNRTCA9PiAnCiAgICAgICAgICAgICAgICBTRUxFQ1QgcHJvamVjdCwgZGVzY3JpcHRpb24sIHN0YXR1cwogICAgICAgICAgICAgICAgRlJPTSB0aW1lX2FjY291bnRpbmdfcHJvamVjdAogICAgICAgICAgICAgICAgV0hFUkUgaWQgPSA/JywKICAgICAgICAgICAgQmluZCA9PiBbIFwkUGFyYW17SUR9IF0sCiAgICAgICAgKTsKICAgICAgICB3aGlsZSAoIG15IEBEYXRhID0gJERCT2JqZWN0LT5GZXRjaHJvd0FycmF5KCkgKSB7CiAgICAgICAgICAgICVQcm9qZWN0ID0gKAogICAgICAgICAgICAgICAgSUQgICAgICAgICAgICAgICAgID0+ICRQYXJhbXtJRH0sCiAgICAgICAgICAgICAgICBQcm9qZWN0ICAgICAgICAgICAgPT4gJERhdGFbMF0sCiAgICAgICAgICAgICAgICBQcm9qZWN0RGVzY3JpcHRpb24gPT4gJERhdGFbMV0sCiAgICAgICAgICAgICAgICBQcm9qZWN0U3RhdHVzICAgICAgPT4gJERhdGFbMl0sCiAgICAgICAgICAgICk7CiAgICAgICAgfQogICAgfQoKICAgICMgbG9vayBmb3IgdGhlIHRhc2sgZGF0YSB3aXRoIHRoZSB0YXNrIG5hbWUKICAgIGVsc2UgewoKICAgICAgICAjIFNRTAogICAgICAgIHJldHVybiBpZiAhJERCT2JqZWN0LT5QcmVwYXJlKAogICAgICAgICAgICBTUUwgPT4gJwogICAgICAgICAgICAgICAgU0VMRUNUIGlkLCBkZXNjcmlwdGlvbiwgc3RhdHVzCiAgICAgICAgICAgICAgICBGUk9NIHRpbWVfYWNjb3VudGluZ19wcm9qZWN0CiAgICAgICAgICAgICAgICBXSEVSRSBwcm9qZWN0ID0gPycsCiAgICAgICAgICAgIEJpbmQgPT4gWyBcJFBhcmFte1Byb2plY3R9IF0sCiAgICAgICAgKTsKICAgICAgICB3aGlsZSAoIG15IEBEYXRhID0gJERCT2JqZWN0LT5GZXRjaHJvd0FycmF5KCkgKSB7CiAgICAgICAgICAgICVQcm9qZWN0ID0gKAogICAgICAgICAgICAgICAgUHJvamVjdCAgICAgICAgICAgID0+ICRQYXJhbXtQcm9qZWN0fSwKICAgICAgICAgICAgICAgIElEICAgICAgICAgICAgICAgICA9PiAkRGF0YVswXSwKICAgICAgICAgICAgICAgIFByb2plY3REZXNjcmlwdGlvbiA9PiAkRGF0YVsxXSwKICAgICAgICAgICAgICAgIFByb2plY3RTdGF0dXMgICAgICA9PiAkRGF0YVsyXSwKICAgICAgICAgICAgKTsKICAgICAgICB9CiAgICB9CgogICAgcmV0dXJuICVQcm9qZWN0Owp9Cgo9aGVhZDIgUHJvamVjdFNldHRpbmdzSW5zZXJ0KCkKCmluc2VydHMgYSBuZXcgcHJvamVjdCBpbiB0aGUgZGIKCiAgICAkVGltZUFjY291bnRpbmdPYmplY3QtPlByb2plY3RTZXR0aW5nc0luc2VydCgKICAgICAgICBQcm9qZWN0ICAgICAgICAgICAgPT4gJ2ludGVybmFsJywgICAgIyBvcHRpb25hbAogICAgICAgIFByb2plY3REZXNjcmlwdGlvbiA9PiAnZGVzY3JpcHRpb24nLCAjIG9wdGlvbmFsCiAgICAgICAgUHJvamVjdFN0YXR1cyAgICAgID0+IDEgfHwgMCwgICAgICAgICMgb3B0aW9uYWwKICAgICk7CgogICAgcmV0dXJucyBJRCBvZiBjcmVhdGVkIHByb2plY3QKCj1jdXQKCnN1YiBQcm9qZWN0U2V0dGluZ3NJbnNlcnQgewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICAjIGdldCBjb25maWcgb2JqZWN0CiAgICBteSAkQ29uZmlnT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpDb25maWcnKTsKCiAgICAkUGFyYW17UHJvamVjdH0gICAgICAgICAgICB8fD0gJENvbmZpZ09iamVjdC0+R2V0KCdUaW1lQWNjb3VudGluZzo6RGVmYXVsdFByb2plY3ROYW1lJyk7CiAgICAkUGFyYW17UHJvamVjdERlc2NyaXB0aW9ufSB8fD0gJyc7CgogICAgaWYgKCAkUGFyYW17UHJvamVjdFN0YXR1c30gbmUgJzAnICYmICRQYXJhbXtQcm9qZWN0U3RhdHVzfSBuZSAnMScgKSB7CiAgICAgICAgJFBhcmFte1Byb2plY3RTdGF0dXN9ID0gJENvbmZpZ09iamVjdC0+R2V0KCdUaW1lQWNjb3VudGluZzo6RGVmYXVsdFByb2plY3RTdGF0dXMnKTsKICAgIH0KCiAgICAjIGdldCBkYXRhYmFzZSBvYmplY3QKICAgIG15ICREQk9iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpEQicpOwoKICAgICMgaW5zZXJ0IHByb2plY3QgcmVjb3JkCiAgICByZXR1cm4gaWYgISREQk9iamVjdC0+RG8oCiAgICAgICAgU1FMID0+ICcKICAgICAgICAgICAgSU5TRVJUIElOVE8gdGltZV9hY2NvdW50aW5nX3Byb2plY3QgKHByb2plY3QsIGRlc2NyaXB0aW9uLCBzdGF0dXMpCiAgICAgICAgICAgIFZBTFVFUyAoPywgPywgPyknLAogICAgICAgIEJpbmQgPT4gWyBcJFBhcmFte1Byb2plY3R9LCBcJFBhcmFte1Byb2plY3REZXNjcmlwdGlvbn0sIFwkUGFyYW17UHJvamVjdFN0YXR1c30gXSwKICAgICk7CgogICAgIyBnZXQgaWQgb2YgbmV3bHkgY3JlYXRlZCBwcm9qZWN0IHJlY29yZAogICAgcmV0dXJuIGlmICEkREJPYmplY3QtPlByZXBhcmUoCiAgICAgICAgU1FMID0+ICcKICAgICAgICAgICAgU0VMRUNUIGlkCiAgICAgICAgICAgIEZST00gdGltZV9hY2NvdW50aW5nX3Byb2plY3QKICAgICAgICAgICAgV0hFUkUgcHJvamVjdCA9ID8nLAogICAgICAgIEJpbmQgID0+IFsgXCRQYXJhbXtQcm9qZWN0fSBdLAogICAgICAgIExpbWl0ID0+IDEsCiAgICApOwoKICAgICMgZmV0Y2ggdGhlIGRhdGEKICAgIG15ICRQcm9qZWN0SUQ7CiAgICB3aGlsZSAoIG15IEBSb3cgPSAkREJPYmplY3QtPkZldGNocm93QXJyYXkoKSApIHsKICAgICAgICAkUHJvamVjdElEID0gJFJvd1swXTsKICAgIH0KCiAgICByZXR1cm4gJFByb2plY3RJRDsKfQoKPWhlYWQyIFByb2plY3RTZXR0aW5nc1VwZGF0ZSgpCgp1cGRhdGVzIGEgcHJvamVjdAoKICAgIG15ICRTdWNjZXNzID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Qcm9qZWN0U2V0dGluZ3NVcGRhdGUoCiAgICAgICAgSUQgICAgICAgICAgICAgICAgID0+IDEyMywKICAgICAgICBQcm9qZWN0ICAgICAgICAgICAgPT4gJ2ludGVybmFsJywKICAgICAgICBQcm9qZWN0RGVzY3JpcHRpb24gPT4gJ2Rlc2NyaXB0aW9uJywKICAgICAgICBQcm9qZWN0U3RhdHVzICAgICAgPT4gMSwKICAgICk7Cgo9Y3V0CgpzdWIgUHJvamVjdFNldHRpbmdzVXBkYXRlIHsKICAgIG15ICggJFNlbGYsICVQYXJhbSApID0gQF87CgogICAgIyBjaGVjayBuZWVkZWQgc3R1ZmYKICAgIGZvciBteSAkTmVlZGVkIChxdyhJRCBQcm9qZWN0KSkgewogICAgICAgIGlmICggISRQYXJhbXskTmVlZGVkfSApIHsKICAgICAgICAgICAgJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkxvZycpLT5Mb2coCiAgICAgICAgICAgICAgICBQcmlvcml0eSA9PiAnZXJyb3InLAogICAgICAgICAgICAgICAgTWVzc2FnZSAgPT4gIk5lZWQgJE5lZWRlZCEiCiAgICAgICAgICAgICk7CgogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgfQoKICAgICMgU1FMCiAgICByZXR1cm4gaWYgISRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpEQicpLT5EbygKICAgICAgICBTUUwgPT4gJwogICAgICAgICAgICBVUERBVEUgdGltZV9hY2NvdW50aW5nX3Byb2plY3QKICAgICAgICAgICAgU0VUIHByb2plY3QgPSA/LCBkZXNjcmlwdGlvbiA9ID8sIHN0YXR1cyA9ID8KICAgICAgICAgICAgV0hFUkUgaWQgPSA/JywKICAgICAgICBCaW5kID0+IFsKICAgICAgICAgICAgXCRQYXJhbXtQcm9qZWN0fSwgXCRQYXJhbXtQcm9qZWN0RGVzY3JpcHRpb259LCBcJFBhcmFte1Byb2plY3RTdGF0dXN9LCBcJFBhcmFte0lEfSwKICAgICAgICBdLAogICAgKTsKCiAgICByZXR1cm4gMTsKfQoKPWhlYWQyIEFjdGlvblNldHRpbmdzR2V0KCkKCnJldHVybnMgYSBoYXNoIHdpdGggYWxsIHRoZSBhY3Rpb25zIHNldHRpbmdzCgogICAgbXkgJUFjdGlvbkRhdGEgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPkFjdGlvblNldHRpbmdzR2V0KCk7Cgo9Y3V0CgpzdWIgQWN0aW9uU2V0dGluZ3NHZXQgewogICAgbXkgJFNlbGYgPSBzaGlmdDsKCiAgICAjIGdldCBkYXRhYmFzZSBvYmplY3QKICAgIG15ICREQk9iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpEQicpOwoKICAgICMgZGIgc2VsZWN0CiAgICByZXR1cm4gaWYgISREQk9iamVjdC0+UHJlcGFyZSgKICAgICAgICBTUUwgPT4gJwogICAgICAgICAgICBTRUxFQ1QgaWQsIGFjdGlvbiwgc3RhdHVzCiAgICAgICAgICAgIEZST00gdGltZV9hY2NvdW50aW5nX2FjdGlvbicsCiAgICApOwoKICAgICMgZmV0Y2ggdGhlIGRhdGEKICAgIG15ICVEYXRhOwogICAgd2hpbGUgKCBteSBAUm93ID0gJERCT2JqZWN0LT5GZXRjaHJvd0FycmF5KCkgKSB7CiAgICAgICAgJERhdGF7ICRSb3dbMF0gfXtBY3Rpb259ICAgICAgID0gJFJvd1sxXTsKICAgICAgICAkRGF0YXsgJFJvd1swXSB9e0FjdGlvblN0YXR1c30gPSAkUm93WzJdOwogICAgfQoKICAgIHJldHVybiAlRGF0YTsKfQoKPWhlYWQyIEFjdGlvbkdldCgpCgpyZXR1cm5zIGEgaGFzaCB3aXRoIHRoZSByZXF1ZXN0ZWQgYWN0aW9uICh0YXNrKSBkYXRhCgogICAgbXkgJUFjdGlvbkRhdGEgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPkFjdGlvbkdldCggSUQgPT4gMiApOwoKVGhpcyByZXR1cm5zIHNvbWV0aGluZyBsaWtlOgoKICAgICRUaW1lQWNjb3VudGluZ09iamVjdCA9ICgKICAgICAgICBBY3Rpb24gICAgICAgPT4gJ015IHRhc2snLAogICAgICAgIEFjdGlvblN0YXR1cyA9PiAxLAogICAgKTsKCiAgICBvcgoKICAgIG15ICVBY3Rpb25EYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5BY3Rpb25HZXQoIEFjdGlvbiA9PiAnTXkgdGFzaycgKTsKClRoaXMgcmV0dXJucyBzb21ldGhpbmcgbGlrZToKCiAgICAkVGltZUFjY291bnRpbmdPYmplY3QgPSAoCiAgICAgICAgSUQgICAgICAgICAgID0+IDIsCiAgICAgICAgQWN0aW9uU3RhdHVzID0+IDEsCiAgICApOwoKPWN1dAoKc3ViIEFjdGlvbkdldCB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgICMgY2hlY2sgbmVlZGVkIHN0dWZmCiAgICBpZiAoICEkUGFyYW17SUR9ICYmICEkUGFyYW17QWN0aW9ufSApIHsKICAgICAgICAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6TG9nJyktPkxvZygKICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICAgICAgTWVzc2FnZSAgPT4gJ05lZWQgSUQgb3IgQWN0aW9uIScKICAgICAgICApOwoKICAgICAgICByZXR1cm47CiAgICB9CgogICAgbXkgJVRhc2s7CgogICAgIyBnZXQgZGF0YWJhc2Ugb2JqZWN0CiAgICBteSAkREJPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6REInKTsKCiAgICAjIGxvb2sgZm9yIHRoZSB0YXNrIGRhdGEgd2l0aCB0aGUgSUQKICAgIGlmICggJFBhcmFte0lEfSApIHsKCiAgICAgICAgIyBTUUwKICAgICAgICByZXR1cm4gaWYgISREQk9iamVjdC0+UHJlcGFyZSgKICAgICAgICAgICAgU1FMID0+ICcKICAgICAgICAgICAgICAgIFNFTEVDVCBhY3Rpb24sIHN0YXR1cwogICAgICAgICAgICAgICAgRlJPTSB0aW1lX2FjY291bnRpbmdfYWN0aW9uCiAgICAgICAgICAgICAgICBXSEVSRSBpZCA9ID8nLAogICAgICAgICAgICBCaW5kID0+IFsgXCRQYXJhbXtJRH0gXSwKICAgICAgICApOwogICAgICAgIHdoaWxlICggbXkgQERhdGEgPSAkREJPYmplY3QtPkZldGNocm93QXJyYXkoKSApIHsKICAgICAgICAgICAgJVRhc2sgPSAoCiAgICAgICAgICAgICAgICBJRCAgICAgICAgICAgPT4gJFBhcmFte0lEfSwKICAgICAgICAgICAgICAgIEFjdGlvbiAgICAgICA9PiAkRGF0YVswXSwKICAgICAgICAgICAgICAgIEFjdGlvblN0YXR1cyA9PiAkRGF0YVsxXSwKICAgICAgICAgICAgKTsKICAgICAgICB9CiAgICB9CgogICAgIyBsb29rIGZvciB0aGUgdGFzayBkYXRhIHdpdGggdGhlIHRhc2sgbmFtZQogICAgZWxzZSB7CgogICAgICAgICMgU1FMCiAgICAgICAgcmV0dXJuIGlmICEkREJPYmplY3QtPlByZXBhcmUoCiAgICAgICAgICAgIFNRTCA9PiAnCiAgICAgICAgICAgICAgICBTRUxFQ1QgaWQsIHN0YXR1cwogICAgICAgICAgICAgICAgRlJPTSB0aW1lX2FjY291bnRpbmdfYWN0aW9uCiAgICAgICAgICAgICAgICBXSEVSRSBhY3Rpb24gPSA/JywKICAgICAgICAgICAgQmluZCA9PiBbIFwkUGFyYW17QWN0aW9ufSBdLAogICAgICAgICk7CiAgICAgICAgd2hpbGUgKCBteSBARGF0YSA9ICREQk9iamVjdC0+RmV0Y2hyb3dBcnJheSgpICkgewogICAgICAgICAgICAlVGFzayA9ICgKICAgICAgICAgICAgICAgIEFjdGlvbiAgICAgICA9PiAkUGFyYW17QWN0aW9ufSwKICAgICAgICAgICAgICAgIElEICAgICAgICAgICA9PiAkRGF0YVswXSwKICAgICAgICAgICAgICAgIEFjdGlvblN0YXR1cyA9PiAkRGF0YVsxXSwKICAgICAgICAgICAgKTsKICAgICAgICB9CiAgICB9CgogICAgcmV0dXJuICVUYXNrOwp9Cgo9aGVhZDIgQWN0aW9uU2V0dGluZ3NJbnNlcnQoKQoKaW5zZXJ0cyBhIG5ldyBhY3Rpb24gaW4gdGhlIGRiCgogICAgJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5BY3Rpb25TZXR0aW5nc0luc2VydCgKICAgICAgICBBY3Rpb24gICAgICAgPT4gJ21lZXRpbmcnLCAgICMgb3B0aW9uYWwKICAgICAgICBBY3Rpb25TdGF0dXMgPT4gMSB8fCAwLCAgICAgICMgb3B0aW9uYWwKICAgICk7Cgo9Y3V0CgpzdWIgQWN0aW9uU2V0dGluZ3NJbnNlcnQgewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICAjIGdldCBjb25maWcgb2JqZWN0CiAgICBteSAkQ29uZmlnT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpDb25maWcnKTsKCiAgICAkUGFyYW17QWN0aW9ufSB8fD0gJENvbmZpZ09iamVjdC0+R2V0KCdUaW1lQWNjb3VudGluZzo6RGVmYXVsdEFjdGlvbk5hbWUnKSB8fCAnJzsKICAgIGlmICggJFBhcmFte0FjdGlvblN0YXR1c30gbmUgJzAnICYmICRQYXJhbXtBY3Rpb25TdGF0dXN9IG5lICcxJyApIHsKICAgICAgICAkUGFyYW17QWN0aW9uU3RhdHVzfSA9ICRDb25maWdPYmplY3QtPkdldCgnVGltZUFjY291bnRpbmc6OkRlZmF1bHRBY3Rpb25TdGF0dXMnKTsKICAgIH0KCiAgICAjIGdldCBkYXRhYmFzZSBvYmplY3QKICAgIG15ICREQk9iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpEQicpOwoKICAgICMgZGIgaW5zZXJ0CiAgICByZXR1cm4gaWYgISREQk9iamVjdC0+RG8oCiAgICAgICAgU1FMID0+ICcKICAgICAgICAgICAgSU5TRVJUIElOVE8gdGltZV9hY2NvdW50aW5nX2FjdGlvbiAoYWN0aW9uLCBzdGF0dXMpCiAgICAgICAgICAgIFZBTFVFUyAoPywgPyknLAogICAgICAgIEJpbmQgPT4gWyBcJFBhcmFte0FjdGlvbn0sIFwkUGFyYW17QWN0aW9uU3RhdHVzfSwgXSwKICAgICk7CgogICAgcmV0dXJuIDE7Cn0KCj1oZWFkMiBBY3Rpb25TZXR0aW5nc1VwZGF0ZSgpCgp1cGRhdGVzIGFuIGFjdGlvbiAodGFzaykKCiAgICBteSAkU3VjY2VzcyA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+QWN0aW9uU2V0dGluZ3NVcGRhdGUoCiAgICAgICAgQWN0aW9uSUQgICAgID0+IDEyMywKICAgICAgICBBY3Rpb24gICAgICAgPT4gJ2ludGVybmFsJywKICAgICAgICBBY3Rpb25TdGF0dXMgPT4gMSwKICAgICk7Cgo9Y3V0CgpzdWIgQWN0aW9uU2V0dGluZ3NVcGRhdGUgewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICAjIGNoZWNrIG5lZWRlZCBzdHVmZgogICAgZm9yIG15ICROZWVkZWQgKHF3KEFjdGlvbklEIEFjdGlvbikpIHsKICAgICAgICBpZiAoICEkUGFyYW17JE5lZWRlZH0gKSB7CiAgICAgICAgICAgICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpMb2cnKS0+TG9nKAogICAgICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICAgICAgICAgIE1lc3NhZ2UgID0+ICJOZWVkICROZWVkZWQhIgogICAgICAgICAgICApOwoKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgIH0KCiAgICAjIFNRTAogICAgcmV0dXJuIGlmICEkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6REInKS0+RG8oCiAgICAgICAgU1FMID0+ICcKICAgICAgICAgICAgVVBEQVRFIHRpbWVfYWNjb3VudGluZ19hY3Rpb24KICAgICAgICAgICAgU0VUIGFjdGlvbiA9ID8sIHN0YXR1cyA9ID8KICAgICAgICAgICAgV0hFUkUgaWQgPSA/JywKICAgICAgICBCaW5kID0+IFsKICAgICAgICAgICAgXCRQYXJhbXtBY3Rpb259LCBcJFBhcmFte0FjdGlvblN0YXR1c30sIFwkUGFyYW17QWN0aW9uSUR9CiAgICAgICAgXSwKICAgICk7CgogICAgcmV0dXJuIDE7Cn0KCj1oZWFkMiBVc2VyTGlzdCgpCgpyZXR1cm5zIGEgaGFzaCB3aXRoIHRoZSB1c2VyIGRhdGEgb2YgYWxsIHVzZXJzCgogICAgbXkgJVVzZXJEYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyTGlzdCgpOwoKPWN1dAoKc3ViIFVzZXJMaXN0IHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBnZXQgZGF0YWJhc2Ugb2JqZWN0CiAgICBteSAkREJPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6REInKTsKCiAgICAjIGRiIHNlbGVjdAogICAgJERCT2JqZWN0LT5QcmVwYXJlKAogICAgICAgIFNRTCA9PiAnCiAgICAgICAgICAgIFNFTEVDVCB1c2VyX2lkLCBkZXNjcmlwdGlvbiwgc2hvd19vdmVydGltZSwgY3JlYXRlX3Byb2plY3QsIGFsbG93X3NraXAsIGNhbGVuZGFyCiAgICAgICAgICAgIEZST00gdGltZV9hY2NvdW50aW5nX3VzZXInLAogICAgKTsKCiAgICAjIGZldGNoIHRoZSBkYXRhCiAgICBteSAlRGF0YTsKICAgIHdoaWxlICggbXkgQFJvdyA9ICREQk9iamVjdC0+RmV0Y2hyb3dBcnJheSgpICkgewogICAgICAgICREYXRheyAkUm93WzBdIH17VXNlcklEfSAgICAgICAgPSAkUm93WzBdOwogICAgICAgICREYXRheyAkUm93WzBdIH17RGVzY3JpcHRpb259ICAgPSAkUm93WzFdOwogICAgICAgICREYXRheyAkUm93WzBdIH17U2hvd092ZXJ0aW1lfSAgPSAkUm93WzJdOwogICAgICAgICREYXRheyAkUm93WzBdIH17Q3JlYXRlUHJvamVjdH0gPSAkUm93WzNdOwogICAgICAgICREYXRheyAkUm93WzBdIH17QWxsb3dTa2lwfSAgICAgPSAkUm93WzRdOwogICAgICAgICREYXRheyAkUm93WzBdIH17Q2FsZW5kYXJ9ICAgICAgPSAkUm93WzVdOwogICAgfQoKICAgIHJldHVybiAlRGF0YTsKfQoKPWhlYWQyIFVzZXJHZXQoKQoKcmV0dXJucyBhIGhhc2ggd2l0aCB0aGUgdXNlciBkYXRhIG9mIG9uZSB1c2VyCgogICAgbXkgJVVzZXJEYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyR2V0KAogICAgICAgIFVzZXJJRCA9PiAxNSwKICAgICk7Cgo9Y3V0CgpzdWIgVXNlckdldCB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgICMgY2hlY2sgbmVlZGVkIGRhdGEKICAgIGlmICggISRQYXJhbXtVc2VySUR9ICkgewogICAgICAgICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpMb2cnKS0+TG9nKAogICAgICAgICAgICBQcmlvcml0eSA9PiAnZXJyb3InLAogICAgICAgICAgICBNZXNzYWdlICA9PiAnVXNlckdldDogTmVlZCBVc2VySUQhJywKICAgICAgICApOwoKICAgICAgICByZXR1cm47CiAgICB9CgogICAgIyBnZXQgZGF0YWJhc2Ugb2JqZWN0CiAgICBteSAkREJPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6REInKTsKCiAgICAjIGRiIHNlbGVjdAogICAgJERCT2JqZWN0LT5QcmVwYXJlKAogICAgICAgIFNRTCA9PiAnCiAgICAgICAgICAgIFNFTEVDVCBkZXNjcmlwdGlvbiwgc2hvd19vdmVydGltZSwgY3JlYXRlX3Byb2plY3QsIGFsbG93X3NraXAsIGNhbGVuZGFyCiAgICAgICAgICAgIEZST00gdGltZV9hY2NvdW50aW5nX3VzZXIKICAgICAgICAgICAgV0hFUkUgdXNlcl9pZCA9ID8nLAogICAgICAgIEJpbmQgPT4gWyBcJFBhcmFte1VzZXJJRH0gXSwKICAgICk7CgogICAgIyBmZXRjaCB0aGUgZGF0YQogICAgbXkgJURhdGE7CiAgICB3aGlsZSAoIG15IEBSb3cgPSAkREJPYmplY3QtPkZldGNocm93QXJyYXkoKSApIHsKICAgICAgICAkRGF0YXtVc2VySUR9ICAgICAgICA9ICRQYXJhbXtVc2VySUR9OwogICAgICAgICREYXRhe0Rlc2NyaXB0aW9ufSAgID0gJFJvd1swXTsKICAgICAgICAkRGF0YXtTaG93T3ZlcnRpbWV9ICA9ICRSb3dbMV07CiAgICAgICAgJERhdGF7Q3JlYXRlUHJvamVjdH0gPSAkUm93WzJdOwogICAgICAgICREYXRhe0FsbG93U2tpcH0gICAgID0gJFJvd1szXTsKICAgICAgICAkRGF0YXtDYWxlbmRhcn0gICAgICA9ICRSb3dbNF07CiAgICB9CgogICAgcmV0dXJuICVEYXRhOwp9Cgo9aGVhZDIgVXNlclNldHRpbmdzR2V0KCkKCnJldHVybnMgYSBoYXNoIHdpdGggdGhlIGNvbXBsZXRlIHVzZXIgcGVyaW9kIGRhdGEgZm9yIGFsbCB1c2VycwoKICAgIG15ICVVc2VyRGF0YSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+VXNlclNldHRpbmdzR2V0KCk7CgpyZXR1cm5zOgogICAgJVVzZXJEYXRhID0gKAogICAgICAgIDMgPT4gewogICAgICAgICAgICAxID0+IHsKICAgICAgICAgICAgICAgIERhdGVFbmQgICAgID0+ICIyMDE1LTEyLTMxIiwKICAgICAgICAgICAgICAgIERhdGVTdGFydCAgID0+ICIyMDE1LTAxLTAxIiwKICAgICAgICAgICAgICAgIExlYXZlRGF5cyAgID0+ICIyMy4wMCIsCiAgICAgICAgICAgICAgICBPdmVydGltZSAgICA9PiAiMC4wMCIsCiAgICAgICAgICAgICAgICBQZXJpb2QgICAgICA9PiAxLAogICAgICAgICAgICAgICAgVXNlcklEICAgICAgPT4gMywKICAgICAgICAgICAgICAgIFVzZXJTdGF0dXMgID0+IDEsCiAgICAgICAgICAgICAgICBXZWVrbHlIb3VycyA9PiAiNDAuMDAiLAogICAgICAgICAgICB9LAogICAgICAgICAgICAyID0+IHsKICAgICAgICAgICAgICAgIERhdGVFbmQgICAgID0+ICIyMDE1LTEyLTMxIiwKICAgICAgICAgICAgICAgIERhdGVTdGFydCAgID0+ICIyMDE1LTAxLTAxIiwKICAgICAgICAgICAgICAgIExlYXZlRGF5cyAgID0+ICIyMy4wMCIsCiAgICAgICAgICAgICAgICBPdmVydGltZSAgICA9PiAiMC4wMCIsCiAgICAgICAgICAgICAgICBQZXJpb2QgICAgICA9PiAyLAogICAgICAgICAgICAgICAgVXNlcklEICAgICAgPT4gMywKICAgICAgICAgICAgICAgIFVzZXJTdGF0dXMgID0+IDEsCiAgICAgICAgICAgICAgICBXZWVrbHlIb3VycyA9PiAiMzIuMDAiLAogICAgICAgICAgICB9LAogICAgICAgIH0sCiAgICAgICAgNCA9PiB7CiAgICAgICAgICAgIDEgPT4gewogICAgICAgICAgICAgICAgRGF0ZUVuZCAgICAgPT4gIjIwMTUtMTItMzEiLAogICAgICAgICAgICAgICAgRGF0ZVN0YXJ0ICAgPT4gIjIwMTUtMDEtMDEiLAogICAgICAgICAgICAgICAgTGVhdmVEYXlzICAgPT4gIjIzLjAwIiwKICAgICAgICAgICAgICAgIE92ZXJ0aW1lICAgID0+ICIwLjAwIiwKICAgICAgICAgICAgICAgIFBlcmlvZCAgICAgID0+IDEsCiAgICAgICAgICAgICAgICBVc2VySUQgICAgICA9PiA0LAogICAgICAgICAgICAgICAgVXNlclN0YXR1cyAgPT4gMSwKICAgICAgICAgICAgICAgIFdlZWtseUhvdXJzID0+ICI0MC4wMCIsCiAgICAgICAgICAgIH0sCiAgICAgICAgfSwKICAgIH07Cgo9Y3V0CgpzdWIgVXNlclNldHRpbmdzR2V0IHsKICAgIG15ICRTZWxmID0gc2hpZnQ7CgogICAgIyBnZXQgZGF0YWJhc2Ugb2JqZWN0CiAgICBteSAkREJPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6REInKTsKCiAgICAjIGRiIHNlbGVjdAogICAgJERCT2JqZWN0LT5QcmVwYXJlKAogICAgICAgIFNRTCA9PiAnCiAgICAgICAgICAgIFNFTEVDVCB1c2VyX2lkLCBwcmVmZXJlbmNlX3BlcmlvZCwgZGF0ZV9zdGFydCwgZGF0ZV9lbmQsIHdlZWtseV9ob3VycywgbGVhdmVfZGF5cywKICAgICAgICAgICAgICAgIG92ZXJ0aW1lLCBzdGF0dXMKICAgICAgICAgICAgRlJPTSB0aW1lX2FjY291bnRpbmdfdXNlcl9wZXJpb2QnCiAgICApOwoKICAgICMgZmV0Y2ggdGhlIGRhdGEKICAgIG15ICVEYXRhOwogICAgd2hpbGUgKCBteSBAUm93ID0gJERCT2JqZWN0LT5GZXRjaHJvd0FycmF5KCkgKSB7CiAgICAgICAgJERhdGF7ICRSb3dbMF0gfXsgJFJvd1sxXSB9e1VzZXJJRH0gICAgICA9ICRSb3dbMF07CiAgICAgICAgJERhdGF7ICRSb3dbMF0gfXsgJFJvd1sxXSB9e1BlcmlvZH0gICAgICA9ICRSb3dbMV07CiAgICAgICAgJERhdGF7ICRSb3dbMF0gfXsgJFJvd1sxXSB9e0RhdGVTdGFydH0gICA9IHN1YnN0ciggJFJvd1syXSwgMCwgMTAgKTsKICAgICAgICAkRGF0YXsgJFJvd1swXSB9eyAkUm93WzFdIH17RGF0ZUVuZH0gICAgID0gc3Vic3RyKCAkUm93WzNdLCAwLCAxMCApOwogICAgICAgICREYXRheyAkUm93WzBdIH17ICRSb3dbMV0gfXtXZWVrbHlIb3Vyc30gPSAkUm93WzRdOwogICAgICAgICREYXRheyAkUm93WzBdIH17ICRSb3dbMV0gfXtMZWF2ZURheXN9ICAgPSAkUm93WzVdOwogICAgICAgICREYXRheyAkUm93WzBdIH17ICRSb3dbMV0gfXtPdmVydGltZX0gICAgPSAkUm93WzZdOwogICAgICAgICREYXRheyAkUm93WzBdIH17ICRSb3dbMV0gfXtVc2VyU3RhdHVzfSAgPSAkUm93WzddOwogICAgfQoKICAgIHJldHVybiAlRGF0YTsKfQoKPWhlYWQyIFNpbmdsZVVzZXJTZXR0aW5nc0dldCgpCgpyZXR1cm5zIGEgaGFzaCB3aXRoIHRoZSByZXF1ZXN0ZWQgdXNlcidzIHBlcmlvZCBkYXRhCgogICAgbXkgJVVzZXJEYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5TaW5nbGVVc2VyU2V0dGluZ3NHZXQoIFVzZXJJRCA9PiAxICk7Cgo9Y3V0CgpzdWIgU2luZ2xlVXNlclNldHRpbmdzR2V0IHsKICAgIG15ICggJFNlbGYsICVQYXJhbSApID0gQF87CgogICAgIyBjaGVjayBuZWVkZWQgc3R1ZmYKICAgIGlmICggISRQYXJhbXtVc2VySUR9ICkgewogICAgICAgICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpMb2cnKS0+TG9nKAogICAgICAgICAgICBQcmlvcml0eSA9PiAnZXJyb3InLAogICAgICAgICAgICBNZXNzYWdlICA9PiAnTmVlZCBVc2VySUQhJwogICAgICAgICk7CgogICAgICAgIHJldHVybjsKICAgIH0KCiAgICAjIGdldCBkYXRhYmFzZSBvYmplY3QKICAgIG15ICREQk9iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpEQicpOwoKICAgICMgZGIgc2VsZWN0CiAgICAkREJPYmplY3QtPlByZXBhcmUoCiAgICAgICAgU1FMID0+ICcKICAgICAgICAgICAgU0VMRUNUIHVzZXJfaWQsIHByZWZlcmVuY2VfcGVyaW9kLCBkYXRlX3N0YXJ0LCBkYXRlX2VuZCwgd2Vla2x5X2hvdXJzLCBsZWF2ZV9kYXlzLAogICAgICAgICAgICAgICAgb3ZlcnRpbWUsIHN0YXR1cwogICAgICAgICAgICBGUk9NIHRpbWVfYWNjb3VudGluZ191c2VyX3BlcmlvZCBXSEVSRSB1c2VyX2lkID0gPycsCiAgICAgICAgQmluZCA9PiBbIFwkUGFyYW17VXNlcklEfSBdLAogICAgKTsKCiAgICAjIGZldGNoIHRoZSBkYXRhCiAgICBteSAlVXNlckRhdGE7CiAgICB3aGlsZSAoIG15IEBSb3cgPSAkREJPYmplY3QtPkZldGNocm93QXJyYXkoKSApIHsKICAgICAgICAkVXNlckRhdGF7ICRSb3dbMV0gfXtVc2VySUR9ICAgICAgPSAkUm93WzBdOwogICAgICAgICRVc2VyRGF0YXsgJFJvd1sxXSB9e1BlcmlvZH0gICAgICA9ICRSb3dbMV07CiAgICAgICAgJFVzZXJEYXRheyAkUm93WzFdIH17RGF0ZVN0YXJ0fSAgID0gc3Vic3RyKCAkUm93WzJdLCAwLCAxMCApOwogICAgICAgICRVc2VyRGF0YXsgJFJvd1sxXSB9e0RhdGVFbmR9ICAgICA9IHN1YnN0ciggJFJvd1szXSwgMCwgMTAgKTsKICAgICAgICAkVXNlckRhdGF7ICRSb3dbMV0gfXtXZWVrbHlIb3Vyc30gPSAkUm93WzRdOwogICAgICAgICRVc2VyRGF0YXsgJFJvd1sxXSB9e0xlYXZlRGF5c30gICA9ICRSb3dbNV07CiAgICAgICAgJFVzZXJEYXRheyAkUm93WzFdIH17T3ZlcnRpbWV9ICAgID0gJFJvd1s2XTsKICAgICAgICAkVXNlckRhdGF7ICRSb3dbMV0gfXtVc2VyU3RhdHVzfSAgPSAkUm93WzddOwogICAgfQoKICAgIHJldHVybiAlVXNlckRhdGE7Cn0KCj1oZWFkMiBVc2VyTGFzdFBlcmlvZE51bWJlckdldCgpCgpyZXR1cm5zIHRoZSBudW1iZXIgb2YgdGhlIGxhc3QgcmVnaXN0ZXJlZCBwZXJpb2QgZm9yIHRoZSBzcGVjaWZpZWQgdXNlcgoKICAgIG15ICRMYXN0UGVyaW9kTnVtYmVyID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyTGFzdFBlcmlvZE51bWJlckdldCggVXNlcklEID0+IDEgKTsKCj1jdXQKCnN1YiBVc2VyTGFzdFBlcmlvZE51bWJlckdldCB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgICMgY2hlY2sgbmVlZGVkIHN0dWZmCiAgICBpZiAoICEkUGFyYW17VXNlcklEfSApIHsKICAgICAgICAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6TG9nJyktPkxvZygKICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICAgICAgTWVzc2FnZSAgPT4gJ05lZWQgVXNlcklEIScKICAgICAgICApOwoKICAgICAgICByZXR1cm47CiAgICB9CgogICAgIyBnZXQgZGF0YWJhc2Ugb2JqZWN0CiAgICBteSAkREJPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6REInKTsKCiAgICAjIGRiIHNlbGVjdAogICAgJERCT2JqZWN0LT5QcmVwYXJlKAogICAgICAgIFNRTCA9PiAnCiAgICAgICAgICAgIFNFTEVDVCBtYXgocHJlZmVyZW5jZV9wZXJpb2QpCiAgICAgICAgICAgIEZST00gdGltZV9hY2NvdW50aW5nX3VzZXJfcGVyaW9kCiAgICAgICAgICAgIFdIRVJFIHVzZXJfaWQgPSA/JywKICAgICAgICBCaW5kID0+IFsgXCRQYXJhbXtVc2VySUR9IF0sCiAgICApOwoKICAgICMgZmV0Y2ggdGhlIGRhdGEKICAgIG15IEBSb3cgICAgICAgICAgICAgID0gJERCT2JqZWN0LT5GZXRjaHJvd0FycmF5KCk7CiAgICBteSAkTGFzdFBlcmlvZE51bWJlciA9ICRSb3dbMF0gfHwgMDsKCiAgICByZXR1cm4gJExhc3RQZXJpb2ROdW1iZXI7Cn0KCj1oZWFkMiBVc2VyU2V0dGluZ3NJbnNlcnQoKQoKaW5zZXJ0IG5ldyB1c2VyIGRhdGEgaW4gdGhlIGRiCgogICAgJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyU2V0dGluZ3NJbnNlcnQoCiAgICAgICAgVXNlcklEICAgICAgID0+ICcyJywKICAgICAgICBQZXJpb2QgICAgICAgPT4gJzInLAogICAgKTsKCj1jdXQKCnN1YiBVc2VyU2V0dGluZ3NJbnNlcnQgewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICAjIGNoZWNrIG5lZWRlZCBzdHVmZgogICAgZm9yIG15ICROZWVkZWQgKHF3IChVc2VySUQgUGVyaW9kKSkgewogICAgICAgIGlmICggISRQYXJhbXskTmVlZGVkfSApIHsKICAgICAgICAgICAgJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkxvZycpLT5Mb2coCiAgICAgICAgICAgICAgICBQcmlvcml0eSA9PiAnZXJyb3InLAogICAgICAgICAgICAgICAgTWVzc2FnZSAgPT4gIk5lZWQgJE5lZWRlZCIKICAgICAgICAgICAgKTsKCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICB9CgogICAgIyBjaGVjayBpZiB1c2VyIGV4aXN0cwogICAgaWYgKCAhJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlVzZXInKS0+VXNlckxvb2t1cCggVXNlcklEID0+ICRQYXJhbXtVc2VySUR9ICkgKSB7CiAgICAgICAgJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkxvZycpLT5Mb2coCiAgICAgICAgICAgIFByaW9yaXR5ID0+ICdlcnJvcicsCiAgICAgICAgICAgIE1lc3NhZ2UgID0+ICJVc2VySUQgJFBhcmFte1VzZXJJRH0gZG9lcyBub3QgZXhpc3QhIgogICAgICAgICk7CgogICAgICAgIHJldHVybjsKICAgIH0KCiAgICAjIGdldCBjb25maWcgb2JqZWN0CiAgICBteSAkQ29uZmlnT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpDb25maWcnKTsKCiAgICAkUGFyYW17V2Vla2x5SG91cnN9ID0gJENvbmZpZ09iamVjdC0+R2V0KCdUaW1lQWNjb3VudGluZzo6RGVmYXVsdFVzZXJXZWVrbHlIb3VycycpCiAgICAgICAgfHwgJzQwJzsKICAgICRQYXJhbXtMZWF2ZURheXN9ICA9ICRDb25maWdPYmplY3QtPkdldCgnVGltZUFjY291bnRpbmc6OkRlZmF1bHRVc2VyTGVhdmVEYXlzJykgfHwgJzI1JzsKICAgICRQYXJhbXtVc2VyU3RhdHVzfSA9ICRDb25maWdPYmplY3QtPkdldCgnVGltZUFjY291bnRpbmc6OkRlZmF1bHRVc2VyU3RhdHVzJykgICAgfHwgJzEnOwogICAgJFBhcmFte092ZXJ0aW1lfSAgID0gJENvbmZpZ09iamVjdC0+R2V0KCdUaW1lQWNjb3VudGluZzo6RGVmYXVsdFVzZXJPdmVydGltZScpICB8fCAnMCc7CiAgICAkUGFyYW17RGF0ZUVuZH0gICAgPSAkQ29uZmlnT2JqZWN0LT5HZXQoJ1RpbWVBY2NvdW50aW5nOjpEZWZhdWx0VXNlckRhdGVFbmQnKQogICAgICAgIHx8ICcyMDE5LTEyLTMxJzsKICAgICRQYXJhbXtEYXRlU3RhcnR9ID0gJENvbmZpZ09iamVjdC0+R2V0KCdUaW1lQWNjb3VudGluZzo6RGVmYXVsdFVzZXJEYXRlU3RhcnQnKQogICAgICAgIHx8ICcyMDE5LTAxLTAxJzsKICAgICRQYXJhbXtEZXNjcmlwdGlvbn0gPSAkQ29uZmlnT2JqZWN0LT5HZXQoJ1RpbWVBY2NvdW50aW5nOjpEZWZhdWx0VXNlckRlc2NyaXB0aW9uJykKICAgICAgICB8fCAnUHV0IHlvdXIgZGVzY3JpcHRpb24gaGVyZS4nOwoKICAgICRQYXJhbXtEYXRlU3RhcnR9IC49ICcgMDA6MDA6MDAnOwogICAgJFBhcmFte0RhdGVFbmR9ICAgLj0gJyAwMDowMDowMCc7CgogICAgIyBkZWxldGUgY2FjaGUKICAgIGRlbGV0ZSAkU2VsZi0+eydDYWNoZTo6VXNlckN1cnJlbnRQZXJpb2RHZXQnfTsKCiAgICAjIGdldCBkYXRhYmFzZSBvYmplY3QKICAgIG15ICREQk9iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpEQicpOwoKICAgICMgZGIgaW5zZXJ0CiAgICByZXR1cm4gaWYgISREQk9iamVjdC0+RG8oCiAgICAgICAgU1FMID0+ICcKICAgICAgICAgICAgSU5TRVJUIElOVE8gdGltZV9hY2NvdW50aW5nX3VzZXJfcGVyaW9kICh1c2VyX2lkLCBwcmVmZXJlbmNlX3BlcmlvZCwgZGF0ZV9zdGFydCwKICAgICAgICAgICAgICAgIGRhdGVfZW5kLCB3ZWVrbHlfaG91cnMsIGxlYXZlX2RheXMsIG92ZXJ0aW1lLCBzdGF0dXMpCiAgICAgICAgICAgIFZBTFVFUyAoPywgPywgPywgPywgPywgPywgPywgPyknLAogICAgICAgIEJpbmQgPT4gWwogICAgICAgICAgICBcJFBhcmFte1VzZXJJRH0sICAgICAgXCRQYXJhbXtQZXJpb2R9LCAgICBcJFBhcmFte0RhdGVTdGFydH0sIFwkUGFyYW17RGF0ZUVuZH0sCiAgICAgICAgICAgIFwkUGFyYW17V2Vla2x5SG91cnN9LCBcJFBhcmFte0xlYXZlRGF5c30sIFwkUGFyYW17T3ZlcnRpbWV9LCAgXCRQYXJhbXtVc2VyU3RhdHVzfSwKICAgICAgICBdLAogICAgKTsKCiAgICAjIHNlbGVjdCBVc2VySUQKICAgICREQk9iamVjdC0+UHJlcGFyZSgKICAgICAgICBTUUwgPT4gJwogICAgICAgICAgICBTRUxFQ1QgdXNlcl9pZAogICAgICAgICAgICBGUk9NIHRpbWVfYWNjb3VudGluZ191c2VyCiAgICAgICAgICAgIFdIRVJFIHVzZXJfaWQgPSA/JywKICAgICAgICBCaW5kICA9PiBbIFwkUGFyYW17VXNlcklEfSwgXSwKICAgICAgICBMaW1pdCA9PiAxLAogICAgKTsKCiAgICAjIGZldGNoIHRoZSBkYXRhCiAgICBteSAkVXNlcklEOwogICAgd2hpbGUgKCBteSBAUm93ID0gJERCT2JqZWN0LT5GZXRjaHJvd0FycmF5KCkgKSB7CiAgICAgICAgJFVzZXJJRCA9ICRSb3dbMF07CiAgICB9CgogICAgaWYgKCAhZGVmaW5lZCAkVXNlcklEICkgewoKICAgICAgICAjIGRiIGluc2VydAogICAgICAgIHJldHVybiBpZiAhJERCT2JqZWN0LT5EbygKICAgICAgICAgICAgU1FMID0+ICcKICAgICAgICAgICAgICAgIElOU0VSVCBJTlRPIHRpbWVfYWNjb3VudGluZ191c2VyICh1c2VyX2lkLCBkZXNjcmlwdGlvbikKICAgICAgICAgICAgICAgIFZBTFVFUyAoPywgPyknLAogICAgICAgICAgICBCaW5kID0+IFsgXCRQYXJhbXtVc2VySUR9LCBcJFBhcmFte0Rlc2NyaXB0aW9ufSwgXSwKICAgICAgICApOwogICAgfQoKICAgIHJldHVybiAxOwp9Cgo9aGVhZDIgVXNlclNldHRpbmdzVXBkYXRlKCkKCnVwZGF0ZXMgdXNlciBkYXRhIGluIHRoZSBkYgoKICAgICRUaW1lQWNjb3VudGluZ09iamVjdC0+VXNlclNldHRpbmdzVXBkYXRlKAogICAgICAgIFVzZXJJRCAgICAgICAgPT4gMSwKICAgICAgICBEZXNjcmlwdGlvbiAgID0+ICdTb21lIFRleHQnLAogICAgICAgIENyZWF0ZVByb2plY3QgPT4gMSB8fCAwLAogICAgICAgIFNob3dPdmVydGltZSAgPT4gMSB8fCAwLAogICAgICAgIEFsbG93U2tpcCAgICAgPT4gMSB8fCAwLAogICAgICAgIFBlcmlvZCAgICAgICAgPT4gewogICAgICAgICAgICAxID0+IHsKICAgICAgICAgICAgICAgIERhdGVTdGFydCAgICA9PiAnMjAxNS0xMi0xMicsCiAgICAgICAgICAgICAgICBEYXRlRW5kICAgICAgPT4gJzIwMTUtMTItMzEnLAogICAgICAgICAgICAgICAgV2Vla2x5SG91cnMgID0+ICczOCcsCiAgICAgICAgICAgICAgICBMZWF2ZURheXMgICAgPT4gJzI1JywKICAgICAgICAgICAgICAgIE92ZXJ0aW1lICAgICA9PiAnMzgnLAogICAgICAgICAgICAgICAgVXNlclN0YXR1cyAgID0+IDEgfHwgMCwKICAgICAgICAgICAgfSwKICAgICAgICAgICAgMiA9PiB7CiAgICAgICAgICAgICAgICBEYXRlU3RhcnQgICAgPT4gJzIwMTUtMTItMTInLAogICAgICAgICAgICAgICAgRGF0ZUVuZCAgICAgID0+ICcyMDE1LTEyLTMxJywKICAgICAgICAgICAgICAgIFdlZWtseUhvdXJzICA9PiAnMzgnLAogICAgICAgICAgICAgICAgTGVhdmVEYXlzICAgID0+ICcyNScsCiAgICAgICAgICAgICAgICBPdmVydGltZSAgICAgPT4gJzM4JywKICAgICAgICAgICAgICAgIFVzZXJTdGF0dXMgICA9PiAxIHx8IDAsCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIDMgPT4gLi4uLi4uCiAgICAgICAgfQogICAgKTsKCj1jdXQKCnN1YiBVc2VyU2V0dGluZ3NVcGRhdGUgewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICAjIGRlbGV0ZSBjYWNoZQogICAgZGVsZXRlICRTZWxmLT57J0NhY2hlOjpVc2VyQ3VycmVudFBlcmlvZEdldCd9OwoKICAgIG15ICRVc2VySUQgPSAkUGFyYW17VXNlcklEfTsKCiAgICBpZiAoICFkZWZpbmVkICRQYXJhbXtQZXJpb2R9LT57MX17RGF0ZVN0YXJ0fSAmJiAhZGVmaW5lZCAkUGFyYW17UGVyaW9kfS0+ezF9e0RhdGVFbmR9ICkgewoKICAgICAgICByZXR1cm4gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkxvZycpLT5Mb2coCiAgICAgICAgICAgIFByaW9yaXR5ID0+ICdlcnJvcicsCiAgICAgICAgICAgIE1lc3NhZ2UgID0+ICJVc2VyU2V0dGluZ1VwZGF0ZTogTm8gZGF0YSBmb3IgdXNlciBpZCAkVXNlcklEISIKICAgICAgICApOwogICAgfQoKICAgICMgc2V0IGRlZmF1bHQgdmFsdWVzCiAgICAkUGFyYW17U2hvd092ZXJ0aW1lfSAgfHw9IDA7CiAgICAkUGFyYW17Q3JlYXRlUHJvamVjdH0gfHw9IDA7CiAgICAkUGFyYW17QWxsb3dTa2lwfSAgICAgfHw9IDA7CiAgICAkUGFyYW17Q2FsZW5kYXJ9ICAgICAgfHw9IDA7CgogICAgIyBnZXQgZGF0YWJhc2Ugb2JqZWN0CiAgICBteSAkREJPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6REInKTsKCiAgICAjIGRiIGluc2VydAogICAgcmV0dXJuIGlmICEkREJPYmplY3QtPkRvKAogICAgICAgIFNRTCA9PiAnCiAgICAgICAgICAgIFVQREFURSB0aW1lX2FjY291bnRpbmdfdXNlcgogICAgICAgICAgICBTRVQgZGVzY3JpcHRpb24gPSA/LCBzaG93X292ZXJ0aW1lID0gPywgY3JlYXRlX3Byb2plY3QgPSA/LCBhbGxvd19za2lwID0gPywgY2FsZW5kYXIgPSA/CiAgICAgICAgICAgIFdIRVJFIHVzZXJfaWQgPSA/JywKICAgICAgICBCaW5kID0+IFsKICAgICAgICAgICAgXCRQYXJhbXtEZXNjcmlwdGlvbn0sICAgXCRQYXJhbXtTaG93T3ZlcnRpbWV9LAogICAgICAgICAgICBcJFBhcmFte0NyZWF0ZVByb2plY3R9LCBcJFBhcmFte0FsbG93U2tpcH0sIFwkUGFyYW17Q2FsZW5kYXJ9LCBcJFBhcmFte1VzZXJJRH0KICAgICAgICBdLAogICAgKTsKCiAgICAjIHVwZGF0ZSBhbGwgcGVyaW9kcwogICAgZm9yIG15ICRQZXJpb2QgKCBzb3J0IGtleXMgJXsgJFBhcmFte1BlcmlvZH0gfSApIHsKCiAgICAgICAgIyBkYiBpbnNlcnQKICAgICAgICByZXR1cm4gaWYgISREQk9iamVjdC0+RG8oCiAgICAgICAgICAgIFNRTCA9PiAnCiAgICAgICAgICAgICAgICBVUERBVEUgdGltZV9hY2NvdW50aW5nX3VzZXJfcGVyaW9kCiAgICAgICAgICAgICAgICBTRVQgbGVhdmVfZGF5cyA9ID8sIGRhdGVfc3RhcnQgPSA/LCBkYXRlX2VuZCA9ID8sIG92ZXJ0aW1lID0gPywgd2Vla2x5X2hvdXJzID0gPywKICAgICAgICAgICAgICAgICAgICBzdGF0dXMgPSA/CiAgICAgICAgICAgICAgICBXSEVSRSB1c2VyX2lkID0gPwogICAgICAgICAgICAgICAgICAgIEFORCBwcmVmZXJlbmNlX3BlcmlvZCA9ID8nLAogICAgICAgICAgICBCaW5kID0+IFsKICAgICAgICAgICAgICAgIFwkUGFyYW17UGVyaW9kfS0+eyRQZXJpb2R9e0xlYXZlRGF5c30sICAgXCRQYXJhbXtQZXJpb2R9LT57JFBlcmlvZH17RGF0ZVN0YXJ0fSwKICAgICAgICAgICAgICAgIFwkUGFyYW17UGVyaW9kfS0+eyRQZXJpb2R9e0RhdGVFbmR9LCAgICAgXCRQYXJhbXtQZXJpb2R9LT57JFBlcmlvZH17T3ZlcnRpbWV9LAogICAgICAgICAgICAgICAgXCRQYXJhbXtQZXJpb2R9LT57JFBlcmlvZH17V2Vla2x5SG91cnN9LCBcJFBhcmFte1BlcmlvZH0tPnskUGVyaW9kfXtVc2VyU3RhdHVzfSwKICAgICAgICAgICAgICAgIFwkVXNlcklELCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCRQZXJpb2QsCiAgICAgICAgICAgIF0KICAgICAgICApOwogICAgfQoKICAgIHJldHVybiAxOwp9Cgo9aGVhZDIgV29ya2luZ1VuaXRzQ29tcGxldG5lc3NDaGVjaygpCgpyZXR1cm5zIGEgaGFzaCB3aXRoIHRoZSBpbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyBhbmQKdGhlIGluZm9ybWF0aW9uIGlmIHRoZSBpbmNvbXBsZXRlIHdvcmtpbmcgZGF5cyBhcmUgaW4gdGhlIGFsbG93ZWQKcmFuZ2UuCgogICAgbXkgJVdvcmtpbmdVbml0c0NoZWNrID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Xb3JraW5nVW5pdHNDb21wbGV0bmVzc0NoZWNrKAogICAgICAgIFVzZXJJRCA9PiAxMjMsCiAgICApOwoKPWN1dAoKc3ViIFdvcmtpbmdVbml0c0NvbXBsZXRuZXNzQ2hlY2sgewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICBpZiAoICEkUGFyYW17VXNlcklEfSApIHsKICAgICAgICAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6TG9nJyktPkxvZygKICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICAgICAgTWVzc2FnZSAgPT4gIk5lZWQgVXNlcklEIgogICAgICAgICk7CgogICAgICAgIHJldHVybjsKICAgIH0KCiAgICBteSAkVXNlcklEID0gJFBhcmFte1VzZXJJRH07CgogICAgbXkgJVVzZXJEYXRhID0gJFNlbGYtPlVzZXJHZXQoIFVzZXJJRCA9PiAkVXNlcklEICk7CiAgICBpZiAoICElVXNlckRhdGEgKSB7CiAgICAgICAgJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkxvZycpLT5Mb2coCiAgICAgICAgICAgIFByaW9yaXR5ID0+ICdlcnJvcicsCiAgICAgICAgICAgIE1lc3NhZ2UgID0+ICdDb3VsZCBub3QgZ2V0IHVzZXIgZGF0YScsCiAgICAgICAgKTsKCiAgICAgICAgcmV0dXJuOwogICAgfQoKICAgICMgU2tpcCBjaGVjayBmb3IgdXNlcnMgdGhhdCBhcmUgbm90IHJlcXVpcmVkIHRvIGxvZyB0aW1lcy4KICAgIHJldHVybiAoKSBpZiAkVXNlckRhdGF7QWxsb3dTa2lwfTsKCiAgICBteSAlRGF0YSAgICAgICAgICAgICAgICA9ICgpOwogICAgbXkgJFdvcmtpbmdVbml0SUQgICAgICAgPSAwOwogICAgbXkgJUNvbXBsZXRlV29ya2luZ0RheXMgPSAoKTsKCiAgICAjIGdldCB0aW1lIG9iamVjdAogICAgbXkgJERhdGVUaW1lT2JqZWN0ICAgPSAkS2VybmVsOjpPTS0+Q3JlYXRlKCdLZXJuZWw6OlN5c3RlbTo6RGF0ZVRpbWUnKTsKICAgIG15ICREYXRlVGltZVNldHRpbmdzID0gJERhdGVUaW1lT2JqZWN0LT5HZXQoKTsKCiAgICBteSAoICRTZWMsICRNaW4sICRIb3VyLCAkRGF5LCAkTW9udGgsICRZZWFyICkgPSAoCiAgICAgICAgJERhdGVUaW1lU2V0dGluZ3MtPntTZWNvbmR9LAogICAgICAgICREYXRlVGltZVNldHRpbmdzLT57TWludXRlfSwKICAgICAgICAkRGF0ZVRpbWVTZXR0aW5ncy0+e0hvdXJ9LAogICAgICAgICREYXRlVGltZVNldHRpbmdzLT57RGF5fSwKICAgICAgICAkRGF0ZVRpbWVTZXR0aW5ncy0+e01vbnRofSwKICAgICAgICAkRGF0ZVRpbWVTZXR0aW5ncy0+e1llYXJ9LAogICAgKTsKCiAgICAjIFRPRE86IFNlYXJjaCBvbmx5IGluIHRoZSBDdXJyZW50VXNlclBlcmlvZAogICAgIyBUT0RPOiBTZWFyY2ggb25seSB3b3JraW5nIHVuaXRzIHdoZXJlIGFjdGlvbl9pZCBhbmQgcHJvamVjdF9pZCBpcyB0cnVlCgogICAgIyBnZXQgZGF0YWJhc2Ugb2JqZWN0CiAgICBteSAkREJPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6REInKTsKCiAgICAkREJPYmplY3QtPlByZXBhcmUoCiAgICAgICAgU1FMID0+ICcKICAgICAgICAgICAgU0VMRUNUIERJU1RJTkNUIHRpbWVfc3RhcnQKICAgICAgICAgICAgRlJPTSB0aW1lX2FjY291bnRpbmdfdGFibGUKICAgICAgICAgICAgV0hFUkUgdXNlcl9pZCA9ID8nLAogICAgICAgIEJpbmQgPT4gWyBcJFVzZXJJRCBdLAogICAgKTsKCiAgICAjIGZldGNoIHRoZSBkYXRhCiAgICB3aGlsZSAoIG15IEBSb3cgPSAkREJPYmplY3QtPkZldGNocm93QXJyYXkoKSApIHsKICAgICAgICBpZiAoICRSb3dbMF0gPX4gL14oXGQrKS0oXGQrKS0oXGQrKS8gKSB7CiAgICAgICAgICAgICRDb21wbGV0ZVdvcmtpbmdEYXlzeyQxfXskMn17JDN9ID0gMTsKICAgICAgICB9CiAgICB9CgogICAgbXkgJVVzZXJDdXJyZW50UGVyaW9kID0gJFNlbGYtPlVzZXJDdXJyZW50UGVyaW9kR2V0KAogICAgICAgIFllYXIgID0+ICRZZWFyLAogICAgICAgIE1vbnRoID0+ICRNb250aCwKICAgICAgICBEYXkgICA9PiAkRGF5LAogICAgKTsKCiAgICBteSAkV29ya2luZ0RheXMgPSAwOwogICAgbXkgJFllYXJTdGFydCAgID0gMTk3MDsKICAgIG15ICRNb250aFN0YXJ0ICA9IDE7CiAgICBteSAkRGF5U3RhcnQgICAgPSAxOwogICAgbXkgJFllYXJFbmQgICAgID0gJFllYXI7CiAgICBteSAkTW9udGhFbmQgICAgPSAkTW9udGg7CiAgICBteSAkRGF5RW5kICAgICAgPSAkRGF5OwoKICAgIGlmICgKICAgICAgICAkVXNlckN1cnJlbnRQZXJpb2R7JFVzZXJJRH0tPntEYXRlU3RhcnR9CiAgICAgICAgJiYgJFVzZXJDdXJyZW50UGVyaW9keyRVc2VySUR9LT57RGF0ZVN0YXJ0fSA9fiAvXihcZCspLShcZCspLShcZCspLwogICAgICAgICkKICAgIHsKICAgICAgICAkWWVhclN0YXJ0ICA9ICQxOwogICAgICAgICRNb250aFN0YXJ0ID0gJDI7CiAgICAgICAgJERheVN0YXJ0ICAgPSAkMzsKICAgIH0KCiAgICAjIGdldCBjb25maWcgb2JqZWN0CiAgICBteSAkQ29uZmlnT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpDb25maWcnKTsKCiAgICBteSAkQ2FsZW5kYXIgPSAkVXNlckRhdGF7Q2FsZW5kYXJ9OwoKICAgIGZvciBteSAkWWVhciAoICRZZWFyU3RhcnQgLi4gJFllYXJFbmQgKSB7CgogICAgICAgIG15ICRNb250aFN0YXJ0UG9pbnQgPSAkWWVhciA9PSAkWWVhclN0YXJ0ID8gJE1vbnRoU3RhcnQgOiAxOwogICAgICAgIG15ICRNb250aEVuZFBvaW50ICAgPSAkWWVhciA9PSAkWWVhckVuZCAgID8gJE1vbnRoRW5kICAgOiAxMjsKCiAgICAgICAgZm9yIG15ICRNb250aCAoICRNb250aFN0YXJ0UG9pbnQgLi4gJE1vbnRoRW5kUG9pbnQgKSB7CgogICAgICAgICAgICBteSAkRGF5U3RhcnRQb2ludCA9ICRZZWFyID09ICRZZWFyU3RhcnQgJiYgJE1vbnRoID09ICRNb250aFN0YXJ0ID8gJERheVN0YXJ0IDogMTsKCiAgICAgICAgICAgIG15ICREYXlFbmRQb2ludDsKICAgICAgICAgICAgaWYgKCAkWWVhciA9PSAkWWVhckVuZCAmJiAkTW9udGggPT0gJE1vbnRoRW5kICkgewogICAgICAgICAgICAgICAgJERheUVuZFBvaW50ID0gJERheUVuZDsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICREYXlFbmRQb2ludCA9ICRTZWxmLT5EYXlzSW5Nb250aCggJFllYXIsICRNb250aCApOwogICAgICAgICAgICB9CgogICAgICAgICAgICBteSAkTW9udGhTdHJpbmcgPSBzcHJpbnRmICIlMDJkIiwgJE1vbnRoOwoKICAgICAgICAgICAgZm9yIG15ICREYXkgKCAkRGF5U3RhcnRQb2ludCAuLiAkRGF5RW5kUG9pbnQgKSB7CgogICAgICAgICAgICAgICAgbXkgJFZhY2F0aW9uQ2hlY2sgPSAkU2VsZi0+VmFjYXRpb25DaGVjaygKICAgICAgICAgICAgICAgICAgICBZZWFyICAgICA9PiAkWWVhciwKICAgICAgICAgICAgICAgICAgICBNb250aCAgICA9PiAkTW9udGgsCiAgICAgICAgICAgICAgICAgICAgRGF5ICAgICAgPT4gJERheSwKICAgICAgICAgICAgICAgICAgICBDYWxlbmRhciA9PiAkQ2FsZW5kYXIgfHwgJycsCiAgICAgICAgICAgICAgICApOwoKICAgICAgICAgICAgICAgICMgR2V0IGNhbGVuZGFyIHRpbWV6b25lIG9yIHVzZSB0aGUgb25lIG9mIHRpbWUtYWNjb3VudGluZyBvYmplY3QuCiAgICAgICAgICAgICAgICBteSAkVGltZVpvbmUgPSAkQ29uZmlnT2JqZWN0LT5HZXQoICJUaW1lWm9uZTo6Q2FsZW5kYXIiIC4gKCAkQ2FsZW5kYXIgfHwgJycgKSApCiAgICAgICAgICAgICAgICAgICAgfHwgJFNlbGYtPntUaW1lWm9uZX07CgogICAgICAgICAgICAgICAgbXkgJERheVN0YXJ0VGltZSA9ICRLZXJuZWw6Ok9NLT5DcmVhdGUoCiAgICAgICAgICAgICAgICAgICAgJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScsCiAgICAgICAgICAgICAgICAgICAgT2JqZWN0UGFyYW1zID0+IHsKICAgICAgICAgICAgICAgICAgICAgICAgWWVhciAgICAgPT4gJFllYXIsCiAgICAgICAgICAgICAgICAgICAgICAgIE1vbnRoICAgID0+ICRNb250aCwKICAgICAgICAgICAgICAgICAgICAgICAgRGF5ICAgICAgPT4gJERheSwKICAgICAgICAgICAgICAgICAgICAgICAgSG91ciAgICAgPT4gMCwKICAgICAgICAgICAgICAgICAgICAgICAgTWludXRlICAgPT4gMCwKICAgICAgICAgICAgICAgICAgICAgICAgU2Vjb25kICAgPT4gMCwKICAgICAgICAgICAgICAgICAgICAgICAgVGltZVpvbmUgPT4gJFRpbWVab25lLAogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICApOwoKICAgICAgICAgICAgICAgIG15ICREYXlTdG9wVGltZSA9ICREYXlTdGFydFRpbWUtPkNsb25lKCk7CiAgICAgICAgICAgICAgICAkRGF5U3RvcFRpbWUtPlNldCgKICAgICAgICAgICAgICAgICAgICBIb3VyICAgPT4gMjMsCiAgICAgICAgICAgICAgICAgICAgTWludXRlID0+IDU5LAogICAgICAgICAgICAgICAgICAgIFNlY29uZCA9PiA1OSwKICAgICAgICAgICAgICAgICk7CgogICAgICAgICAgICAgICAgIyBDb252ZXJ0IHRvIHRoZSB0aW1lem9uZSBvZiB0aW1lLWFjY291bnRpbmcgb2JqZWN0LgogICAgICAgICAgICAgICAgJERheVN0YXJ0VGltZS0+VG9UaW1lWm9uZSgKICAgICAgICAgICAgICAgICAgICBUaW1lWm9uZSA9PiAkU2VsZi0+e1RpbWVab25lfSwKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICAkRGF5U3RvcFRpbWUtPlRvVGltZVpvbmUoCiAgICAgICAgICAgICAgICAgICAgVGltZVpvbmUgPT4gJFNlbGYtPntUaW1lWm9uZX0sCiAgICAgICAgICAgICAgICApOwoKICAgICAgICAgICAgICAgICMgQ29udmVydCB0byBlcG9jaHMuCiAgICAgICAgICAgICAgICAkRGF5U3RhcnRUaW1lID0gJERheVN0YXJ0VGltZS0+VG9FcG9jaCgpOwogICAgICAgICAgICAgICAgJERheVN0b3BUaW1lICA9ICREYXlTdG9wVGltZS0+VG9FcG9jaCgpOwoKICAgICAgICAgICAgICAgICMgT0xEIENPREUKCiAgICAgICAgICAgICAgICAjbXkgJERhdGVUaW1lT2JqZWN0ID0gJEtlcm5lbDo6T00tPkNyZWF0ZSgKICAgICAgICAgICAgICAgICMgICAgJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScsCiAgICAgICAgICAgICAgICAjICAgIE9iamVjdFBhcmFtcyA9PiB7CiAgICAgICAgICAgICAgICAjICAgICAgICBZZWFyICA9PiAkWWVhciwKICAgICAgICAgICAgICAgICMgICAgICAgIE1vbnRoID0+ICRNb250aCwKICAgICAgICAgICAgICAgICMgICAgICAgIERheSAgID0+ICREYXksCiAgICAgICAgICAgICAgICAjICAgIH0sCiAgICAgICAgICAgICAgICAjKTsKCiAgICAgICAgICAgICAgICAjbXkgJERhdGUgPSBzcHJpbnRmICIlMDRkLSUwMmQtJTAyZCIsICRZZWFyLCAkTW9udGgsICREYXk7CgogICAgICAgICAgICAgICAgI215ICREYXRlVGltZU9iamVjdFN0YXJ0ID0gJEtlcm5lbDo6T00tPkNyZWF0ZSgKICAgICAgICAgICAgICAgICMgICAgJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScsCiAgICAgICAgICAgICAgICAjICAgIE9iamVjdFBhcmFtcyA9PiB7CiAgICAgICAgICAgICAgICAjICAgICAgICBTdHJpbmcgPT4gJERhdGUgLiAnIDAwOjAwOjAwJywKICAgICAgICAgICAgICAgICMgICAgfSwKICAgICAgICAgICAgICAgICMpOwogICAgICAgICAgICAgICAgI215ICREYXlTdGFydFRpbWUgPSAkRGF0ZVRpbWVPYmplY3RTdGFydC0+VG9FcG9jaCgpOwoKICAgICAgICAgICAgICAgICNteSAkRGF0ZVRpbWVPYmplY3RTdG9wID0gJEtlcm5lbDo6T00tPkNyZWF0ZSgKICAgICAgICAgICAgICAgICMgICAgJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScsCiAgICAgICAgICAgICAgICAjICAgIE9iamVjdFBhcmFtcyA9PiB7CiAgICAgICAgICAgICAgICAjICAgICAgICBTdHJpbmcgPT4gJERhdGUgLiAnIDIzOjU5OjU5JywKICAgICAgICAgICAgICAgICMgICAgfSwKICAgICAgICAgICAgICAgICMpOwogICAgICAgICAgICAgICAgI215ICREYXlTdG9wVGltZSA9ICREYXRlVGltZU9iamVjdFN0b3AtPlRvRXBvY2goKTsKCiAgICAgICAgICAgICAgICAjIGFkZCB0aW1lIHpvbmUgdG8gY2FsY3VsYXRpb24KICAgICAgICAgICAgICAgICNteSAkWm9uZSA9ICRDb25maWdPYmplY3QtPkdldCggIlRpbWVab25lOjpDYWxlbmRhciIgLiAoICRDYWxlbmRhciB8fCAnJyApICk7CiAgICAgICAgICAgICAgICAjaWYgKCRab25lKSB7CiAgICAgICAgICAgICAgICAjICAgIG15ICRab25lU2Vjb25kcyA9ICRab25lICogNjAgKiA2MDsKICAgICAgICAgICAgICAgICMgICAgJERheVN0YXJ0VGltZSA9ICREYXlTdGFydFRpbWUgLSAkWm9uZVNlY29uZHM7CiAgICAgICAgICAgICAgICAjICAgICREYXlTdG9wVGltZSAgPSAkRGF5U3RvcFRpbWUgLSAkWm9uZVNlY29uZHM7CiAgICAgICAgICAgICAgICAjfQoKICAgICAgICAgICAgICAgICMgRU5ECgogICAgICAgICAgICAgICAgbXkgJFRoaXNEYXlXb3JraW5nVGltZSA9ICRTZWxmLT5Xb3JraW5nVGltZSgKICAgICAgICAgICAgICAgICAgICBTdGFydFRpbWUgPT4gJERheVN0YXJ0VGltZSwKICAgICAgICAgICAgICAgICAgICBTdG9wVGltZSAgPT4gJERheVN0b3BUaW1lLAogICAgICAgICAgICAgICAgICAgIENhbGVuZGFyICA9PiAkQ2FsZW5kYXIgfHwgJycsCiAgICAgICAgICAgICAgICApIHx8ICcwJzsKCiAgICAgICAgICAgICAgICBteSAkRGF5U3RyaW5nID0gc3ByaW50ZiAiJTAyZCIsICREYXk7CgogICAgICAgICAgICAgICAgaWYgKCAkVGhpc0RheVdvcmtpbmdUaW1lICYmICEkVmFjYXRpb25DaGVjayApIHsKICAgICAgICAgICAgICAgICAgICAkV29ya2luZ0RheXMgKz0gMTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmICgKICAgICAgICAgICAgICAgICAgICAkVGhpc0RheVdvcmtpbmdUaW1lCiAgICAgICAgICAgICAgICAgICAgJiYgISRWYWNhdGlvbkNoZWNrCiAgICAgICAgICAgICAgICAgICAgJiYgISRDb21wbGV0ZVdvcmtpbmdEYXlzeyRZZWFyfXskTW9udGhTdHJpbmd9eyREYXlTdHJpbmd9CiAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICREYXRhe0luY29tcGxldGV9eyRZZWFyfXskTW9udGhTdHJpbmd9eyREYXlTdHJpbmd9ID0gJFdvcmtpbmdEYXlzOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQogICAgbXkgJE1heEludGVydmFsbE9mSW5jb21wbGV0ZURheXMgPSAkQ29uZmlnT2JqZWN0LT5HZXQoJ1RpbWVBY2NvdW50aW5nOjpNYXhJbnRlcnZhbE9mSW5jb21wbGV0ZURheXMnKSB8fCAnNSc7CiAgICBteSAkTWF4SW50ZXJ2YWxsT2ZJbmNvbXBsZXRlRGF5c0JlZm9yZVdhcm5pbmcKICAgICAgICA9ICRDb25maWdPYmplY3QtPkdldCgnVGltZUFjY291bnRpbmc6Ok1heEludGVydmFsT2ZJbmNvbXBsZXRlRGF5c0JlZm9yZVdhcm5pbmcnKQogICAgICAgIHx8ICczJzsKICAgIGZvciBteSAkWWVhciAoIHNvcnQga2V5cyAleyAkRGF0YXtJbmNvbXBsZXRlfSB9ICkgewoKICAgICAgICBmb3IgbXkgJE1vbnRoICggc29ydCBrZXlzICV7ICREYXRhe0luY29tcGxldGV9eyRZZWFyfSB9ICkgewoKICAgICAgICAgICAgZm9yIG15ICREYXkgKCBzb3J0IGtleXMgJXsgJERhdGF7SW5jb21wbGV0ZX17JFllYXJ9eyRNb250aH0gfSApIHsKCiAgICAgICAgICAgICAgICBpZiAoCiAgICAgICAgICAgICAgICAgICAgJERhdGF7SW5jb21wbGV0ZX17JFllYXJ9eyRNb250aH17JERheX0KICAgICAgICAgICAgICAgICAgICA8ICRXb3JraW5nRGF5cyAtICRNYXhJbnRlcnZhbGxPZkluY29tcGxldGVEYXlzCiAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICREYXRhe0VuZm9yY2VJbnNlcnR9ID0gMTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGVsc2lmICgKICAgICAgICAgICAgICAgICAgICAkRGF0YXtJbmNvbXBsZXRlfXskWWVhcn17JE1vbnRofXskRGF5fQogICAgICAgICAgICAgICAgICAgIDwgJFdvcmtpbmdEYXlzIC0gJE1heEludGVydmFsbE9mSW5jb21wbGV0ZURheXNCZWZvcmVXYXJuaW5nCiAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICREYXRhe1dhcm5pbmd9ID0gMTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICByZXR1cm4gJURhdGE7Cn0KCj1oZWFkMiBXb3JraW5nVW5pdHNHZXQoKQoKcmV0dXJucyBhIGhhc2ggd2l0aCB0aGUgd29ya2luZyB1bml0cyBkYXRhCgogICAgbXkgJVdvcmtpbmdVbml0c0RhdGEgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPldvcmtpbmdVbml0c0dldCgKICAgICAgICBZZWFyICAgPT4gJzIwMDUnLAogICAgICAgIE1vbnRoICA9PiAnNycsCiAgICAgICAgRGF5ICAgID0+ICcxMycsCiAgICAgICAgVXNlcklEID0+ICcxMjMnLAogICAgKTsKCj1jdXQKCnN1YiBXb3JraW5nVW5pdHNHZXQgewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICBpZiAoICEkUGFyYW17VXNlcklEfSApIHsKICAgICAgICAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6TG9nJyktPkxvZygKICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICAgICAgTWVzc2FnZSAgPT4gIk5lZWQgVXNlcklEIgogICAgICAgICk7CgogICAgICAgIHJldHVybjsKICAgIH0KCiAgICBteSAkRGF0ZSAgICAgID0gc3ByaW50ZiAiJTA0ZC0lMDJkLSUwMmQiLCAkUGFyYW17WWVhcn0sICRQYXJhbXtNb250aH0sICRQYXJhbXtEYXl9OwogICAgbXkgJERhdGVTdGFydCA9ICREYXRlIC4gIiAwMDowMDowMCI7CiAgICBteSAkRGF0ZVN0b3AgID0gJERhdGUgLiAiIDIzOjU5OjU5IjsKCiAgICAjIGdldCBkYXRhYmFzZSBvYmplY3QKICAgIG15ICREQk9iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpEQicpOwoKICAgICMgYXNrIHRoZSBkYXRhYmFzZQogICAgJERCT2JqZWN0LT5QcmVwYXJlKAogICAgICAgIFNRTCA9PiAnCiAgICAgICAgICAgIFNFTEVDVCB1c2VyX2lkLCBwcm9qZWN0X2lkLCBhY3Rpb25faWQsIHJlbWFyaywgdGltZV9zdGFydCwgdGltZV9lbmQsIHBlcmlvZCwgdGlja2V0X2lkLCBhcnRpY2xlX2lkLCBiYXNlCiAgICAgICAgICAgIEZST00gdGltZV9hY2NvdW50aW5nX3RhYmxlCiAgICAgICAgICAgIFdIRVJFIHRpbWVfc3RhcnQgPj0gPwogICAgICAgICAgICAgICAgQU5EIHRpbWVfc3RhcnQgPD0gPwogICAgICAgICAgICAgICAgQU5EIHVzZXJfaWQgPSA/CiAgICAgICAgICAgIE9SREVSIGJ5IGlkJywKICAgICAgICBCaW5kID0+IFsgXCREYXRlU3RhcnQsIFwkRGF0ZVN0b3AsIFwkUGFyYW17VXNlcklEfSBdLAogICAgKTsKCiAgICBteSAlRGF0YSA9ICgKICAgICAgICBUb3RhbCA9PiAwLAogICAgICAgIERhdGUgID0+ICREYXRlLAogICAgKTsKCiAgICAjIGZldGNoIHRoZSByZXN1bHQKICAgIFJPVzoKICAgIHdoaWxlICggbXkgQFJvdyA9ICREQk9iamVjdC0+RmV0Y2hyb3dBcnJheSgpICkgewoKICAgICAgICBteSAkU3RhcnRUaW1lOwogICAgICAgIGlmICggJFJvd1s0XSA9fiBte14gKC4rPykgXHMgKFxkKzpcZCspIDogKFxkKykgfXhtcyApIHsKICAgICAgICAgICAgJFN0YXJ0VGltZSA9ICQyOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgbmV4dCBST1c7CiAgICAgICAgfQoKICAgICAgICAjIGNoZWNrIGlmIGl0IGlzIGEgc3BlY2lhbCB3b3JraW5nIHVuaXQKICAgICAgICBpZiAoICRSb3dbMV0gPT0gLTEgKSB7CiAgICAgICAgICAgIG15ICRBY3Rpb25JRCA9ICRSb3dbMl07CgogICAgICAgICAgICAkRGF0YXtTaWNrfSAgICAgPSAkQWN0aW9uSUQgPT0gLTEgPyAxIDogMDsKICAgICAgICAgICAgJERhdGF7TGVhdmVEYXl9ID0gJEFjdGlvbklEID09IC0yID8gMSA6IDA7CiAgICAgICAgICAgICREYXRhe092ZXJ0aW1lfSA9ICRBY3Rpb25JRCA9PSAtMyA/IDEgOiAwOwoKICAgICAgICAgICAgbmV4dCBST1c7CiAgICAgICAgfQoKICAgICAgICBteSAkRW5kVGltZSA9ICcnOwogICAgICAgIGlmICggJFJvd1s1XSA9fiBte14oLis/KVxzKFxkKzpcZCspOihcZCspfXhtcyApIHsKICAgICAgICAgICAgJEVuZFRpbWUgPSAkMjsKCiAgICAgICAgICAgICMgcmVwbGFjZSAyMzo1OTo1OSB3aXRoIDI0OjAwCiAgICAgICAgICAgIGlmICggJEVuZFRpbWUgZXEgJzIzOjU5JyAmJiAkMyBlcSAnNTknICkgewogICAgICAgICAgICAgICAgJEVuZFRpbWUgPSAnMjQ6MDAnOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBteSAlV29ya2luZ1VuaXQgPSAoCiAgICAgICAgICAgIFVzZXJJRCAgICAgPT4gJFJvd1swXSwKICAgICAgICAgICAgUHJvamVjdElEICA9PiAkUm93WzFdLAogICAgICAgICAgICBBY3Rpb25JRCAgID0+ICRSb3dbMl0sCiAgICAgICAgICAgIFJlbWFyayAgICAgPT4gJFJvd1szXSwKICAgICAgICAgICAgU3RhcnRUaW1lICA9PiAkU3RhcnRUaW1lLAogICAgICAgICAgICBFbmRUaW1lICAgID0+ICRFbmRUaW1lLAogICAgICAgICAgICBQZXJpb2QgICAgID0+IGRlZmluZWQoICRSb3dbNl0gKSA/IHNwcmludGYoICIlLjJmIiwgJFJvd1s2XSApIDogMCwKICAgICAgICAgICAgVGlja2V0SUQgICA9PiAkUm93WzddLAogICAgICAgICAgICBBcnRpY2xlSUQgID0+ICRSb3dbOF0sCiAgICAgICAgICAgIEJhc2VNb2R1bGUgPT4gJFJvd1s5XSwKICAgICAgICApOwoKICAgICAgICAjIG9ubHkgY291bnQgY29tcGxldGUgd29ya2luZyB1bml0cwogICAgICAgIGlmICggJFJvd1sxXSAmJiAkUm93WzJdICkgewogICAgICAgICAgICAkRGF0YXtUb3RhbH0gKz0gJFdvcmtpbmdVbml0e1BlcmlvZH07CiAgICAgICAgfQoKICAgICAgICBwdXNoIEB7ICREYXRhe1dvcmtpbmdVbml0c30gfSwgXCVXb3JraW5nVW5pdDsKICAgIH0KCiAgICByZXR1cm4gJURhdGE7Cn0KCj1oZWFkMiBXb3JraW5nVW5pdHNJbnNlcnQoKQoKaW5zZXJ0IHdvcmtpbmcgdW5pdHMgaW4gdGhlIGRiCgogICAgJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Xb3JraW5nVW5pdHNJbnNlcnQoCiAgICAgICAgWWVhciAgPT4gJzIwMDUnLAogICAgICAgIE1vbnRoID0+ICcwNycsCiAgICAgICAgRGF5ICAgPT4gJzAyJywKICAgICAgICBMZWF2ZURheSA9PiAxLCB8fCAwCiAgICAgICAgU2ljayAgICAgPT4gMSwgfHwgMAogICAgICAgIE92ZXJ0aW1lID0+IDEsIHx8IDAKICAgICAgICBXb3JraW5nVW5pdHMgPT4gWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBQcm9qZWN0SUQgPT4gMSwKICAgICAgICAgICAgICAgIEFjdGlvbklEICA9PiAyMywKICAgICAgICAgICAgICAgIFJlbWFyayAgICA9PiAnU29tZVRleHQnLAogICAgICAgICAgICAgICAgU3RhcnRUaW1lID0+ICc3OjMwJywKICAgICAgICAgICAgICAgIEVuZFRpbWUgICA9PiAnMTE6MDAnLAogICAgICAgICAgICAgICAgUGVyaW9kICAgID0+ICc4LjUnLAogICAgICAgICAgICB9LAogICAgICAgICAgICB7IC4uLi4uLiB9LAogICAgICAgIF0sCiAgICAgICAgVXNlcklEID0+IDEyMywKICAgICk7Cgo9Y3V0CgpzdWIgV29ya2luZ1VuaXRzSW5zZXJ0IHsKICAgIG15ICggJFNlbGYsICVQYXJhbSApID0gQF87CgogICAgZm9yIG15ICROZWVkZWQgKHF3KFllYXIgTW9udGggRGF5IFVzZXJJRCkpIHsKICAgICAgICBpZiAoICEkUGFyYW17JE5lZWRlZH0gKSB7CiAgICAgICAgICAgICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpMb2cnKS0+TG9nKAogICAgICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICAgICAgICAgIE1lc3NhZ2UgID0+ICJXb3JraW5nVW5pdHNJbnNlcnQ6IE5lZWQgJE5lZWRlZCEiCiAgICAgICAgICAgICk7CgogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgfQoKICAgIG15ICREYXRlID0gc3ByaW50ZiAiJTA0ZC0lMDJkLSUwMmQiLCAkUGFyYW17WWVhcn0sICRQYXJhbXtNb250aH0sICRQYXJhbXtEYXl9OwoKICAgICMgYWRkIHNwZWNpYWwgdGltZSB3b3JraW5nIHVuaXRzCiAgICBteSAlU3BlY2lhbEFjdGlvbiA9ICgKICAgICAgICAnU2ljaycgICAgID0+ICctMScsCiAgICAgICAgJ0xlYXZlRGF5JyA9PiAnLTInLAogICAgICAgICdPdmVydGltZScgPT4gJy0zJywKICAgICk7CgogICAgRUxFTUVOVDoKICAgIGZvciBteSAkRWxlbWVudCAocXcoTGVhdmVEYXkgU2ljayBPdmVydGltZSkpIHsKCiAgICAgICAgbmV4dCBFTEVNRU5UIGlmICEkUGFyYW17JEVsZW1lbnR9OwoKICAgICAgICBteSAlVW5pdCA9ICgKICAgICAgICAgICAgUHJvamVjdElEID0+IC0xLAogICAgICAgICAgICBBY3Rpb25JRCAgPT4gJFNwZWNpYWxBY3Rpb257JEVsZW1lbnR9LAogICAgICAgICAgICBSZW1hcmsgICAgPT4gJycsCiAgICAgICAgICAgIFN0YXJ0VGltZSA9PiAnJywKICAgICAgICAgICAgRW5kVGltZSAgID0+ICcnLAogICAgICAgICAgICBQZXJpb2QgICAgPT4gMCwKICAgICAgICApOwoKICAgICAgICBwdXNoIEB7ICRQYXJhbXtXb3JraW5nVW5pdHN9IH0sIFwlVW5pdDsKICAgIH0KCiAgICAjIGluc2VydCBuZXcgd29ya2luZyB1bml0cwogICAgVU5JVFJFRjoKICAgIGZvciBteSAkVW5pdFJlZiAoIEB7ICRQYXJhbXtXb3JraW5nVW5pdHN9IH0gKSB7CgogICAgICAgIG15ICRTdGFydFRpbWUgPSAkRGF0ZSAuICcgJyAuICggJFVuaXRSZWYtPntTdGFydFRpbWV9IHx8ICcwMDowMCcgKSAuICc6MDAnOwogICAgICAgIG15ICRFbmRUaW1lICAgPSAkRGF0ZSAuICcgJyAuICggJFVuaXRSZWYtPntFbmRUaW1lfSAgIHx8ICcwMDowMCcgKSAuICc6MDAnOwoKICAgICAgICAjICcnIGRvZXMgbm90IHdvcmsgaW4gaW50ZWdlciBmaWVsZCBvZiBQb3N0Z3JlU1FMCiAgICAgICAgJFVuaXRSZWYtPntQcm9qZWN0SUR9IHx8PSAwOwogICAgICAgICRVbml0UmVmLT57QWN0aW9uSUR9ICB8fD0gMDsKICAgICAgICAkVW5pdFJlZi0+e1BlcmlvZH0gICAgfHw9IDA7CgogICAgICAgICMgYnVpbGQgRFFMCiAgICAgICAgbXkgJFNRTCA9ICcKICAgICAgICAgICAgSU5TRVJUIElOVE8gdGltZV9hY2NvdW50aW5nX3RhYmxlICh1c2VyX2lkLCBwcm9qZWN0X2lkLCBhY3Rpb25faWQsIHJlbWFyaywgdGltZV9zdGFydCwKICAgICAgICAgICAgICAgIHRpbWVfZW5kLCBwZXJpb2QsIHRpY2tldF9pZCwgYXJ0aWNsZV9pZCwgYmFzZSwgY3JlYXRlZCApCiAgICAgICAgICAgIFZBTFVFUyAgKCA/LCA/LCA/LCA/LCA/LCA/LCA/LCA/LCA/LCA/LCBjdXJyZW50X3RpbWVzdGFtcCknOwogICAgICAgIG15ICRCaW5kID0gWwogICAgICAgICAgICBcJFBhcmFte1VzZXJJRH0sICAgICAgIFwkVW5pdFJlZi0+e1Byb2plY3RJRH0sIFwkVW5pdFJlZi0+e0FjdGlvbklEfSwKICAgICAgICAgICAgXCRVbml0UmVmLT57UmVtYXJrfSwgICBcJFN0YXJ0VGltZSwgICAgICAgICAgICBcJEVuZFRpbWUsIFwkVW5pdFJlZi0+e1BlcmlvZH0sCiAgICAgICAgICAgIFwkVW5pdFJlZi0+e1RpY2tldElEfSwgXCRVbml0UmVmLT57QXJ0aWNsZUlEfSwgXCRVbml0UmVmLT57QmFzZU1vZHVsZX0sCiAgICAgICAgXTsKCiAgICAgICAgIyBkYiBpbnNlcnQKICAgICAgICByZXR1cm4gaWYgISRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpEQicpLT5EbygKICAgICAgICAgICAgU1FMICA9PiAkU1FMLAogICAgICAgICAgICBCaW5kID0+ICRCaW5kCiAgICAgICAgKTsKICAgIH0KCiAgICByZXR1cm4gMTsKfQoKPWhlYWQyIFdvcmtpbmdVbml0c0RlbGV0ZSgpCgpkZWxldGVzIHdvcmtpbmcgdW5pdHMgaW4gdGhlIGRiCgogICAgJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Xb3JraW5nVW5pdHNEZWxldGUoCiAgICAgICAgWWVhciAgID0+ICcyMDE1JywKICAgICAgICBNb250aCAgPT4gJzcnLAogICAgICAgIERheSAgICA9PiAnMTMnLAogICAgICAgIFVzZXJJRCA9PiAxMjMsCiAgICApOwoKPWN1dAoKc3ViIFdvcmtpbmdVbml0c0RlbGV0ZSB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgIGZvciBteSAkTmVlZGVkIChxdyhZZWFyIE1vbnRoIERheSBVc2VySUQpKSB7CiAgICAgICAgaWYgKCAhJFBhcmFteyROZWVkZWR9ICkgewogICAgICAgICAgICAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6TG9nJyktPkxvZygKICAgICAgICAgICAgICAgIFByaW9yaXR5ID0+ICdlcnJvcicsCiAgICAgICAgICAgICAgICBNZXNzYWdlICA9PiAiV29ya2luZ1VuaXRzRGVsZXRlOiBOZWVkICROZWVkZWQhIgogICAgICAgICAgICApOwoKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgIH0KCiAgICBteSAkRGF0ZSAgICAgID0gc3ByaW50ZiAiJTA0ZC0lMDJkLSUwMmQiLCAkUGFyYW17WWVhcn0sICRQYXJhbXtNb250aH0sICRQYXJhbXtEYXl9OwogICAgbXkgJFN0YXJ0VGltZSA9ICREYXRlIC4gJyAwMDowMDowMCc7CiAgICBteSAkRW5kVGltZSAgID0gJERhdGUgLiAnIDIzOjU5OjU5JzsKCiAgICByZXR1cm4gaWYgISRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpEQicpLT5EbygKICAgICAgICBTUUwgPT4gJwogICAgICAgICAgICBERUxFVEUgRlJPTSB0aW1lX2FjY291bnRpbmdfdGFibGUKICAgICAgICAgICAgV0hFUkUgdGltZV9zdGFydCA+PSA/CiAgICAgICAgICAgICAgICBBTkQgdGltZV9zdGFydCA8PSA/CiAgICAgICAgICAgICAgICBBTkQgdXNlcl9pZCA9ID8nLAogICAgICAgIEJpbmQgPT4gWyBcJFN0YXJ0VGltZSwgXCRFbmRUaW1lLCBcJFBhcmFte1VzZXJJRH0sIF0sCiAgICApOwoKICAgIHJldHVybiAxOwp9Cgo9aGVhZDIgUHJvamVjdEFjdGlvblJlcG9ydGluZygpCgpyZXR1cm5zIGEgaGFzaCB3aXRoIHRoZSBob3VycyBkZXBlbmRlbnQgcHJvamVjdCBhbmQgYWN0aW9uIGRhdGEKCiAgICBteSAlUHJvamVjdERhdGEgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlByb2plY3RBY3Rpb25SZXBvcnRpbmcoCiAgICAgICAgWWVhciAgICAgPT4gMjAwNSwKICAgICAgICBNb250aCAgICA9PiA3LAogICAgICAgIFVzZXJJRCAgID0+IDEyMywgIyBvcHRpb25hbDsgbm8gVXNlcklEIG1lYW5zICdvZiBhbGwgdXNlcnMnCiAgICAgICAgVGlja2V0SUQgPT4gMzIxLCAjIG9wdGlvbmFsOyBvbmx5IGZvciBhIHNwZWNpZmljIHRpY2tldAogICAgKTsKCj1jdXQKCnN1YiBQcm9qZWN0QWN0aW9uUmVwb3J0aW5nIHsKICAgIG15ICggJFNlbGYsICVQYXJhbSApID0gQF87CgogICAgIyBnZXQgZGF0YWJhc2Ugb2JqZWN0CiAgICBteSAkREJPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6REInKTsKCiAgICBmb3IgbXkgJFBhcmFtZXRlciAocXcoWWVhciBNb250aCkpIHsKICAgICAgICAkUGFyYW17JFBhcmFtZXRlcn0gPSAkREJPYmplY3QtPlF1b3RlKCAkUGFyYW17JFBhcmFtZXRlcn0gKSB8fCAnJzsKICAgICAgICBpZiAoICEkUGFyYW17JFBhcmFtZXRlcn0gKSB7CiAgICAgICAgICAgICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpMb2cnKS0+TG9nKAogICAgICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICAgICAgICAgIE1lc3NhZ2UgID0+ICJQcm9qZWN0QWN0aW9uUmVwb3J0aW5nOiBOZWVkICRQYXJhbWV0ZXIhIgogICAgICAgICAgICApOwoKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgIH0KCiAgICAjIGhvdXJzIHBlciBtb250aAogICAgbXkgJERheXNJbk1vbnRoID0gJFNlbGYtPkRheXNJbk1vbnRoKCAkUGFyYW17WWVhcn0sICRQYXJhbXtNb250aH0gKTsKICAgIG15ICREYXRlU3RyaW5nICA9ICRQYXJhbXtZZWFyfSAuICItIiAuIHNwcmludGYoICIlMDJkIiwgJFBhcmFte01vbnRofSApOwogICAgbXkgJFNRTERhdGUgICAgID0gIiREYXRlU3RyaW5nLSREYXlzSW5Nb250aCAyMzo1OTo1OSI7CgogICAgbXkgJFNRTCA9ICcKICAgICAgICBTRUxFQ1QgcHJvamVjdF9pZCwgYWN0aW9uX2lkLCBwZXJpb2QKICAgICAgICBGUk9NIHRpbWVfYWNjb3VudGluZ190YWJsZQogICAgICAgIFdIRVJFIHByb2plY3RfaWQgIT0gLTEKICAgICAgICAgICAgQU5EIHRpbWVfc3RhcnQgPD0gPyc7CiAgICBteSBAQmluZCA9ICggXCRTUUxEYXRlICk7CgogICAgaWYgKCAkUGFyYW17VXNlcklEfSApIHsKICAgICAgICAkU1FMIC49ICcgQU5EIHVzZXJfaWQgPSA/JzsKICAgICAgICBwdXNoIEBCaW5kLCBcJFBhcmFte1VzZXJJRH07CiAgICB9CgogICAgaWYgKCAkUGFyYW17VGlja2V0SUR9ICkgewogICAgICAgICRTUUwgLj0gJyBBTkQgdGlja2V0X2lkID0gPyc7CiAgICAgICAgcHVzaCBAQmluZCwgXCRQYXJhbXtUaWNrZXRJRH07CiAgICB9CgogICAgIyB0b3RhbCBob3VycwogICAgJERCT2JqZWN0LT5QcmVwYXJlKAogICAgICAgIFNRTCAgPT4gJFNRTCwKICAgICAgICBCaW5kID0+IFxAQmluZCwKICAgICk7CgogICAgIyBmZXRjaCB0aGUgZGF0YQogICAgbXkgJURhdGE7CiAgICBST1c6CiAgICB3aGlsZSAoIG15IEBSb3cgPSAkREJPYmplY3QtPkZldGNocm93QXJyYXkoKSApIHsKCiAgICAgICAgbmV4dCBST1cgaWYgISRSb3dbMl07CgogICAgICAgICREYXRheyAkUm93WzBdIH0tPntBY3Rpb25zfS0+eyAkUm93WzFdIH0tPntUb3RhbH0gKz0gJFJvd1syXTsKICAgIH0KCiAgICBteSAkU1FMRGF0ZVN0YXJ0ID0gIiREYXRlU3RyaW5nLTAxIDAwOjAwOjAwIjsKCiAgICAkU1FMID0gJwogICAgICAgIFNFTEVDVCBwcm9qZWN0X2lkLCBhY3Rpb25faWQsIHBlcmlvZAogICAgICAgIEZST00gdGltZV9hY2NvdW50aW5nX3RhYmxlCiAgICAgICAgV0hFUkUgcHJvamVjdF9pZCAhPSAtMQogICAgICAgICAgICBBTkQgdGltZV9zdGFydCA+PSA/CiAgICAgICAgICAgIEFORCB0aW1lX3N0YXJ0IDw9ID8nOwogICAgQEJpbmQgPSAoIFwkU1FMRGF0ZVN0YXJ0LCBcJFNRTERhdGUgKTsKCiAgICBpZiAoICRQYXJhbXtVc2VySUR9ICkgewogICAgICAgICRTUUwgLj0gJyBBTkQgdXNlcl9pZCA9ID8nOwogICAgICAgIHB1c2ggQEJpbmQsIFwkUGFyYW17VXNlcklEfTsKICAgIH0KCiAgICAkREJPYmplY3QtPlByZXBhcmUoCiAgICAgICAgU1FMICA9PiAkU1FMLAogICAgICAgIEJpbmQgPT4gXEBCaW5kLAogICAgKTsKCiAgICAjIGZldGNoIHRoZSBkYXRhCiAgICBST1c6CiAgICB3aGlsZSAoIG15IEBSb3cgPSAkREJPYmplY3QtPkZldGNocm93QXJyYXkoKSApIHsKCiAgICAgICAgbmV4dCBST1cgaWYgISRSb3dbMl07CgogICAgICAgICREYXRheyAkUm93WzBdIH0tPntBY3Rpb25zfS0+eyAkUm93WzFdIH0tPntQZXJNb250aH0gKz0gJFJvd1syXTsKICAgIH0KCiAgICAjIGFkZCByZWFkYWJsZSBjb21wb25lbnRzCiAgICBteSAlUHJvamVjdCA9ICRTZWxmLT5Qcm9qZWN0U2V0dGluZ3NHZXQoKTsKICAgIG15ICVBY3Rpb24gID0gJFNlbGYtPkFjdGlvblNldHRpbmdzR2V0KCk7CgogICAgZm9yIG15ICRQcm9qZWN0SUQgKCBzb3J0IGtleXMgJURhdGEgKSB7CgogICAgICAgICREYXRheyRQcm9qZWN0SUR9LT57TmFtZX0gICAgICAgID0gJFByb2plY3R7UHJvamVjdH0tPnskUHJvamVjdElEfSB8fCAnJzsKICAgICAgICAkRGF0YXskUHJvamVjdElEfS0+e1N0YXR1c30gICAgICA9ICRQcm9qZWN0e1Byb2plY3RTdGF0dXN9LT57JFByb2plY3RJRH07CiAgICAgICAgJERhdGF7JFByb2plY3RJRH0tPntEZXNjcmlwdGlvbn0gPSAkUHJvamVjdHtQcm9qZWN0RGVzY3JpcHRpb259LT57JFByb2plY3RJRH07CgogICAgICAgIG15ICRBY3Rpb25zUmVmID0gJERhdGF7JFByb2plY3RJRH0tPntBY3Rpb25zfTsKCiAgICAgICAgZm9yIG15ICRBY3Rpb25JRCAoIHNvcnQga2V5cyAleyRBY3Rpb25zUmVmfSApIHsKICAgICAgICAgICAgJERhdGF7JFByb2plY3RJRH0tPntBY3Rpb25zfS0+eyRBY3Rpb25JRH0tPntOYW1lfSA9ICRBY3Rpb257JEFjdGlvbklEfS0+e0FjdGlvbn0gfHwgJyc7CiAgICAgICAgfQogICAgfQoKICAgIHJldHVybiAlRGF0YTsKfQoKPWhlYWQyIFByb2plY3RUb3RhbEhvdXJzKCkKCnJldHVybnMgdGhlIHN1bSBvZiBhbGwgaG91cnMgcmVsYXRlZCB0byBhIHByb2plY3QKCiAgICBteSAkUHJvamVjdFRvdGFsSG91cnMgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlByb2plY3RUb3RhbEhvdXJzKAogICAgICAgIFByb2plY3RJRCA9PiAxNSwKICAgICAgICBUaWNrZXRJRCAgPT4gMTUsCiAgICApOwoKPWN1dAoKc3ViIFByb2plY3RUb3RhbEhvdXJzIHsKICAgIG15ICggJFNlbGYsICVQYXJhbSApID0gQF87CgogICAgIyBjaGVjayBuZWVkZWQgcGFyYW0KICAgIGlmICggISRQYXJhbXtQcm9qZWN0SUR9ICkgewogICAgICAgICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpMb2cnKS0+TG9nKAogICAgICAgICAgICBQcmlvcml0eSA9PiAnZXJyb3InLAogICAgICAgICAgICBNZXNzYWdlICA9PiAnUHJvamVjdEFjdGlvblJlcG9ydGluZzogTmVlZCBQcm9qZWN0SUQhJwogICAgICAgICk7CgogICAgICAgIHJldHVybjsKICAgIH0KCiAgICAjIGdldCBkYXRhYmFzZSBvYmplY3QKICAgIG15ICREQk9iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpEQicpOwoKICAgIG15ICRTUUwgPSAnU0VMRUNUIFNVTShwZXJpb2QpIEZST00gdGltZV9hY2NvdW50aW5nX3RhYmxlIFdIRVJFIHByb2plY3RfaWQgPSA/JzsKCiAgICBteSBAQmluZCA9ICggXCRQYXJhbXtQcm9qZWN0SUR9ICk7CgogICAgaWYgKCAkUGFyYW17VGlja2V0SUR9ICkgewogICAgICAgICRTUUwgLj0gJyBBTkQgdGlja2V0X2lkID0gPyc7CiAgICAgICAgcHVzaCBAQmluZCwgXCRQYXJhbXtUaWNrZXRJRH07CiAgICB9CgogICAgIyBhc2sgdGhlIGRhdGFiYXNlCiAgICAkREJPYmplY3QtPlByZXBhcmUoCiAgICAgICAgU1FMICAgPT4gJFNRTCwKICAgICAgICBCaW5kICA9PiBcQEJpbmQsCiAgICAgICAgTGltaXQgPT4gMSwKICAgICk7CgogICAgIyBmZXRjaCB0aGUgcmVzdWx0CiAgICBteSAkVG90YWwgPSAwOwogICAgd2hpbGUgKCBteSBAUm93ID0gJERCT2JqZWN0LT5GZXRjaHJvd0FycmF5KCkgKSB7CiAgICAgICAgJFRvdGFsID0gJFJvd1swXTsKICAgIH0KCiAgICByZXR1cm4gJFRvdGFsOwp9Cgo9aGVhZDIgUHJvamVjdEhpc3RvcnkoKQoKcmV0dXJucyBhbiBhcnJheSB3aXRoIGFsbCBXb3JraW5nVW5pdHMgcmVsYXRlZCB0byBhIHByb2plY3QKCiAgICBteSBAUHJvamVjdEhpc3RvcnlBcnJheSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+UHJvamVjdEhpc3RvcnkoCiAgICAgICAgUHJvamVjdElEICA9PiAxNSwKICAgICAgICBUaWNrZXRJRCAgID0+IDUxLCAjIG9wdGlvbmFsCiAgICApOwoKVGhpcyB3b3VsZCByZXR1cm4KCiAgICBAUHJvamVjdEhpc3RvcnlBcnJheSA9ICgKICAgICAgICB7CiAgICAgICAgICAgIElEICAgICAgICA9PiA5OTksCiAgICAgICAgICAgIFVzZXJJRCAgICA9PiAxNSwKICAgICAgICAgICAgVXNlciAgICAgID0+ICdUb20nLAogICAgICAgICAgICBBY3Rpb25JRCAgPT4gNiwKICAgICAgICAgICAgQWN0aW9uICAgID0+ICdtaXNjJywKICAgICAgICAgICAgUmVtYXJrICAgID0+ICdyZW1hcmsnLAogICAgICAgICAgICBUaW1lU3RhcnQgPT4gJzc6MDAnLAogICAgICAgICAgICBUaW1lRW5kICAgPT4gJzE4OjAwJywKICAgICAgICAgICAgRGF0ZSAgICAgID0+ICcyMDA4LTEwLTMxJywgIyB0aGUgZGF0ZSBvZiB0aGUgd29ya2luZyB1bml0CiAgICAgICAgICAgIFBlcmlvZCAgICA9PiAxMSwKICAgICAgICAgICAgQ3JlYXRlZCAgID0+ICcyMDA4LTExLTAxJywgIyB0aGUgaW5zZXJ0IHRpbWUgb2YgdGhlIHdvcmtpbmcgdW5pdAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgICBJRCAgICAgICAgPT4gOTk5LAogICAgICAgICAgICBVc2VySUQgICAgPT4gMTYsCiAgICAgICAgICAgIFVzZXIgICAgICA9PiAnTWFuZScsCiAgICAgICAgICAgIEFjdGlvbklEICA9PiA3LAogICAgICAgICAgICBBY3Rpb24gICAgPT4gJ2RldmVsb3BtZW50JywKICAgICAgICAgICAgUmVtYXJrICAgID0+ICdyZW1hcmsnLAogICAgICAgICAgICBUaW1lU3RhcnQgPT4gJzc6MDAnLAogICAgICAgICAgICBUaW1lRW5kICAgPT4gJzE4OjAwJywKICAgICAgICAgICAgUGVyaW9kICAgID0+IDExLAogICAgICAgICAgICBEYXRlICAgICAgPT4gJzIwMDgtMTEtMDMnLAogICAgICAgICAgICBDcmVhdGVkICAgPT4gJzIwMDgtMTEtMDMnLAogICAgICAgIH0KICAgICk7Cgo9Y3V0CgpzdWIgUHJvamVjdEhpc3RvcnkgewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICAjIGNoZWNrIG5lZWRlZCBwYXJhbQogICAgaWYgKCAhJFBhcmFte1Byb2plY3RJRH0gKSB7CiAgICAgICAgJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkxvZycpLT5Mb2coCiAgICAgICAgICAgIFByaW9yaXR5ID0+ICdlcnJvcicsCiAgICAgICAgICAgIE1lc3NhZ2UgID0+ICdQcm9qZWN0QWN0aW9uUmVwb3J0aW5nOiBOZWVkIFByb2plY3RJRCEnLAogICAgICAgICk7CiAgICAgICAgcmV0dXJuOwogICAgfQoKICAgICMgY2FsbCBhY3Rpb24gZGF0YSB0byBnZXQgdGhlIHJlYWRhYmxlIG5hbWUgb2YgdGhlIGFjdGlvbgogICAgbXkgJUFjdGlvbkRhdGEgPSAkU2VsZi0+QWN0aW9uU2V0dGluZ3NHZXQoKTsKCiAgICAjIGdldCB1c2VyIGxpc3QKICAgIG15ICVTaG93blVzZXJzID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlVzZXInKS0+VXNlckxpc3QoCiAgICAgICAgVHlwZSAgPT4gJ0xvbmcnLAogICAgICAgIFZhbGlkID0+IDAsCiAgICApOwoKICAgICMgZ2V0IGRhdGFiYXNlIG9iamVjdAogICAgbXkgJERCT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkRCJyk7CgogICAgbXkgJFNRTCA9ICdTRUxFQ1QgaWQsIHVzZXJfaWQsIGFjdGlvbl9pZCwgcmVtYXJrLCB0aW1lX3N0YXJ0LCB0aW1lX2VuZCwgcGVyaW9kLCBjcmVhdGVkCiAgICAgICAgRlJPTSB0aW1lX2FjY291bnRpbmdfdGFibGUgV0hFUkUgcHJvamVjdF9pZCA9ID8nOwoKICAgIG15IEBCaW5kID0gKCBcJFBhcmFte1Byb2plY3RJRH0gKTsKCiAgICBpZiAoICRQYXJhbXtUaWNrZXRJRH0gKSB7CiAgICAgICAgJFNRTCAuPSAnIEFORCB0aWNrZXRfaWQgPSA/JzsKICAgICAgICBwdXNoIEBCaW5kLCBcJFBhcmFte1RpY2tldElEfTsKICAgIH0KCiAgICAkU1FMIC49ICcgT1JERVIgQlkgdGltZV9zdGFydCc7CgogICAgIyBhc2sgdGhlIGRhdGFiYXNlCiAgICAkREJPYmplY3QtPlByZXBhcmUoCiAgICAgICAgU1FMICA9PiAkU1FMLAogICAgICAgIEJpbmQgPT4gXEBCaW5kLAogICAgKTsKCiAgICAjIGZldGNoIHRoZSByZXN1bHQKICAgIG15IEBEYXRhOwogICAgd2hpbGUgKCBteSBAUm93ID0gJERCT2JqZWN0LT5GZXRjaHJvd0FycmF5KCkgKSB7CgogICAgICAgIG15ICRVc2VyUmVmID0gewogICAgICAgICAgICBJRCAgICAgICAgPT4gJFJvd1swXSwKICAgICAgICAgICAgVXNlcklEICAgID0+ICRSb3dbMV0sCiAgICAgICAgICAgIFVzZXIgICAgICA9PiAkU2hvd25Vc2Vyc3sgJFJvd1sxXSB9LAogICAgICAgICAgICBBY3Rpb25JRCAgPT4gJFJvd1syXSwKICAgICAgICAgICAgQWN0aW9uICAgID0+ICRBY3Rpb25EYXRheyAkUm93WzJdIH17QWN0aW9ufSwKICAgICAgICAgICAgUmVtYXJrICAgID0+ICRSb3dbM10gfHwgJycsCiAgICAgICAgICAgIFRpbWVTdGFydCA9PiAkUm93WzRdLAogICAgICAgICAgICBUaW1lRW5kICAgPT4gJFJvd1s1XSwKICAgICAgICAgICAgRGF0ZSAgICAgID0+ICRSb3dbNF0sCiAgICAgICAgICAgIFBlcmlvZCAgICA9PiAkUm93WzZdLAogICAgICAgICAgICBDcmVhdGVkICAgPT4gJFJvd1s3XSwKICAgICAgICB9OwogICAgICAgICRVc2VyUmVmLT57RGF0ZX0gPX4gc3soXGRcZFxkXGQtXGRcZC1cZFxkKSBccyAuKyB9eyQxfXhtczsKCiAgICAgICAgcHVzaCBARGF0YSwgJFVzZXJSZWY7CiAgICB9CgogICAgcmV0dXJuIEBEYXRhOwp9Cgo9aGVhZDIgTGFzdFByb2plY3RzT2ZVc2VyKCkKCnJldHVybnMgYW4gYXJyYXkgd2l0aCB0aGUgbGFzdCBwcm9qZWN0cyBvZiB0aGUgY3VycmVudCB1c2VyCgogICAgbXkgQExhc3RQcm9qZWN0cyA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+TGFzdFByb2plY3RzT2ZVc2VyKAogICAgICAgIFVzZXJJRCA9PiAxMjMsCiAgICApOwoKPWN1dAoKc3ViIExhc3RQcm9qZWN0c09mVXNlciB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgIGlmICggISRQYXJhbXtVc2VySUR9ICkgewogICAgICAgICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpMb2cnKS0+TG9nKAogICAgICAgICAgICBQcmlvcml0eSA9PiAnZXJyb3InLAogICAgICAgICAgICBNZXNzYWdlICA9PiAiTmVlZCBVc2VySUQiCiAgICAgICAgKTsKCiAgICAgICAgcmV0dXJuOwogICAgfQoKICAgICMgZ2V0IGRhdGFiYXNlIG9iamVjdAogICAgbXkgJERCT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkRCJyk7CgogICAgIyBkYiBzZWxlY3QKICAgICMgSSBkb24ndCB1c2UgZGlzdGluY3QgYmVjYXVzZSBvZiBPUkRFUiBCWSBwcm9ibGVtcyBvZiBQb3N0Z3JlU1FMCiAgICByZXR1cm4gaWYgISREQk9iamVjdC0+UHJlcGFyZSgKICAgICAgICBTUUwgPT4gJwogICAgICAgICAgICBTRUxFQ1QgcHJvamVjdF9pZCBGUk9NIHRpbWVfYWNjb3VudGluZ190YWJsZQogICAgICAgICAgICBXSEVSRSB1c2VyX2lkID0gPwogICAgICAgICAgICAgICAgQU5EIHByb2plY3RfaWQgPD4gLTEKICAgICAgICAgICAgT1JERVIgQlkgdGltZV9zdGFydCBERVNDJywKICAgICAgICBCaW5kICA9PiBbIFwkUGFyYW17VXNlcklEfSBdLAogICAgICAgIExpbWl0ID0+IDQwLAogICAgKTsKCiAgICAjIGZldGNoIHRoZSByZXN1bHQKICAgIG15ICVQcm9qZWN0czsKICAgIG15ICRDb3VudGVyID0gMDsKICAgIFJPVzoKICAgIHdoaWxlICggbXkgQFJvdyA9ICREQk9iamVjdC0+RmV0Y2hyb3dBcnJheSgpICkgewoKICAgICAgICBuZXh0IFJPVyBpZiAkQ291bnRlciA+IDc7CiAgICAgICAgbmV4dCBST1cgaWYgJFByb2plY3RzeyAkUm93WzBdIH07CgogICAgICAgICRQcm9qZWN0c3sgJFJvd1swXSB9ID0gMTsKICAgICAgICAkQ291bnRlcisrOwogICAgfQoKICAgIHJldHVybiBrZXlzICVQcm9qZWN0czsKfQoKPWhlYWQyIERheU9mV2VlaygpCgpTdWJzdGl0dXRlIGZvciBEYXRlOjpQY2FsYzo6RGF5X29mX1dlZWsoKSB3aGljaCB1c2VzIEtlcm5lbDo6U3lzdGVtOjpEYXRlVGltZS4KCj1jdXQKCnN1YiBEYXlPZldlZWsgewogICAgbXkgKCAkU2VsZiwgJFllYXIsICRNb250aCwgJERheSApID0gQF87CgogICAgbXkgJERhdGVUaW1lT2JqZWN0ID0gJEtlcm5lbDo6T00tPkNyZWF0ZSgKICAgICAgICAnS2VybmVsOjpTeXN0ZW06OkRhdGVUaW1lJywKICAgICAgICBPYmplY3RQYXJhbXMgPT4gewogICAgICAgICAgICBZZWFyICAgICA9PiAkWWVhciwKICAgICAgICAgICAgTW9udGggICAgPT4gJE1vbnRoLAogICAgICAgICAgICBEYXkgICAgICA9PiAkRGF5LAogICAgICAgICAgICBUaW1lWm9uZSA9PiAnZmxvYXRpbmcnLAogICAgICAgIH0sCiAgICApOwoKICAgIGlmICggISREYXRlVGltZU9iamVjdCApIHsKICAgICAgICAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6TG9nJyktPkxvZygKICAgICAgICAgICAgUHJpb3JpdHkgPT4gImVycm9yIiwKICAgICAgICAgICAgTWVzc2FnZSAgPT4gIkVycm9yIGNyZWF0aW5nIERhdGVUaW1lIG9iamVjdC4iLAogICAgICAgICk7CgogICAgICAgIHJldHVybjsKICAgIH0KCiAgICBteSAkRGF0ZVRpbWVWYWx1ZXMgPSAkRGF0ZVRpbWVPYmplY3QtPkdldCgpOwoKICAgIHJldHVybiAkRGF0ZVRpbWVWYWx1ZXMtPntEYXlPZldlZWt9Owp9Cgo9aGVhZDIgQWRkRGVsdGFZTUQoKQoKU3Vic3RpdHV0ZSBmb3IgRGF0ZTo6UGNhbGM6OkFkZF9EZWx0YV9ZTUQoKSB3aGljaCB1c2VzIEtlcm5lbDo6U3lzdGVtOjpEYXRlVGltZS4KCj1jdXQKCnN1YiBBZGREZWx0YVlNRCB7CiAgICBteSAoICRTZWxmLCAkWWVhciwgJE1vbnRoLCAkRGF5LCAkWWVhcnNUb0FkZCwgJE1vbnRoc1RvQWRkLCAkRGF5c1RvQWRkICkgPSBAXzsKCiAgICBteSAkRGF0ZVRpbWVPYmplY3QgPSAkS2VybmVsOjpPTS0+Q3JlYXRlKAogICAgICAgICdLZXJuZWw6OlN5c3RlbTo6RGF0ZVRpbWUnLAogICAgICAgIE9iamVjdFBhcmFtcyA9PiB7CiAgICAgICAgICAgIFllYXIgICAgID0+ICRZZWFyLAogICAgICAgICAgICBNb250aCAgICA9PiAkTW9udGgsCiAgICAgICAgICAgIERheSAgICAgID0+ICREYXksCiAgICAgICAgICAgIFRpbWVab25lID0+ICdmbG9hdGluZycsCiAgICAgICAgfSwKICAgICk7CgogICAgaWYgKCAhJERhdGVUaW1lT2JqZWN0ICkgewogICAgICAgICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpMb2cnKS0+TG9nKAogICAgICAgICAgICBQcmlvcml0eSA9PiAiZXJyb3IiLAogICAgICAgICAgICBNZXNzYWdlICA9PiAiRXJyb3IgY3JlYXRpbmcgRGF0ZVRpbWUgb2JqZWN0LiIsCiAgICAgICAgKTsKCiAgICAgICAgcmV0dXJuICggJFllYXIsICRNb250aCwgJERheSwgKTsKICAgIH0KCiAgICAkRGF0ZVRpbWVPYmplY3QtPkFkZCgKICAgICAgICBZZWFycyAgPT4gJFllYXJzVG9BZGQgIHx8IDAsCiAgICAgICAgTW9udGhzID0+ICRNb250aHNUb0FkZCB8fCAwLAogICAgICAgIERheXMgICA9PiAkRGF5c1RvQWRkICAgfHwgMCwKICAgICk7CiAgICBteSAkRGF0ZVRpbWVWYWx1ZXMgPSAkRGF0ZVRpbWVPYmplY3QtPkdldCgpOwoKICAgIHJldHVybiAoCiAgICAgICAgJERhdGVUaW1lVmFsdWVzLT57WWVhcn0sCiAgICAgICAgJERhdGVUaW1lVmFsdWVzLT57TW9udGh9LAogICAgICAgICREYXRlVGltZVZhbHVlcy0+e0RheX0sCiAgICApOwp9Cgo9aGVhZDIgRGF5c0luTW9udGgoKQoKU3Vic3RpdHV0ZSBmb3IgRGF0ZTo6UGNhbGM6OkRheXNfaW5fTW9udGgoKSB3aGljaCB1c2VzIEtlcm5lbDo6U3lzdGVtOjpEYXRlVGltZS4KCj1jdXQKCnN1YiBEYXlzSW5Nb250aCB7CiAgICBteSAoICRTZWxmLCAkWWVhciwgJE1vbnRoICkgPSBAXzsKCiAgICBteSAkRGF0ZVRpbWVPYmplY3QgPSAkS2VybmVsOjpPTS0+Q3JlYXRlKAogICAgICAgICdLZXJuZWw6OlN5c3RlbTo6RGF0ZVRpbWUnLAogICAgICAgIE9iamVjdFBhcmFtcyA9PiB7CiAgICAgICAgICAgIFllYXIgICAgID0+ICRZZWFyLAogICAgICAgICAgICBNb250aCAgICA9PiAkTW9udGgsCiAgICAgICAgICAgIERheSAgICAgID0+IDEsCiAgICAgICAgICAgIFRpbWVab25lID0+ICdmbG9hdGluZycsCiAgICAgICAgfSwKICAgICk7CgogICAgaWYgKCAhJERhdGVUaW1lT2JqZWN0ICkgewogICAgICAgICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpMb2cnKS0+TG9nKAogICAgICAgICAgICBQcmlvcml0eSA9PiAiZXJyb3IiLAogICAgICAgICAgICBNZXNzYWdlICA9PiAiRXJyb3IgY3JlYXRpbmcgRGF0ZVRpbWUgb2JqZWN0LiIsCiAgICAgICAgKTsKCiAgICAgICAgcmV0dXJuOwogICAgfQoKICAgIG15ICRMYXN0RGF5T2ZNb250aCA9ICREYXRlVGltZU9iamVjdC0+TGFzdERheU9mTW9udGhHZXQoKTsKCiAgICByZXR1cm4gJExhc3REYXlPZk1vbnRoLT57RGF5fTsKfQoKPWhlYWQyIFZhY2F0aW9uQ2hlY2soKQoKY2hlY2sgaWYgdGhlIHNlbGVjdGVkIGRheSBpcyBhIHZhY2F0aW9uIChpdCBkb2VzIG5vdCBtYXR0ZXIgaWYgeW91Cmluc2VydCAwMSBvciAxIGZvciBtb250aCBvciBkYXkgaW4gdGhlIGZ1bmN0aW9uIG9yIGluIHRoZSBTeXNDb25maWcpCgpyZXR1cm5zICh0cnVlKSB2YWNhdGlvbiBkYXkgaWYgZXhpc3RzLCByZXR1cm5zIGZhbHNlIGlmIGRhdGUgaXMgbm8KdmFjYXRpb24gZGF5CgogICAgJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5WYWNhdGlvbkNoZWNrKAogICAgICAgIFllYXIgICAgID0+IDIwMDUsCiAgICAgICAgTW9udGggICAgPT4gNyB8fCAnMDcnLAogICAgICAgIERheSAgICAgID0+IDEzLAogICAgKTsKCiAgICAkVGltZUFjY291bnRpbmdPYmplY3QtPlZhY2F0aW9uQ2hlY2soCiAgICAgICAgWWVhciAgICAgPT4gMjAwNSwKICAgICAgICBNb250aCAgICA9PiA3IHx8ICcwNycsCiAgICAgICAgRGF5ICAgICAgPT4gMTMsCiAgICAgICAgQ2FsZW5kYXIgPT4gMywgIyAnJyBpcyBkZWZhdWx0OyAwIGlzIGhhbmRsZWQgbGlrZSAnJwogICAgKTsKCj1jdXQKCnN1YiBWYWNhdGlvbkNoZWNrIHsKICAgIG15ICggJFNlbGYsICVQYXJhbSApID0gQF87CgogICAgIyBjaGVjayByZXF1aXJlZCBwYXJhbXMKICAgIGZvciAocXcoWWVhciBNb250aCBEYXkpKSB7CiAgICAgICAgaWYgKCAhJFBhcmFteyRffSApIHsKICAgICAgICAgICAgJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkxvZycpLT5Mb2coCiAgICAgICAgICAgICAgICBQcmlvcml0eSA9PiAnZXJyb3InLAogICAgICAgICAgICAgICAgTWVzc2FnZSAgPT4gIlZhY2F0aW9uQ2hlY2s6IE5lZWQgJF8hIiwKICAgICAgICAgICAgKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgIH0KCiAgICBteSAkRGF0ZVRpbWVPYmplY3QgPSAkS2VybmVsOjpPTS0+Q3JlYXRlKAogICAgICAgICdLZXJuZWw6OlN5c3RlbTo6RGF0ZVRpbWUnLAogICAgICAgIE9iamVjdFBhcmFtcyA9PiB7CiAgICAgICAgICAgICVQYXJhbSwKICAgICAgICAgICAgVGltZVpvbmUgPT4gJFNlbGYtPntUaW1lWm9uZX0sCiAgICAgICAgfSwKICAgICk7CiAgICBpZiAoICEkRGF0ZVRpbWVPYmplY3QgKSB7CiAgICAgICAgJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkxvZycpLT5Mb2coCiAgICAgICAgICAgIFByaW9yaXR5ID0+ICdlcnJvcicsCiAgICAgICAgICAgIE1lc3NhZ2UgID0+ICJFcnJvciBjcmVhdGluZyBEYXRlVGltZSBvYmplY3QuIiwKICAgICAgICApOwogICAgICAgIHJldHVybjsKICAgIH0KCiAgICByZXR1cm4gJERhdGVUaW1lT2JqZWN0LT5Jc1ZhY2F0aW9uRGF5KAogICAgICAgIENhbGVuZGFyID0+ICRQYXJhbXtDYWxlbmRhcn0sCiAgICApOwp9Cgo9aGVhZDIgV29ya2luZ1RpbWUoKQoKZ2V0IHRoZSB3b3JraW5nIHRpbWUgaW4gc2Vjb25kcyBiZXR3ZWVuIHRoZXNlIGxvY2FsIHN5c3RlbSB0aW1lcy4KCiAgICBteSAkV29ya2luZ1RpbWUgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPldvcmtpbmdUaW1lKAogICAgICAgIFN0YXJ0VGltZSA9PiAkQ3JlYXRlZCwKICAgICAgICBTdG9wVGltZSAgPT4gJFRpbWVPYmplY3QtPlN5c3RlbVRpbWUoKSwKICAgICk7CgogICAgbXkgJFdvcmtpbmdUaW1lID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Xb3JraW5nVGltZSgKICAgICAgICBTdGFydFRpbWUgPT4gJENyZWF0ZWQsCiAgICAgICAgU3RvcFRpbWUgID0+ICRUaW1lT2JqZWN0LT5TeXN0ZW1UaW1lKCksCiAgICAgICAgQ2FsZW5kYXIgID0+IDMsICMgJycgaXMgZGVmYXVsdAogICAgKTsKCj1jdXQKCnN1YiBXb3JraW5nVGltZSB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgICMgY2hlY2sgbmVlZGVkIHN0dWZmCiAgICBmb3IgKHF3KFN0YXJ0VGltZSBTdG9wVGltZSkpIHsKICAgICAgICBpZiAoICFkZWZpbmVkICRQYXJhbXskX30gKSB7CiAgICAgICAgICAgICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpMb2cnKS0+TG9nKAogICAgICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICAgICAgICAgIE1lc3NhZ2UgID0+ICJOZWVkICRfISIsCiAgICAgICAgICAgICk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICB9CgogICAgcmV0dXJuIDAgaWYgJFBhcmFte1N0YXJ0VGltZX0gPj0gJFBhcmFte1N0b3BUaW1lfTsKCiAgICBteSAkU3RhcnREYXRlVGltZU9iamVjdCA9ICRLZXJuZWw6Ok9NLT5DcmVhdGUoCiAgICAgICAgJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScsCiAgICAgICAgT2JqZWN0UGFyYW1zID0+IHsKICAgICAgICAgICAgRXBvY2ggICAgPT4gJFBhcmFte1N0YXJ0VGltZX0sCiAgICAgICAgICAgIFRpbWVab25lID0+ICRTZWxmLT57VGltZVpvbmV9LAogICAgICAgIH0sCiAgICApOwoKICAgIG15ICRTdG9wRGF0ZVRpbWVPYmplY3QgPSAkS2VybmVsOjpPTS0+Q3JlYXRlKAogICAgICAgICdLZXJuZWw6OlN5c3RlbTo6RGF0ZVRpbWUnLAogICAgICAgIE9iamVjdFBhcmFtcyA9PiB7CiAgICAgICAgICAgIEVwb2NoICAgID0+ICRQYXJhbXtTdG9wVGltZX0sCiAgICAgICAgICAgIFRpbWVab25lID0+ICRTZWxmLT57VGltZVpvbmV9LAogICAgICAgIH0sCiAgICApOwoKICAgIG15ICREZWx0YSA9ICRTdGFydERhdGVUaW1lT2JqZWN0LT5EZWx0YSgKICAgICAgICBEYXRlVGltZU9iamVjdCA9PiAkU3RvcERhdGVUaW1lT2JqZWN0LAogICAgICAgIEZvcldvcmtpbmdUaW1lID0+IDEsCiAgICAgICAgQ2FsZW5kYXIgICAgICAgPT4gJFBhcmFte0NhbGVuZGFyfSwKICAgICk7CgogICAgaWYgKCAhSXNIYXNoUmVmV2l0aERhdGEoJERlbHRhKSApIHsKICAgICAgICAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6TG9nJyktPkxvZygKICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICAgICAgTWVzc2FnZSAgPT4gJ0Vycm9yIGNhbGN1bGF0aW5nIHdvcmtpbmcgdGltZS4nLAogICAgICAgICk7CiAgICAgICAgcmV0dXJuOwogICAgfQoKICAgIHJldHVybiAkRGVsdGEtPntBYnNvbHV0ZVNlY29uZHN9Owp9Cgo9aGVhZDIgU3lzdGVtVGltZTJEYXRlKCkKCmNvbnZlcnRzIGEgc3lzdGVtIHRpbWUgdG8gYSBzdHJ1Y3R1cmVkIGRhdGUgYXJyYXkuCgogICAgbXkgKCRTZWMsICRNaW4sICRIb3VyLCAkRGF5LCAkTW9udGgsICRZZWFyLCAkV2Vla0RheSkgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlN5c3RlbVRpbWUyRGF0ZSgKICAgICAgICBTeXN0ZW1UaW1lID0+ICRUaW1lT2JqZWN0LT5TeXN0ZW1UaW1lKCksCiAgICApOwoKJFdlZWtEYXkgaXMgdGhlIGRheSBvZiB0aGUgd2Vlaywgd2l0aCAwIGluZGljYXRpbmcgU3VuZGF5IGFuZCAzIGluZGljYXRpbmcgV2VkbmVzZGF5LgoKPWN1dAoKc3ViIFN5c3RlbVRpbWUyRGF0ZSB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgICMgY2hlY2sgbmVlZGVkIHN0dWZmCiAgICBpZiAoICFkZWZpbmVkICRQYXJhbXtTeXN0ZW1UaW1lfSApIHsKICAgICAgICAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6TG9nJyktPkxvZygKICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICAgICAgTWVzc2FnZSAgPT4gJ05lZWQgU3lzdGVtVGltZSEnLAogICAgICAgICk7CiAgICAgICAgcmV0dXJuOwogICAgfQoKICAgIG15ICREYXRlVGltZU9iamVjdCA9ICRLZXJuZWw6Ok9NLT5DcmVhdGUoCiAgICAgICAgJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScsCiAgICAgICAgT2JqZWN0UGFyYW1zID0+IHsKICAgICAgICAgICAgRXBvY2ggPT4gJFBhcmFte1N5c3RlbVRpbWV9LAogICAgICAgIH0sCiAgICApOwoKICAgICREYXRlVGltZU9iamVjdC0+VG9UaW1lWm9uZSggVGltZVpvbmUgPT4gJFNlbGYtPntUaW1lWm9uZX0gKTsKCiAgICBteSAkRGF0ZVRpbWVWYWx1ZXMgPSAkRGF0ZVRpbWVPYmplY3QtPkdldCgpOwoKICAgIG15ICRZZWFyICA9ICREYXRlVGltZVZhbHVlcy0+e1llYXJ9OwogICAgbXkgJE1vbnRoID0gc3ByaW50ZiAiJTAyZCIsICREYXRlVGltZVZhbHVlcy0+e01vbnRofTsKICAgIG15ICREYXkgICA9IHNwcmludGYgIiUwMmQiLCAkRGF0ZVRpbWVWYWx1ZXMtPntEYXl9OwogICAgbXkgJEhvdXIgID0gc3ByaW50ZiAiJTAyZCIsICREYXRlVGltZVZhbHVlcy0+e0hvdXJ9OwogICAgbXkgJE1pbiAgID0gc3ByaW50ZiAiJTAyZCIsICREYXRlVGltZVZhbHVlcy0+e01pbnV0ZX07CiAgICBteSAkU2VjICAgPSBzcHJpbnRmICIlMDJkIiwgJERhdGVUaW1lVmFsdWVzLT57U2Vjb25kfTsKCiAgICBteSAkV0RheSA9ICREYXRlVGltZVZhbHVlcy0+e0RheU9mV2Vla30gPT0gNyA/IDAgOiAkRGF0ZVRpbWVWYWx1ZXMtPntEYXlPZldlZWt9OwoKICAgIHJldHVybiAoICRTZWMsICRNaW4sICRIb3VyLCAkRGF5LCAkTW9udGgsICRZZWFyLCAkV0RheSApOwp9Cgo9aGVhZDIgRGF5T2ZXZWVrVG9OYW1lKCkKCkNvbnZlcnQgYSBkYXkgbnVtYmVyIGludG8gdGhlIGRheSBuYW1lCgogICAgbXkgJERheU5hbWUgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPkRheU9mV2Vla1RvTmFtZSgKICAgICAgICBOdW1iZXIgPT4gMSAjIHdpbGwgcmV0dXJuICdNb25kYXknCiAgICApOwoKPWN1dAoKc3ViIERheU9mV2Vla1RvTmFtZSB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgICMgY2hlY2sgbmVlZGVkIHN0dWZmCiAgICBpZiAoICFkZWZpbmVkICRQYXJhbXtOdW1iZXJ9ICkgewogICAgICAgICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpMb2cnKS0+TG9nKAogICAgICAgICAgICBQcmlvcml0eSA9PiAnZXJyb3InLAogICAgICAgICAgICBNZXNzYWdlICA9PiAiTmVlZCBOdW1iZXIhIiwKICAgICAgICApOwogICAgICAgIHJldHVybjsKICAgIH0KCiAgICBpZiAoICFJc1Bvc2l0aXZlSW50ZWdlciggJFBhcmFte051bWJlcn0gKSApIHsKICAgICAgICAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6TG9nJyktPkxvZygKICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICAgICAgTWVzc2FnZSAgPT4gIk51bWJlciBtdXN0IGJlIGEgcG9zaXRpdmUgaW50ZWdlciEiLAogICAgICAgICk7CiAgICAgICAgcmV0dXJuOwogICAgfQogICAgaWYgKCAkUGFyYW17TnVtYmVyfSA+IDcgKSB7CiAgICAgICAgJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkxvZycpLT5Mb2coCiAgICAgICAgICAgIFByaW9yaXR5ID0+ICdlcnJvcicsCiAgICAgICAgICAgIE1lc3NhZ2UgID0+ICJOdW1iZXIgbXVzdCBub3QgYmUgZ3JhdGVyIHRoYW4gNyEiLAogICAgICAgICk7CiAgICAgICAgcmV0dXJuOwogICAgfQoKICAgIG15IEBEYXlOYW1lcyA9ICgKICAgICAgICAnTW9uZGF5JywKICAgICAgICAnVHVlc2RheScsCiAgICAgICAgJ1dlZG5lc2RheScsCiAgICAgICAgJ1RodXJzZGF5JywKICAgICAgICAnRnJpZGF5JywKICAgICAgICAnU2F0dXJkYXknLAogICAgICAgICdTdW5kYXknCiAgICApOwoKICAgIHJldHVybiAkRGF5TmFtZXNbICRQYXJhbXtOdW1iZXJ9IC0gMSBdOwp9Cgo9aGVhZDIgRGF0ZTJTeXN0ZW1UaW1lKCkKCmNvbnZlcnRzIGEgc3RydWN0dXJlZCBkYXRlIGFycmF5IHRvIHN5c3RlbSB0aW1lIG9mIE9UT0JPLgoKICAgIG15ICRTeXN0ZW1UaW1lID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5EYXRlMlN5c3RlbVRpbWUoCiAgICAgICAgWWVhciAgID0+IDIwMDQsCiAgICAgICAgTW9udGggID0+IDgsCiAgICAgICAgRGF5ICAgID0+IDE0LAogICAgICAgIEhvdXIgICA9PiAyMiwKICAgICAgICBNaW51dGUgPT4gNDUsCiAgICAgICAgU2Vjb25kID0+IDAsCiAgICApOwoKPWN1dAoKc3ViIERhdGUyU3lzdGVtVGltZSB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgICMgY2hlY2sgbmVlZGVkIHN0dWZmCiAgICBmb3IgKHF3KFllYXIgTW9udGggRGF5IEhvdXIgTWludXRlIFNlY29uZCkpIHsKICAgICAgICBpZiAoICFkZWZpbmVkICRQYXJhbXskX30gKSB7CiAgICAgICAgICAgICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpMb2cnKS0+TG9nKAogICAgICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICAgICAgICAgIE1lc3NhZ2UgID0+ICJOZWVkICRfISIsCiAgICAgICAgICAgICk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICB9CgogICAgbXkgJERhdGVUaW1lT2JqZWN0ID0gJEtlcm5lbDo6T00tPkNyZWF0ZSgKICAgICAgICAnS2VybmVsOjpTeXN0ZW06OkRhdGVUaW1lJywKICAgICAgICBPYmplY3RQYXJhbXMgPT4gewogICAgICAgICAgICAlUGFyYW0sCiAgICAgICAgICAgIFRpbWVab25lID0+ICRTZWxmLT57VGltZVpvbmV9LAogICAgICAgIH0sCiAgICApOwoKICAgIGlmICggISREYXRlVGltZU9iamVjdCApIHsKICAgICAgICAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6TG9nJyktPkxvZygKICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICAgICAgTWVzc2FnZSAgPT4KICAgICAgICAgICAgICAgICJJbnZhbGlkIERhdGUgJyRQYXJhbXtZZWFyfS0kUGFyYW17TW9udGh9LSRQYXJhbXtEYXl9ICRQYXJhbXtIb3VyfTokUGFyYW17TWludXRlfTokUGFyYW17U2Vjb25kfSchIiwKICAgICAgICApOwogICAgICAgIHJldHVybjsKICAgIH0KCiAgICBteSAkU3lzdGVtVGltZSA9ICREYXRlVGltZU9iamVjdC0+VG9FcG9jaCgpOwoKICAgIHJldHVybiAkU3lzdGVtVGltZTsKfQoKPWhlYWQyIFRpbWVTdGFtcDJTeXN0ZW1UaW1lKCkKCmNvbnZlcnRzIGEgZ2l2ZW4gdGltZSBzdGFtcCB0byBsb2NhbCBzeXN0ZW0gdGltZS4KCiAgICBteSAkU3lzdGVtVGltZSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+VGltZVN0YW1wMlN5c3RlbVRpbWUoCiAgICAgICAgU3RyaW5nID0+ICcyMDA0LTA4LTE0IDIyOjQ1OjAwJywKICAgICk7Cgo9Y3V0CgpzdWIgVGltZVN0YW1wMlN5c3RlbVRpbWUgewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICAjIGNoZWNrIG5lZWRlZCBzdHVmZgogICAgaWYgKCAhJFBhcmFte1N0cmluZ30gKSB7CiAgICAgICAgJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkxvZycpLT5Mb2coCiAgICAgICAgICAgIFByaW9yaXR5ID0+ICdlcnJvcicsCiAgICAgICAgICAgIE1lc3NhZ2UgID0+ICdOZWVkIFN0cmluZyEnLAogICAgICAgICk7CiAgICAgICAgcmV0dXJuOwogICAgfQoKICAgIG15ICRTeXN0ZW1UaW1lID0gMDsKCiAgICAjIG1hdGNoIGlzbyBkYXRlIGZvcm1hdAogICAgaWYgKCAkUGFyYW17U3RyaW5nfSA9fiAvKFxkezR9KS0oXGR7MSwyfSktKFxkezEsMn0pXHMoXGR7MSwyfSk6KFxkezEsMn0pOihcZHsxLDJ9KS8gKSB7CiAgICAgICAgJFN5c3RlbVRpbWUgPSAkU2VsZi0+RGF0ZTJTeXN0ZW1UaW1lKAogICAgICAgICAgICBZZWFyICAgPT4gJDEsCiAgICAgICAgICAgIE1vbnRoICA9PiAkMiwKICAgICAgICAgICAgRGF5ICAgID0+ICQzLAogICAgICAgICAgICBIb3VyICAgPT4gJDQsCiAgICAgICAgICAgIE1pbnV0ZSA9PiAkNSwKICAgICAgICAgICAgU2Vjb25kID0+ICQ2LAogICAgICAgICk7CiAgICB9CgogICAgIyBtYXRjaCBpc28gZGF0ZSBmb3JtYXQgKHdyb25nIGZvcm1hdCkKICAgIGVsc2lmICggJFBhcmFte1N0cmluZ30gPX4gLyhcZHsxLDJ9KS0oXGR7MSwyfSktKFxkezR9KVxzKFxkezEsMn0pOihcZHsxLDJ9KTooXGR7MSwyfSkvICkgewogICAgICAgICRTeXN0ZW1UaW1lID0gJFNlbGYtPkRhdGUyU3lzdGVtVGltZSgKICAgICAgICAgICAgWWVhciAgID0+ICQzLAogICAgICAgICAgICBNb250aCAgPT4gJDIsCiAgICAgICAgICAgIERheSAgICA9PiAkMSwKICAgICAgICAgICAgSG91ciAgID0+ICQ0LAogICAgICAgICAgICBNaW51dGUgPT4gJDUsCiAgICAgICAgICAgIFNlY29uZCA9PiAkNiwKICAgICAgICApOwogICAgfQoKICAgICMgbWF0Y2ggZXVybyB0aW1lIGZvcm1hdAogICAgZWxzaWYgKCAkUGFyYW17U3RyaW5nfSA9fiAvKFxkezEsMn0pXC4oXGR7MSwyfSlcLihcZHs0fSlccyhcZHsxLDJ9KTooXGR7MSwyfSk6KFxkezEsMn0pLyApIHsKICAgICAgICAkU3lzdGVtVGltZSA9ICRTZWxmLT5EYXRlMlN5c3RlbVRpbWUoCiAgICAgICAgICAgIFllYXIgICA9PiAkMywKICAgICAgICAgICAgTW9udGggID0+ICQyLAogICAgICAgICAgICBEYXkgICAgPT4gJDEsCiAgICAgICAgICAgIEhvdXIgICA9PiAkNCwKICAgICAgICAgICAgTWludXRlID0+ICQ1LAogICAgICAgICAgICBTZWNvbmQgPT4gJDYsCiAgICAgICAgKTsKICAgIH0KCiAgICAjIG1hdGNoIHl5eXktbW0tZGRUaGg6bW06c3MrdHQ6enogdGltZSBmb3JtYXQKICAgIGVsc2lmICgKICAgICAgICAkUGFyYW17U3RyaW5nfQogICAgICAgID1+IC8oXGR7NH0pLShcZHsxLDJ9KS0oXGR7MSwyfSlUKFxkezEsMn0pOihcZHsxLDJ9KTooXGR7MSwyfSkoXCt8XC0pKChcZHsxLDJ9KTooXGR7MSwyfSkpL2kKICAgICAgICApCiAgICB7CiAgICAgICAgJFN5c3RlbVRpbWUgPSAkU2VsZi0+RGF0ZTJTeXN0ZW1UaW1lKAogICAgICAgICAgICBZZWFyICAgPT4gJDEsCiAgICAgICAgICAgIE1vbnRoICA9PiAkMiwKICAgICAgICAgICAgRGF5ICAgID0+ICQzLAogICAgICAgICAgICBIb3VyICAgPT4gJDQsCiAgICAgICAgICAgIE1pbnV0ZSA9PiAkNSwKICAgICAgICAgICAgU2Vjb25kID0+ICQ2LAogICAgICAgICk7CiAgICB9CgogICAgIyBtYXRjaCBtYWlsIHRpbWUgZm9ybWF0CiAgICBlbHNpZiAoCiAgICAgICAgJFBhcmFte1N0cmluZ30KICAgICAgICA9fiAvKCguLi4pLFxzK3wpKFxkezEsMn0pXHMoLi4uKVxzKFxkezR9KVxzKFxkezEsMn0pOihcZHsxLDJ9KTooXGR7MSwyfSlccygoXCt8XC0pKFxkezJ9KShcZHsyfSl8Li4uKS8KICAgICAgICApCiAgICB7CiAgICAgICAgbXkgQE1vbnRoTWFwICAgID0gcXcvSmFuIEZlYiBNYXIgQXByIE1heSBKdW4gSnVsIEF1ZyBTZXAgT2N0IE5vdiBEZWMvOwogICAgICAgIG15ICRNb250aCAgICAgICA9IDE7CiAgICAgICAgbXkgJE1vbnRoU3RyaW5nID0gJDQ7CiAgICAgICAgZm9yIG15ICRNb250aENvdW50ICggMCAuLiAkI01vbnRoTWFwICkgewogICAgICAgICAgICBpZiAoICRNb250aFN0cmluZyA9fiAvJE1vbnRoTWFwWyRNb250aENvdW50XS9pICkgewogICAgICAgICAgICAgICAgJE1vbnRoID0gJE1vbnRoQ291bnQgKyAxOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgICRTeXN0ZW1UaW1lID0gJFNlbGYtPkRhdGUyU3lzdGVtVGltZSgKICAgICAgICAgICAgWWVhciAgID0+ICQ1LAogICAgICAgICAgICBNb250aCAgPT4gJE1vbnRoLAogICAgICAgICAgICBEYXkgICAgPT4gJDMsCiAgICAgICAgICAgIEhvdXIgICA9PiAkNiwKICAgICAgICAgICAgTWludXRlID0+ICQ3LAogICAgICAgICAgICBTZWNvbmQgPT4gJDgsCiAgICAgICAgKTsgICAgIyArICRTZWxmLT57VGltZVNlY0RpZmZ9OwogICAgfQogICAgZWxzaWYgKCAgICAjIG1hdGNoIHl5eXktbW0tZGRUaGg6bW06c3NaCiAgICAgICAgJFBhcmFte1N0cmluZ30gPX4gLyhcZHs0fSktKFxkezEsMn0pLShcZHsxLDJ9KVQoXGR7MSwyfSk6KFxkezEsMn0pOihcZHsxLDJ9KVokLwogICAgICAgICkKICAgIHsKICAgICAgICAkU3lzdGVtVGltZSA9ICRTZWxmLT5EYXRlMlN5c3RlbVRpbWUoCiAgICAgICAgICAgIFllYXIgICA9PiAkMSwKICAgICAgICAgICAgTW9udGggID0+ICQyLAogICAgICAgICAgICBEYXkgICAgPT4gJDMsCiAgICAgICAgICAgIEhvdXIgICA9PiAkNCwKICAgICAgICAgICAgTWludXRlID0+ICQ1LAogICAgICAgICAgICBTZWNvbmQgPT4gJDYsCiAgICAgICAgKTsKICAgIH0KCiAgICAjIHJldHVybiBlcnJvcgogICAgaWYgKCAhZGVmaW5lZCAkU3lzdGVtVGltZSApIHsKICAgICAgICAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6TG9nJyktPkxvZygKICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICAgICAgTWVzc2FnZSAgPT4gIkludmFsaWQgRGF0ZSAnJFBhcmFte1N0cmluZ30nISIsCiAgICAgICAgKTsKICAgIH0KCiAgICAjIHJldHVybiBzeXN0ZW0gdGltZQogICAgcmV0dXJuICRTeXN0ZW1UaW1lOwoKfQoKMTsKCj1oZWFkMSBURVJNUyBBTkQgQ09ORElUSU9OUwoKVGhpcyBzb2Z0d2FyZSBpcyBwYXJ0IG9mIHRoZSBPVE9CTyBwcm9qZWN0IChMPGh0dHBzOi8vb3RvYm8ub3JnLz4pLgoKVGhpcyBzb2Z0d2FyZSBjb21lcyB3aXRoIEFCU09MVVRFTFkgTk8gV0FSUkFOVFkuIEZvciBkZXRhaWxzLCBzZWUKdGhlIGVuY2xvc2VkIGZpbGUgQ09QWUlORyBmb3IgbGljZW5zZSBpbmZvcm1hdGlvbiAoR1BMKS4gSWYgeW91CmRpZCBub3QgcmVjZWl2ZSB0aGlzIGZpbGUsIHNlZSBMPGh0dHBzOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvZ3BsLTMuMC50eHQ+LgoKPWN1dAo=</File>
        <File Location="Kernel/System/Stats/Dynamic/TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIEtlcm5lbDo6U3lzdGVtOjpTdGF0czo6RHluYW1pYzo6VGltZUFjY291bnRpbmc7Cgp1c2Ugc3RyaWN0Owp1c2Ugd2FybmluZ3M7Cgp1c2UgS2VybmVsOjpMYW5ndWFnZSAgICAgICAgICAgICAgcXcoVHJhbnNsYXRhYmxlKTsKdXNlIEtlcm5lbDo6U3lzdGVtOjpWYXJpYWJsZUNoZWNrIHF3KElzQXJyYXlSZWZXaXRoRGF0YSk7CgpvdXIgQE9iamVjdERlcGVuZGVuY2llcyA9ICgKICAgICdLZXJuZWw6OlN5c3RlbTo6TG9nJywKICAgICdLZXJuZWw6OlN5c3RlbTo6RGF0ZVRpbWUnLAogICAgJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycsCiAgICAnS2VybmVsOjpTeXN0ZW06OlVzZXInLAopOwoKc3ViIG5ldyB7CiAgICBteSAoICRUeXBlLCAlUGFyYW0gKSA9IEBfOwoKICAgICMgYWxsb2NhdGUgbmV3IGhhc2ggZm9yIG9iamVjdAogICAgbXkgJFNlbGYgPSB7fTsKICAgIGJsZXNzKCAkU2VsZiwgJFR5cGUgKTsKCiAgICByZXR1cm4gJFNlbGY7Cn0KCnN1YiBHZXRPYmplY3ROYW1lIHsKICAgIG15ICggJFNlbGYsICVQYXJhbSApID0gQF87CgogICAgcmV0dXJuICdUaW1lQWNjb3VudGluZyc7Cn0KCnN1YiBHZXRPYmplY3RBdHRyaWJ1dGVzIHsKICAgIG15ICggJFNlbGYsICVQYXJhbSApID0gQF87CgogICAgbXkgJERhdGVUaW1lT2JqZWN0Q3VycmVudCA9ICRLZXJuZWw6Ok9NLT5DcmVhdGUoJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScpOwoKICAgICMgc2V0IHByZWRlZmluZWQgc3RhcnQgdGltZQogICAgbXkgJFRpbWVTdGFtcCA9ICREYXRlVGltZU9iamVjdEN1cnJlbnQtPlRvRXBvY2goKTsKICAgIG15ICgkRGF0ZSkgICAgPSBzcGxpdCAvXHMrLywgJFRpbWVTdGFtcDsKICAgIG15ICRUb2RheSAgICAgPSBzcHJpbnRmICIlcyAyMzo1OTo1OSIsICREYXRlOwoKICAgICMgZ2V0IHRpbWUgYWNjb3VudGluZyBvYmplY3QKICAgIG15ICRUaW1lQWNjb3VudGluZ09iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycpOwoKICAgICMgZ2V0IHByb2plY3QgbGlzdAogICAgbXkgJVByb2plY3RMaXN0ID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Qcm9qZWN0U2V0dGluZ3NHZXQoCiAgICAgICAgU3RhdHVzID0+ICd2YWxpZCcsCiAgICApOwoKICAgICMgZ2V0IGFjdGlvbiBsaXN0CiAgICBteSAlQWN0aW9uTGlzdFNvdXJjZSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+QWN0aW9uU2V0dGluZ3NHZXQoKTsKICAgIG15ICVBY3Rpb25MaXN0OwoKICAgIGZvciBteSAkQWN0aW9uICggc29ydCBrZXlzICVBY3Rpb25MaXN0U291cmNlICkgewogICAgICAgICRBY3Rpb25MaXN0eyRBY3Rpb259ID0gJEFjdGlvbkxpc3RTb3VyY2V7JEFjdGlvbn0tPntBY3Rpb259OwogICAgfQoKICAgICMgZ2V0IHVzZXIgbGlzdAogICAgbXkgJVVzZXJMaXN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlVzZXInKS0+VXNlckxpc3QoCiAgICAgICAgVHlwZSAgPT4gJ0xvbmcnLAogICAgICAgIFZhbGlkID0+IDAsCiAgICApOwoKICAgIG15IEBBdHRyaWJ1dGVzID0gKAogICAgICAgIHsKICAgICAgICAgICAgTmFtZSAgICAgICAgICAgICA9PiBUcmFuc2xhdGFibGUoJ1Byb2plY3QnKSwKICAgICAgICAgICAgVXNlQXNYdmFsdWUgICAgICA9PiAxLAogICAgICAgICAgICBVc2VBc1ZhbHVlU2VyaWVzID0+IDAsCiAgICAgICAgICAgIFVzZUFzUmVzdHJpY3Rpb24gPT4gMSwKICAgICAgICAgICAgRWxlbWVudCAgICAgICAgICA9PiAnUHJvamVjdCcsCiAgICAgICAgICAgIEJsb2NrICAgICAgICAgICAgPT4gJ011bHRpU2VsZWN0RmllbGQnLAogICAgICAgICAgICBUcmFuc2xhdGlvbiAgICAgID0+IDAsCiAgICAgICAgICAgIFZhbHVlcyAgICAgICAgICAgPT4gJFByb2plY3RMaXN0e1Byb2plY3R9LAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgICBOYW1lICAgICAgICAgICAgID0+IFRyYW5zbGF0YWJsZSgnVXNlcicpLAogICAgICAgICAgICBVc2VBc1h2YWx1ZSAgICAgID0+IDEsCiAgICAgICAgICAgIFVzZUFzVmFsdWVTZXJpZXMgPT4gMCwKICAgICAgICAgICAgVXNlQXNSZXN0cmljdGlvbiA9PiAxLAogICAgICAgICAgICBFbGVtZW50ICAgICAgICAgID0+ICdVc2VyJywKICAgICAgICAgICAgQmxvY2sgICAgICAgICAgICA9PiAnTXVsdGlTZWxlY3RGaWVsZCcsCiAgICAgICAgICAgIFRyYW5zbGF0aW9uICAgICAgPT4gMCwKICAgICAgICAgICAgVmFsdWVzICAgICAgICAgICA9PiBcJVVzZXJMaXN0LAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgICBOYW1lICAgICAgICAgICAgID0+IFRyYW5zbGF0YWJsZSgnU29ydCBzZXF1ZW5jZScpLAogICAgICAgICAgICBVc2VBc1h2YWx1ZSAgICAgID0+IDAsCiAgICAgICAgICAgIFVzZUFzVmFsdWVTZXJpZXMgPT4gMSwKICAgICAgICAgICAgVXNlQXNSZXN0cmljdGlvbiA9PiAwLAogICAgICAgICAgICBFbGVtZW50ICAgICAgICAgID0+ICdTb3J0U2VxdWVuY2UnLAogICAgICAgICAgICBCbG9jayAgICAgICAgICAgID0+ICdTZWxlY3RGaWVsZCcsCiAgICAgICAgICAgIFRyYW5zbGF0aW9uICAgICAgPT4gMSwKICAgICAgICAgICAgVmFsdWVzICAgICAgICAgICA9PiB7CiAgICAgICAgICAgICAgICBVcCAgID0+ICdhc2NlbmRpbmcnLAogICAgICAgICAgICAgICAgRG93biA9PiAnZGVzY2VuZGluZycsCiAgICAgICAgICAgIH0sCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICAgIE5hbWUgICAgICAgICAgICAgPT4gVHJhbnNsYXRhYmxlKCdUYXNrJyksCiAgICAgICAgICAgIFVzZUFzWHZhbHVlICAgICAgPT4gMCwKICAgICAgICAgICAgVXNlQXNWYWx1ZVNlcmllcyA9PiAwLAogICAgICAgICAgICBVc2VBc1Jlc3RyaWN0aW9uID0+IDEsCiAgICAgICAgICAgIEVsZW1lbnQgICAgICAgICAgPT4gJ1Byb2plY3RBY3Rpb24nLAogICAgICAgICAgICBCbG9jayAgICAgICAgICAgID0+ICdNdWx0aVNlbGVjdEZpZWxkJywKICAgICAgICAgICAgVHJhbnNsYXRpb24gICAgICA9PiAwLAogICAgICAgICAgICBWYWx1ZXMgICAgICAgICAgID0+IFwlQWN0aW9uTGlzdCwKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgICAgTmFtZSAgICAgICAgICAgICA9PiBUcmFuc2xhdGFibGUoJ1BlcmlvZCcpLAogICAgICAgICAgICBVc2VBc1h2YWx1ZSAgICAgID0+IDAsCiAgICAgICAgICAgIFVzZUFzVmFsdWVTZXJpZXMgPT4gMCwKICAgICAgICAgICAgVXNlQXNSZXN0cmljdGlvbiA9PiAxLAogICAgICAgICAgICBFbGVtZW50ICAgICAgICAgID0+ICdQZXJpb2QnLAogICAgICAgICAgICBUaW1lUGVyaW9kRm9ybWF0ID0+ICdEYXRlSW5wdXRGb3JtYXQnLCAgICAgICAgIyAnRGF0ZUlucHV0Rm9ybWF0TG9uZycsCiAgICAgICAgICAgIEJsb2NrICAgICAgICAgICAgPT4gJ1RpbWUnLAogICAgICAgICAgICBWYWx1ZXMgICAgICAgICAgID0+IHsKICAgICAgICAgICAgICAgIFRpbWVTdGFydCA9PiAnVGltZUFjY291bnRpbmdQZXJpb2RTdGFydCcsCiAgICAgICAgICAgICAgICBUaW1lU3RvcCAgPT4gJ1RpbWVBY2NvdW50aW5nUGVyaW9kU3RvcCcsCiAgICAgICAgICAgIH0sCiAgICAgICAgfSwKICAgICk7CgogICAgcmV0dXJuIEBBdHRyaWJ1dGVzOwp9CgpzdWIgR2V0SGVhZGVyTGluZSB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwogICAgbXkgQEhlYWRlckxpbmUgPSAoIiIpOwoKICAgICMgVXNlcnMgYXMgWC12YWx1ZQogICAgaWYgKCAkUGFyYW17WFZhbHVlfS0+e0VsZW1lbnR9ICYmICRQYXJhbXtYVmFsdWV9LT57RWxlbWVudH0gZXEgJ1VzZXInICkgewoKICAgICAgICAjIHVzZXIgaGF2ZSBiZWVuIHNlbGVjdGVkIGFzIHgtdmFsdWUKICAgICAgICBteSBAVXNlcklEcyA9IEB7ICRQYXJhbXtYVmFsdWV9LT57U2VsZWN0ZWRWYWx1ZXN9IH07CgogICAgICAgICMgZ2V0IHVzZXIgb2JqZWN0CiAgICAgICAgbXkgJFVzZXJPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VXNlcicpOwoKICAgICAgICAjIGl0ZXJhdGUgb3ZlciBzZWxlY3RlZCB1c2VycwogICAgICAgIFVTRVJJRDoKICAgICAgICBmb3IgbXkgJFVzZXJJRCAoQFVzZXJJRHMpIHsKICAgICAgICAgICAgbXkgJFVzZXJOYW1lID0gJFVzZXJPYmplY3QtPlVzZXJOYW1lKAogICAgICAgICAgICAgICAgVXNlcklEID0+ICRVc2VySUQsCiAgICAgICAgICAgICk7CgogICAgICAgICAgICBwdXNoIEBIZWFkZXJMaW5lLCAkVXNlck5hbWU7CiAgICAgICAgfQogICAgfQoKICAgICMgUHJvamVjdHMgYXMgWC12YWx1ZQogICAgZWxzZSB7CiAgICAgICAgIyBwcm9qZWN0cyBoYXZlIGJlZW4gc2VsZWN0ZWQgYXMgeC12YWx1ZQogICAgICAgIG15IEBQcm9qZWN0SURzID0gQHsgJFBhcmFte1hWYWx1ZX0tPntTZWxlY3RlZFZhbHVlc30gfTsKCiAgICAgICAgIyBnZXQgdGltZSBhY2NvdW50aW5nIG9iamVjdAogICAgICAgIG15ICRUaW1lQWNjb3VudGluZ09iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycpOwoKICAgICAgICAjIGl0ZXJhdGUgb3ZlciBzZWxlY3RlZCBwcm9qZWN0cwogICAgICAgIFBST0pFQ1RJRDoKICAgICAgICBmb3IgbXkgJFByb2plY3RJRCAoQFByb2plY3RJRHMpIHsKICAgICAgICAgICAgbXkgJVByb2plY3REYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Qcm9qZWN0R2V0KAogICAgICAgICAgICAgICAgSUQgPT4gJFByb2plY3RJRCwKICAgICAgICAgICAgKTsKCiAgICAgICAgICAgIHB1c2ggQEhlYWRlckxpbmUsICRQcm9qZWN0RGF0YXtQcm9qZWN0fTsKICAgICAgICB9CiAgICB9CgogICAgcmV0dXJuIFxASGVhZGVyTGluZTsKfQoKc3ViIEdldFN0YXRUYWJsZSB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwogICAgbXkgQFN0YXRBcnJheTsKICAgIG15IEBVc2VySURzOwoKICAgICMgVXNlcnMgYXMgWC12YWx1ZQogICAgaWYgKCAkUGFyYW17WFZhbHVlfS0+e0VsZW1lbnR9ICYmICRQYXJhbXtYVmFsdWV9LT57RWxlbWVudH0gZXEgJ1VzZXInICkgewoKICAgICAgICAjIHVzZXIgaGF2ZSBiZWVuIHNlbGVjdGVkIGFzIHgtdmFsdWUKICAgICAgICBAVXNlcklEcyA9IEB7ICRQYXJhbXtYVmFsdWV9LT57U2VsZWN0ZWRWYWx1ZXN9IH07CgogICAgICAgICMgZ2V0IHN0YXQgZGF0YQogICAgICAgIG15ICRTdGF0RGF0YSA9ICRTZWxmLT5fR2V0U3RhdERhdGEoCiAgICAgICAgICAgIFBhcmFtICAgPT4gXCVQYXJhbSwKICAgICAgICAgICAgVXNlcklEcyA9PiBcQFVzZXJJRHMsCiAgICAgICAgKTsKCiAgICAgICAgIyBjaGVjayBzdGF0IGRhdGEKICAgICAgICByZXR1cm4gaWYgISRTdGF0RGF0YTsKICAgICAgICByZXR1cm4gaWYgcmVmICRTdGF0RGF0YSBuZSAnQVJSQVknOwoKICAgICAgICBteSBAUmF3U3RhdEFycmF5ID0gQHskU3RhdERhdGF9OwogICAgICAgIHJldHVybiBpZiAhQFJhd1N0YXRBcnJheTsKCiAgICAgICAgIyBnZXQgdGltZSBhY2NvdW50aW5nIG9iamVjdAogICAgICAgIG15ICRUaW1lQWNjb3VudGluZ09iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycpOwoKICAgICAgICAjIGdldCBsaXN0IG9mIG5lZWRlZCBkYXRhCiAgICAgICAgbXkgJVByb2plY3REYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Qcm9qZWN0U2V0dGluZ3NHZXQoKTsKICAgICAgICBteSAlUHJvamVjdExpc3QgPSAleyAkUHJvamVjdERhdGF7UHJvamVjdH0gfHwge30gfTsKCiAgICAgICAgbXkgJUFjdGlvbkRhdGEgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPkFjdGlvblNldHRpbmdzR2V0KCk7CiAgICAgICAgbXkgJUFjdGlvbkxpc3QgPSBtYXAgeyAoICRfID0+ICRBY3Rpb25EYXRheyRffS0+e0FjdGlvbn0gKSB9IGtleXMgJUFjdGlvbkRhdGE7CgogICAgICAgIG15IEBTb3J0ZWRQcm9qZWN0SURzID0gc29ydCB7ICRQcm9qZWN0TGlzdHskYX0gY21wICRQcm9qZWN0TGlzdHskYn0gfSBrZXlzICVQcm9qZWN0TGlzdDsKICAgICAgICBteSBAU29ydGVkQWN0aW9uSURzICA9IHNvcnQgeyAkQWN0aW9uTGlzdHskYX0gY21wICRBY3Rpb25MaXN0eyRifSB9IGtleXMgJUFjdGlvbkxpc3Q7CgogICAgICAgICMgcmUtc29ydCBwcm9qZWN0cyBkZXBlbmRpbmcgb24gc2VsZWN0ZWQgc2VxdWVuY2UKICAgICAgICBpZiAoCiAgICAgICAgICAgIElzQXJyYXlSZWZXaXRoRGF0YSggJFBhcmFte1ZhbHVlU2VyaWVzfSApCiAgICAgICAgICAgICYmICRQYXJhbXtWYWx1ZVNlcmllc30tPlswXS0+e1NlbGVjdGVkVmFsdWVzfS0+WzBdIGVxICdEb3duJwogICAgICAgICAgICApCiAgICAgICAgewogICAgICAgICAgICBAU29ydGVkUHJvamVjdElEcyA9IHJldmVyc2UgQFNvcnRlZFByb2plY3RJRHM7CiAgICAgICAgfQoKICAgICAgICAjIGl0ZXJhdGUgb3ZlciBzb3J0ZWQgcHJvamVjdCBsaXN0CiAgICAgICAgU09SVEVEUFJPSkVDVElEOgogICAgICAgIGZvciBteSAkU29ydGVkUHJvamVjdElEIChAU29ydGVkUHJvamVjdElEcykgewoKICAgICAgICAgICAgIyBjaGVjayBmb3IgdW5zZWxlY3RlZCBwcm9qZWN0cwogICAgICAgICAgICBpZiAoCiAgICAgICAgICAgICAgICAkUGFyYW17UmVzdHJpY3Rpb25zfS0+e1Byb2plY3R9CiAgICAgICAgICAgICAgICAmJiAhZ3JlcCB7ICRfID09ICRTb3J0ZWRQcm9qZWN0SUQgfSBAeyAkUGFyYW17UmVzdHJpY3Rpb25zfS0+e1Byb2plY3R9IHx8IFtdIH0KICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgbmV4dCBTT1JURURQUk9KRUNUSUQ7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgICMgZ2V0IHRoZSBjdXJyZW50IHByb2plY3QgZGF0YSBvZiBjdXJyZW50IHByb2plY3QKICAgICAgICAgICAgbXkgQFByb2plY3RTdGF0RGF0YSA9IGdyZXAgeyAkXy0+e1Byb2plY3RJRH0gPT0gJFNvcnRlZFByb2plY3RJRCB9IEBSYXdTdGF0QXJyYXk7CgogICAgICAgICAgICAjIGl0ZXJhdGUgb3ZlciBzb3J0ZWQgYWN0aW9uIGxpc3QKICAgICAgICAgICAgU09SVEVEQUNUSU9OSUQ6CiAgICAgICAgICAgIGZvciBteSAkU29ydGVkQWN0aW9uSUQgKEBTb3J0ZWRBY3Rpb25JRHMpIHsKCiAgICAgICAgICAgICAgICAjIGNoZWNrIGZvciB1bnNlbGVjdGVkIGFjdGlvbnMKICAgICAgICAgICAgICAgIGlmICgKICAgICAgICAgICAgICAgICAgICAkUGFyYW17UmVzdHJpY3Rpb25zfS0+e1Byb2plY3RBY3Rpb259CiAgICAgICAgICAgICAgICAgICAgJiYgIWdyZXAgeyAkXyA9PSAkU29ydGVkQWN0aW9uSUQgfSBAeyAkUGFyYW17UmVzdHJpY3Rpb25zfS0+e1Byb2plY3RBY3Rpb259IHx8IFtdIH0KICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgbmV4dCBTT1JURURBQ1RJT05JRDsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAjIGdldCB0aGUgY3VycmVudCBhY3Rpb24gb3V0IG9mIHRoZSBjdXJyZW50IHByb2plY3QKICAgICAgICAgICAgICAgIG15IEBBY3Rpb25TdGF0RGF0YSA9IGdyZXAgeyAkXy0+e0FjdGlvbklEfSA9PSAkU29ydGVkQWN0aW9uSUQgfSBAUHJvamVjdFN0YXREYXRhOwoKICAgICAgICAgICAgICAgIG15IEBSb3dEYXRhOwoKICAgICAgICAgICAgICAgICMgYWRkIGRlc2NyaXB0aXZlIGZpcnN0IGNvbHVtbgogICAgICAgICAgICAgICAgbXkgJFJvd0xhYmVsID0gIiRQcm9qZWN0TGlzdHskU29ydGVkUHJvamVjdElEfTo6JEFjdGlvbkxpc3R7JFNvcnRlZEFjdGlvbklEfSI7CiAgICAgICAgICAgICAgICBwdXNoIEBSb3dEYXRhLCAkUm93TGFiZWw7CgogICAgICAgICAgICAgICAgIyBpdGVyYXRlIG92ZXIgc2VsZWN0ZWQgdXNlcnMKICAgICAgICAgICAgICAgIFVTRVJJRDoKICAgICAgICAgICAgICAgIGZvciBteSAkVXNlcklEIChAVXNlcklEcykgewoKICAgICAgICAgICAgICAgICAgICAjIGF0IGxlYXN0IGdldCAnMCcgZm9yIHVzZXIgZGF0YQogICAgICAgICAgICAgICAgICAgIG15ICRVc2VyUGVyaW9kU3VtID0gMDsKCiAgICAgICAgICAgICAgICAgICAgIyBpdGVyYXRlIG92ZXIgcGVyaW9kIGRhdGEgb2YgdXNlcgogICAgICAgICAgICAgICAgICAgIGZvciBteSAkUGVyaW9kRGF0YSAoIGdyZXAgeyAkXy0+e1VzZXJJRH0gPT0gJFVzZXJJRCB9IEBBY3Rpb25TdGF0RGF0YSApIHsKICAgICAgICAgICAgICAgICAgICAgICAgJFVzZXJQZXJpb2RTdW0gKz0gJFBlcmlvZERhdGEtPntQZXJpb2R9OwogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgIyBzYWZlIHVzZXIgZGF0YSB0byByb3cgZGF0YQogICAgICAgICAgICAgICAgICAgIHB1c2ggQFJvd0RhdGEsICRVc2VyUGVyaW9kU3VtOwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICMgc3RvcmUgY3VycmVudCByb3cgdG8gZ2xvYmFsIHN0YXQgYXJyYXkKICAgICAgICAgICAgICAgIHB1c2ggQFN0YXRBcnJheSwgXEBSb3dEYXRhOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgICMgUHJvamVjdHMgYXMgWC12YWx1ZQogICAgZWxzZSB7CgogICAgICAgICMgcHJvamVjdHMgaGF2ZSBiZWVuIHNlbGVjdGVkIGFzIHgtdmFsdWUKICAgICAgICBteSBAUHJvamVjdElEcyA9IEB7ICRQYXJhbXtYVmFsdWV9LT57U2VsZWN0ZWRWYWx1ZXN9IH07CgogICAgICAgICMgZ2V0IHVzZXIgb2JqZWN0CiAgICAgICAgbXkgJFVzZXJPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VXNlcicpOwoKICAgICAgICAjIHdlIG5lZWQgdG8gZ2V0IGFsbCB1c2VycwogICAgICAgIG15ICVVc2VySURzID0gJFVzZXJPYmplY3QtPlVzZXJMaXN0KAogICAgICAgICAgICBUeXBlICA9PiAnU2hvcnQnLAogICAgICAgICAgICBWYWxpZCA9PiAxLAogICAgICAgICk7CgogICAgICAgIEBVc2VySURzID0ga2V5cyAlVXNlcklEczsKCiAgICAgICAgIyBnZXQgY2FsY3VsYXRlZCBzdGF0cyBkYXRhCiAgICAgICAgbXkgJFN0YXREYXRhID0gJFNlbGYtPl9HZXRTdGF0RGF0YSgKICAgICAgICAgICAgUGFyYW0gICA9PiBcJVBhcmFtLAogICAgICAgICAgICBVc2VySURzID0+IFxAVXNlcklEcywKICAgICAgICApOwoKICAgICAgICAjIGNoZWNrIHN0YXQgZGF0YQogICAgICAgIHJldHVybiBpZiAhJFN0YXREYXRhOwogICAgICAgIHJldHVybiBpZiByZWYgJFN0YXREYXRhIG5lICdBUlJBWSc7CgogICAgICAgIG15IEBSYXdTdGF0QXJyYXkgPSBAeyRTdGF0RGF0YX07CiAgICAgICAgcmV0dXJuIGlmICFAUmF3U3RhdEFycmF5OwoKICAgICAgICAjIGdldCBsaXN0IG9mIG5lZWRlZCBkYXRhCiAgICAgICAgbXkgJVVzZXJMaXN0ID0gJFVzZXJPYmplY3QtPlVzZXJMaXN0KAogICAgICAgICAgICBUeXBlICA9PiAnTG9uZycsCiAgICAgICAgICAgIFZhbGlkID0+IDEsCiAgICAgICAgKTsKCiAgICAgICAgbXkgQFNvcnRlZFVzZXJJRHMgPSBzb3J0IHsgJFVzZXJMaXN0eyRhfSBjbXAgJFVzZXJMaXN0eyRifSB9IGtleXMgJVVzZXJMaXN0OwoKICAgICAgICAjIHJlLXNvcnQgdXNlcnMgZGVwZW5kaW5nIG9uIHNlbGVjdGVkIHNlcXVlbmNlCiAgICAgICAgaWYgKAogICAgICAgICAgICBJc0FycmF5UmVmV2l0aERhdGEoICRQYXJhbXtWYWx1ZVNlcmllc30gKQogICAgICAgICAgICAmJiAkUGFyYW17VmFsdWVTZXJpZXN9LT5bMF0tPntTZWxlY3RlZFZhbHVlc30tPlswXSBlcSAnRG93bicKICAgICAgICAgICAgKQogICAgICAgIHsKICAgICAgICAgICAgQFNvcnRlZFVzZXJJRHMgPSByZXZlcnNlIEBTb3J0ZWRVc2VySURzOwogICAgICAgIH0KCiAgICAgICAgIyBpdGVyYXRlIG92ZXIgc29ydGVkIHVzZXIgbGlzdAogICAgICAgIFNPUlRFRFVTRVJJRDoKICAgICAgICBmb3IgbXkgJFNvcnRlZFVzZXJJRCAoQFNvcnRlZFVzZXJJRHMpIHsKCiAgICAgICAgICAgICMgY2hlY2sgZm9yIHVuc2VsZWN0ZWQgdXNlcnMKICAgICAgICAgICAgaWYgKAogICAgICAgICAgICAgICAgJFBhcmFte1Jlc3RyaWN0aW9uc30tPntVc2VyfQogICAgICAgICAgICAgICAgJiYgIWdyZXAgeyAkXyA9PSAkU29ydGVkVXNlcklEIH0gQHsgJFBhcmFte1Jlc3RyaWN0aW9uc30tPntVc2VyfSB8fCBbXSB9CiAgICAgICAgICAgICAgICApCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIG5leHQgU09SVEVEVVNFUklEOwogICAgICAgICAgICB9CgogICAgICAgICAgICAjIGdldCB0aGUgY3VycmVudCB1c2VyIGRhdGEgb2YgY3VycmVudCB1c2VyCiAgICAgICAgICAgIG15IEBVc2VyU3RhdERhdGEgPSBncmVwIHsgJF8tPntVc2VySUR9ID09ICRTb3J0ZWRVc2VySUQgfSBAUmF3U3RhdEFycmF5OwoKICAgICAgICAgICAgbXkgQFJvd0RhdGE7CgogICAgICAgICAgICAjIGFkZCBkZXNjcmlwdGl2ZSBmaXJzdCBjb2x1bW4KICAgICAgICAgICAgbXkgJFJvd0xhYmVsID0gJFVzZXJMaXN0eyRTb3J0ZWRVc2VySUR9OwogICAgICAgICAgICBwdXNoIEBSb3dEYXRhLCAkUm93TGFiZWw7CgogICAgICAgICAgICAjIGl0ZXJhdGUgb3ZlciBzZWxlY3RlZCBwcm9qZWN0cwogICAgICAgICAgICBQUk9KRUNUSUQ6CiAgICAgICAgICAgIGZvciBteSAkUHJvamVjdElEIChAUHJvamVjdElEcykgewoKICAgICAgICAgICAgICAgICMgYXQgbGVhc3QgZ2V0ICcwJyBmb3IgdXNlciBkYXRhCiAgICAgICAgICAgICAgICBteSAkUHJvamVjdFBlcmlvZFN1bSA9IDA7CgogICAgICAgICAgICAgICAgIyBpdGVyYXRlIG92ZXIgcGVyaW9kIGRhdGEgb2YgdXNlcgogICAgICAgICAgICAgICAgZm9yIG15ICRQZXJpb2REYXRhICggZ3JlcCB7ICRfLT57UHJvamVjdElEfSA9PSAkUHJvamVjdElEIH0gQFVzZXJTdGF0RGF0YSApIHsKICAgICAgICAgICAgICAgICAgICAkUHJvamVjdFBlcmlvZFN1bSArPSAkUGVyaW9kRGF0YS0+e1BlcmlvZH07CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgIyBzYWZlIHVzZXIgZGF0YSB0byByb3cgZGF0YQogICAgICAgICAgICAgICAgcHVzaCBAUm93RGF0YSwgJFByb2plY3RQZXJpb2RTdW07CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgICMgc3RvcmUgY3VycmVudCByb3cgdG8gZ2xvYmFsIHN0YXQgYXJyYXkKICAgICAgICAgICAgcHVzaCBAU3RhdEFycmF5LCBcQFJvd0RhdGE7CiAgICAgICAgfQoKICAgIH0KCiAgICByZXR1cm4gQFN0YXRBcnJheTsKfQoKc3ViIEdldFN0YXRUYWJsZVByZXZpZXcgewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICBteSBAU3RhdEFycmF5OwogICAgbXkgQFVzZXJJRHM7CgogICAgIyBVc2VycyBhcyBYLXZhbHVlCiAgICBpZiAoICRQYXJhbXtYVmFsdWV9LT57RWxlbWVudH0gJiYgJFBhcmFte1hWYWx1ZX0tPntFbGVtZW50fSBlcSAnVXNlcicgKSB7CgogICAgICAgICMgdXNlciBoYXZlIGJlZW4gc2VsZWN0ZWQgYXMgeC12YWx1ZQogICAgICAgIEBVc2VySURzID0gQHsgJFBhcmFte1hWYWx1ZX0tPntTZWxlY3RlZFZhbHVlc30gfTsKCiAgICAgICAgIyBnZXQgdGltZSBhY2NvdW50aW5nIG9iamVjdAogICAgICAgIG15ICRUaW1lQWNjb3VudGluZ09iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycpOwoKICAgICAgICAjIGdldCBsaXN0IG9mIG5lZWRlZCBkYXRhCiAgICAgICAgbXkgJVByb2plY3REYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Qcm9qZWN0U2V0dGluZ3NHZXQoKTsKICAgICAgICBteSAlUHJvamVjdExpc3QgPSAleyAkUHJvamVjdERhdGF7UHJvamVjdH0gfHwge30gfTsKCiAgICAgICAgbXkgJUFjdGlvbkRhdGEgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPkFjdGlvblNldHRpbmdzR2V0KCk7CiAgICAgICAgbXkgJUFjdGlvbkxpc3QgPSBtYXAgeyAoICRfID0+ICRBY3Rpb25EYXRheyRffS0+e0FjdGlvbn0gKSB9IGtleXMgJUFjdGlvbkRhdGE7CgogICAgICAgIG15IEBTb3J0ZWRQcm9qZWN0SURzID0gc29ydCB7ICRQcm9qZWN0TGlzdHskYX0gY21wICRQcm9qZWN0TGlzdHskYn0gfSBrZXlzICVQcm9qZWN0TGlzdDsKICAgICAgICBteSBAU29ydGVkQWN0aW9uSURzICA9IHNvcnQgeyAkQWN0aW9uTGlzdHskYX0gY21wICRBY3Rpb25MaXN0eyRifSB9IGtleXMgJUFjdGlvbkxpc3Q7CgogICAgICAgICMgcmUtc29ydCBwcm9qZWN0cyBkZXBlbmRpbmcgb24gc2VsZWN0ZWQgc2VxdWVuY2UKICAgICAgICBpZiAoCiAgICAgICAgICAgIElzQXJyYXlSZWZXaXRoRGF0YSggJFBhcmFte1ZhbHVlU2VyaWVzfSApCiAgICAgICAgICAgICYmICRQYXJhbXtWYWx1ZVNlcmllc30tPlswXS0+e1NlbGVjdGVkVmFsdWVzfS0+WzBdIGVxICdEb3duJwogICAgICAgICAgICApCiAgICAgICAgewogICAgICAgICAgICBAU29ydGVkUHJvamVjdElEcyA9IHJldmVyc2UgQFNvcnRlZFByb2plY3RJRHM7CiAgICAgICAgfQoKICAgICAgICAjIGl0ZXJhdGUgb3ZlciBzb3J0ZWQgcHJvamVjdCBsaXN0CiAgICAgICAgU09SVEVEUFJPSkVDVElEOgogICAgICAgIGZvciBteSAkU29ydGVkUHJvamVjdElEIChAU29ydGVkUHJvamVjdElEcykgewoKICAgICAgICAgICAgIyBjaGVjayBmb3IgdW5zZWxlY3RlZCBwcm9qZWN0cwogICAgICAgICAgICBpZiAoCiAgICAgICAgICAgICAgICAkUGFyYW17UmVzdHJpY3Rpb25zfS0+e1Byb2plY3R9CiAgICAgICAgICAgICAgICAmJiAhZ3JlcCB7ICRfID09ICRTb3J0ZWRQcm9qZWN0SUQgfSBAeyAkUGFyYW17UmVzdHJpY3Rpb25zfS0+e1Byb2plY3R9IHx8IFtdIH0KICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgbmV4dCBTT1JURURQUk9KRUNUSUQ7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgICMgaXRlcmF0ZSBvdmVyIHNvcnRlZCBhY3Rpb24gbGlzdAogICAgICAgICAgICBTT1JURURBQ1RJT05JRDoKICAgICAgICAgICAgZm9yIG15ICRTb3J0ZWRBY3Rpb25JRCAoQFNvcnRlZEFjdGlvbklEcykgewoKICAgICAgICAgICAgICAgICMgY2hlY2sgZm9yIHVuc2VsZWN0ZWQgYWN0aW9ucwogICAgICAgICAgICAgICAgaWYgKAogICAgICAgICAgICAgICAgICAgICRQYXJhbXtSZXN0cmljdGlvbnN9LT57UHJvamVjdEFjdGlvbn0KICAgICAgICAgICAgICAgICAgICAmJiAhZ3JlcCB7ICRfID09ICRTb3J0ZWRBY3Rpb25JRCB9IEB7ICRQYXJhbXtSZXN0cmljdGlvbnN9LT57UHJvamVjdEFjdGlvbn0gfHwgW10gfQogICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBuZXh0IFNPUlRFREFDVElPTklEOwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIG15IEBSb3dEYXRhOwoKICAgICAgICAgICAgICAgICMgYWRkIGRlc2NyaXB0aXZlIGZpcnN0IGNvbHVtbgogICAgICAgICAgICAgICAgbXkgJFJvd0xhYmVsID0gIiRQcm9qZWN0TGlzdHskU29ydGVkUHJvamVjdElEfTo6JEFjdGlvbkxpc3R7JFNvcnRlZEFjdGlvbklEfSI7CiAgICAgICAgICAgICAgICBwdXNoIEBSb3dEYXRhLCAkUm93TGFiZWw7CgogICAgICAgICAgICAgICAgIyBpdGVyYXRlIG92ZXIgc2VsZWN0ZWQgdXNlcnMKICAgICAgICAgICAgICAgIFVTRVJJRDoKICAgICAgICAgICAgICAgIGZvciBteSAkVXNlcklEIChAVXNlcklEcykgewoKICAgICAgICAgICAgICAgICAgICAjIHNhZmUgdXNlciBkYXRhIHRvIHJvdyBkYXRhCiAgICAgICAgICAgICAgICAgICAgcHVzaCBAUm93RGF0YSwgaW50IHJhbmQgNTA7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgIyBzdG9yZSBjdXJyZW50IHJvdyB0byBnbG9iYWwgc3RhdCBhcnJheQogICAgICAgICAgICAgICAgcHVzaCBAU3RhdEFycmF5LCBcQFJvd0RhdGE7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgIyBQcm9qZWN0cyBhcyBYLXZhbHVlCiAgICBlbHNlIHsKCiAgICAgICAgIyBwcm9qZWN0cyBoYXZlIGJlZW4gc2VsZWN0ZWQgYXMgeC12YWx1ZQogICAgICAgIG15IEBQcm9qZWN0SURzID0gQHsgJFBhcmFte1hWYWx1ZX17U2VsZWN0ZWRWYWx1ZXN9IH07CgogICAgICAgICMgZ2V0IHVzZXIgb2JqZWN0CiAgICAgICAgbXkgJFVzZXJPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VXNlcicpOwoKICAgICAgICAjIHdlIG5lZWQgdG8gZ2V0IGFsbCB1c2VycwogICAgICAgIG15ICVVc2VySURzID0gJFVzZXJPYmplY3QtPlVzZXJMaXN0KAogICAgICAgICAgICBUeXBlICA9PiAnU2hvcnQnLAogICAgICAgICAgICBWYWxpZCA9PiAxLAogICAgICAgICk7CgogICAgICAgIEBVc2VySURzID0ga2V5cyAlVXNlcklEczsKCiAgICAgICAgIyBnZXQgbGlzdCBvZiBuZWVkZWQgZGF0YQogICAgICAgIG15ICVVc2VyTGlzdCA9ICRVc2VyT2JqZWN0LT5Vc2VyTGlzdCgKICAgICAgICAgICAgVHlwZSAgPT4gJ0xvbmcnLAogICAgICAgICAgICBWYWxpZCA9PiAxLAogICAgICAgICk7CgogICAgICAgIG15IEBTb3J0ZWRVc2VySURzID0gc29ydCB7ICRVc2VyTGlzdHskYX0gY21wICRVc2VyTGlzdHskYn0gfSBrZXlzICVVc2VyTGlzdDsKCiAgICAgICAgIyByZS1zb3J0IHVzZXJzIGRlcGVuZGluZyBvbiBzZWxlY3RlZCBzZXF1ZW5jZQogICAgICAgIGlmICgKICAgICAgICAgICAgSXNBcnJheVJlZldpdGhEYXRhKCAkUGFyYW17VmFsdWVTZXJpZXN9ICkKICAgICAgICAgICAgJiYgJFBhcmFte1ZhbHVlU2VyaWVzfS0+WzBdLT57U2VsZWN0ZWRWYWx1ZXN9LT5bMF0gZXEgJ0Rvd24nCiAgICAgICAgICAgICkKICAgICAgICB7CiAgICAgICAgICAgIEBTb3J0ZWRVc2VySURzID0gcmV2ZXJzZSBAU29ydGVkVXNlcklEczsKICAgICAgICB9CgogICAgICAgICMgaXRlcmF0ZSBvdmVyIHNvcnRlZCB1c2VyIGxpc3QKICAgICAgICBTT1JURURVU0VSSUQ6CiAgICAgICAgZm9yIG15ICRTb3J0ZWRVc2VySUQgKEBTb3J0ZWRVc2VySURzKSB7CgogICAgICAgICAgICAjIGNoZWNrIGZvciB1bnNlbGVjdGVkIHVzZXJzCiAgICAgICAgICAgIGlmICgKICAgICAgICAgICAgICAgICRQYXJhbXtSZXN0cmljdGlvbnN9LT57VXNlcn0KICAgICAgICAgICAgICAgICYmICFncmVwIHsgJF8gPT0gJFNvcnRlZFVzZXJJRCB9IEB7ICRQYXJhbXtSZXN0cmljdGlvbnN9LT57VXNlcn0gfHwgW10gfQogICAgICAgICAgICAgICAgKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBuZXh0IFNPUlRFRFVTRVJJRDsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbXkgQFJvd0RhdGE7CgogICAgICAgICAgICAjIGFkZCBkZXNjcmlwdGl2ZSBmaXJzdCBjb2x1bW4KICAgICAgICAgICAgbXkgJFJvd0xhYmVsID0gJFVzZXJMaXN0eyRTb3J0ZWRVc2VySUR9OwogICAgICAgICAgICBwdXNoIEBSb3dEYXRhLCAkUm93TGFiZWw7CgogICAgICAgICAgICAjIGl0ZXJhdGUgb3ZlciBzZWxlY3RlZCBwcm9qZWN0cwogICAgICAgICAgICBQUk9KRUNUSUQ6CiAgICAgICAgICAgIGZvciBteSAkUHJvamVjdElEIChAUHJvamVjdElEcykgewoKICAgICAgICAgICAgICAgICMgc2FmZSB1c2VyIGRhdGEgdG8gcm93IGRhdGEKICAgICAgICAgICAgICAgIHB1c2ggQFJvd0RhdGEsIGludCByYW5kIDUwOwogICAgICAgICAgICB9CgogICAgICAgICAgICAjIHN0b3JlIGN1cnJlbnQgcm93IHRvIGdsb2JhbCBzdGF0IGFycmF5CiAgICAgICAgICAgIHB1c2ggQFN0YXRBcnJheSwgXEBSb3dEYXRhOwogICAgICAgIH0KICAgIH0KCiAgICByZXR1cm4gQFN0YXRBcnJheTsKfQoKc3ViIEV4cG9ydFdyYXBwZXIgewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICAjIGdldCBuZWVkZWQgb2JqZWN0cwogICAgbXkgJFVzZXJPYmplY3QgICAgICAgICAgID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlVzZXInKTsKICAgIG15ICRUaW1lQWNjb3VudGluZ09iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycpOwoKICAgICMgd3JhcCBpZHMgdG8gdXNlZCBzcGVsbGluZwogICAgZm9yIG15ICRVc2UgKHF3KFVzZUFzVmFsdWVTZXJpZXMgVXNlQXNSZXN0cmljdGlvbiBVc2VBc1h2YWx1ZSkpIHsKCiAgICAgICAgRUxFTUVOVDoKICAgICAgICBmb3IgbXkgJEVsZW1lbnQgKCBAeyAkUGFyYW17JFVzZX0gfSApIHsKICAgICAgICAgICAgbmV4dCBFTEVNRU5UIGlmICEkRWxlbWVudDsKICAgICAgICAgICAgbmV4dCBFTEVNRU5UIGlmICEkRWxlbWVudC0+e1NlbGVjdGVkVmFsdWVzfTsKCiAgICAgICAgICAgIG15ICRFbGVtZW50TmFtZSA9ICRFbGVtZW50LT57RWxlbWVudH07CiAgICAgICAgICAgIG15ICRWYWx1ZXMgICAgICA9ICRFbGVtZW50LT57U2VsZWN0ZWRWYWx1ZXN9OwoKICAgICAgICAgICAgaWYgKCAkRWxlbWVudE5hbWUgZXEgJ1VzZXInICkgewoKICAgICAgICAgICAgICAgIElEOgogICAgICAgICAgICAgICAgZm9yIG15ICRJRCAoIEB7JFZhbHVlc30gKSB7CiAgICAgICAgICAgICAgICAgICAgbmV4dCBJRCBpZiAhJElEOwoKICAgICAgICAgICAgICAgICAgICAkSUQtPntDb250ZW50fSA9ICRVc2VyT2JqZWN0LT5Vc2VyTG9va3VwKAogICAgICAgICAgICAgICAgICAgICAgICBVc2VySUQgPT4gJElELT57Q29udGVudH0KICAgICAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2lmICggJEVsZW1lbnROYW1lIGVxICdQcm9qZWN0JyApIHsKCiAgICAgICAgICAgICAgICBJRDoKICAgICAgICAgICAgICAgIGZvciBteSAkSUQgKCBAeyRWYWx1ZXN9ICkgewogICAgICAgICAgICAgICAgICAgIG5leHQgSUQgaWYgISRJRDsKCiAgICAgICAgICAgICAgICAgICAgbXkgJVRtcFByb2plY3REYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Qcm9qZWN0R2V0KAogICAgICAgICAgICAgICAgICAgICAgICBJRCA9PiAkSUQtPntDb250ZW50fQogICAgICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICAgICAgJElELT57Q29udGVudH0gPSAkVG1wUHJvamVjdERhdGF7UHJvamVjdH07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzaWYgKCAkRWxlbWVudE5hbWUgZXEgJ1Byb2plY3RBY3Rpb24nICkgewoKICAgICAgICAgICAgICAgIElEOgogICAgICAgICAgICAgICAgZm9yIG15ICRJRCAoIEB7JFZhbHVlc30gKSB7CiAgICAgICAgICAgICAgICAgICAgbmV4dCBJRCBpZiAhJElEOwoKICAgICAgICAgICAgICAgICAgICBteSAlVG1wQWN0aW9uRGF0YSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+QWN0aW9uR2V0KAogICAgICAgICAgICAgICAgICAgICAgICBJRCA9PiAkSUQtPntDb250ZW50fQogICAgICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICAgICAgJElELT57Q29udGVudH0gPSAkVG1wQWN0aW9uRGF0YXtBY3Rpb259OwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQogICAgcmV0dXJuIFwlUGFyYW07Cn0KCnN1YiBJbXBvcnRXcmFwcGVyIHsKICAgIG15ICggJFNlbGYsICVQYXJhbSApID0gQF87CgogICAgIyBnZXQgbmVlZGVkIG9iamVjdHMKICAgIG15ICRVc2VyT2JqZWN0ICAgICAgICAgICA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpVc2VyJyk7CiAgICBteSAkTG9nT2JqZWN0ICAgICAgICAgICAgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6TG9nJyk7CiAgICBteSAkVGltZUFjY291bnRpbmdPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VGltZUFjY291bnRpbmcnKTsKCiAgICAjIHdyYXAgdXNlZCBzcGVsbGluZyB0byBpZHMKICAgIGZvciBteSAkVXNlIChxdyhVc2VBc1ZhbHVlU2VyaWVzIFVzZUFzUmVzdHJpY3Rpb24gVXNlQXNYdmFsdWUpKSB7CiAgICAgICAgRUxFTUVOVDoKICAgICAgICBmb3IgbXkgJEVsZW1lbnQgKCBAeyAkUGFyYW17JFVzZX0gfSApIHsKICAgICAgICAgICAgbmV4dCBFTEVNRU5UIGlmICEkRWxlbWVudDsKICAgICAgICAgICAgbmV4dCBFTEVNRU5UIGlmICEkRWxlbWVudC0+e1NlbGVjdGVkVmFsdWVzfTsKCiAgICAgICAgICAgIG15ICRFbGVtZW50TmFtZSA9ICRFbGVtZW50LT57RWxlbWVudH07CiAgICAgICAgICAgIG15ICRWYWx1ZXMgICAgICA9ICRFbGVtZW50LT57U2VsZWN0ZWRWYWx1ZXN9OwoKICAgICAgICAgICAgaWYgKCAkRWxlbWVudE5hbWUgZXEgJ1VzZXInICkgewoKICAgICAgICAgICAgICAgIElEOgogICAgICAgICAgICAgICAgZm9yIG15ICRJRCAoIEB7JFZhbHVlc30gKSB7CiAgICAgICAgICAgICAgICAgICAgbmV4dCBJRCBpZiAhJElEOwoKICAgICAgICAgICAgICAgICAgICBteSAkVXNlcklEID0gJFVzZXJPYmplY3QtPlVzZXJMb29rdXAoCiAgICAgICAgICAgICAgICAgICAgICAgIFVzZXJMb2dpbiA9PiAkSUQtPntDb250ZW50fSwKICAgICAgICAgICAgICAgICAgICApOwoKICAgICAgICAgICAgICAgICAgICBpZiAoJFVzZXJJRCkgewogICAgICAgICAgICAgICAgICAgICAgICAkSUQtPntDb250ZW50fSA9ICRVc2VySUQ7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAkTG9nT2JqZWN0LT5Mb2coCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmlvcml0eSA9PiAnZXJyb3InLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgTWVzc2FnZSAgPT4gIkltcG9ydDogQ2FuJyBmaW5kIHRoZSB1c2VyICRJRC0+e0NvbnRlbnR9ISIKICAgICAgICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgICAgICAgICAgJElEID0gdW5kZWY7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2lmICggJEVsZW1lbnROYW1lIGVxICdQcm9qZWN0JyApIHsKCiAgICAgICAgICAgICAgICBJRDoKICAgICAgICAgICAgICAgIGZvciBteSAkSUQgKCBAeyRWYWx1ZXN9ICkgewogICAgICAgICAgICAgICAgICAgIG5leHQgSUQgaWYgISRJRDsKCiAgICAgICAgICAgICAgICAgICAgbXkgJVByb2plY3QgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlByb2plY3RHZXQoCiAgICAgICAgICAgICAgICAgICAgICAgIFByb2plY3QgPT4gJElELT57Q29udGVudH0sCiAgICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgICAgICBpZiAoICRQcm9qZWN0e0lEfSApIHsKICAgICAgICAgICAgICAgICAgICAgICAgJElELT57Q29udGVudH0gPSAkUHJvamVjdHtJRH07CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAkTG9nT2JqZWN0LT5Mb2coCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmlvcml0eSA9PiAnZXJyb3InLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgTWVzc2FnZSAgPT4gIkltcG9ydDogQ2FuJyBmaW5kIHByb2plY3QgJElELT57Q29udGVudH0hIgogICAgICAgICAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgICAgICAgICAkSUQgPSB1bmRlZjsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzaWYgKCAkRWxlbWVudE5hbWUgZXEgJ1Byb2plY3RBY3Rpb24nICkgewogICAgICAgICAgICAgICAgSUQ6CiAgICAgICAgICAgICAgICBmb3IgbXkgJElEICggQHskVmFsdWVzfSApIHsKICAgICAgICAgICAgICAgICAgICBuZXh0IElEIGlmICEkSUQ7CgogICAgICAgICAgICAgICAgICAgIG15ICVBY3Rpb24gPSAkVGltZUFjY291bnRpbmdPYmplY3QtPkFjdGlvbkdldCgKICAgICAgICAgICAgICAgICAgICAgICAgQWN0aW9uID0+ICRJRC0+e0NvbnRlbnR9LAogICAgICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICAgICAgaWYgKCAkQWN0aW9ue0lEfSApIHsKICAgICAgICAgICAgICAgICAgICAgICAgJElELT57Q29udGVudH0gPSAkQWN0aW9ue0lEfTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRMb2dPYmplY3QtPkxvZygKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW9yaXR5ID0+ICdlcnJvcicsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBNZXNzYWdlICA9PiAiSW1wb3J0OiBDYW4nIGZpbmQgYWN0aW9uICRJRC0+e0NvbnRlbnR9ISIKICAgICAgICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgICAgICAgICAgJElEID0gdW5kZWY7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQogICAgcmV0dXJuIFwlUGFyYW07Cn0KCnN1YiBHZXRFeHRlbmRlZFRpdGxlIHsKICAgIG15ICggJFNlbGYsICVQYXJhbSApID0gQF87CgogICAgcmV0dXJuIGlmICRQYXJhbXtSZXN0cmljdGlvbnN9LT57VGltZUFjY291bnRpbmdQZXJpb2RTdGFydH0gfHwgJFBhcmFte1Jlc3RyaWN0aW9uc30tPntUaW1lQWNjb3VudGluZ1BlcmlvZFN0b3B9OwoKICAgIG15ICVEYXRlSW5kZXhUb05hbWUgPSAoCiAgICAgICAgJ1NlY29uZCcgPT4gMCwKICAgICAgICAnTWludXRlJyA9PiAxLAogICAgICAgICdIb3VyJyAgID0+IDIsCiAgICAgICAgJ0RheScgICAgPT4gMywKICAgICAgICAnTW9udGgnICA9PiA0LAogICAgICAgICdZZWFyJyAgID0+IDUsCiAgICApOwoKICAgIG15ICVQcmV2aW91c01vbnRoRGF0ZXMgPSAkU2VsZi0+X0dldFByZXZpb3VzTW9udGhEYXRlcygKICAgICAgICBEYXRlSW5kZXhUb05hbWUgPT4gXCVEYXRlSW5kZXhUb05hbWUsCiAgICApOwoKICAgIG15ICRTdGFydERhdGUgPSBzcHJpbnRmICIlMDRkLSUwMmQtJTAyZCAwMDowMDowMCIsICRQcmV2aW91c01vbnRoRGF0ZXN7TmV3U3RhcnREYXRlfS0+WzBdLAogICAgICAgICRQcmV2aW91c01vbnRoRGF0ZXN7TmV3U3RhcnREYXRlfS0+WzFdLCAkUHJldmlvdXNNb250aERhdGVze05ld1N0YXJ0RGF0ZX0tPlsyXTsKICAgIG15ICRTdG9wRGF0ZSA9IHNwcmludGYgIiUwNGQtJTAyZC0lMDJkIDAwOjAwOjAwIiwgJFByZXZpb3VzTW9udGhEYXRlc3tOZXdTdG9wRGF0ZX0tPlswXSwKICAgICAgICAkUHJldmlvdXNNb250aERhdGVze05ld1N0b3BEYXRlfS0+WzFdLCAkUHJldmlvdXNNb250aERhdGVze05ld1N0b3BEYXRlfS0+WzJdOwoKICAgIHJldHVybiAiJFN0YXJ0RGF0ZS0kU3RvcERhdGUiOwp9CgpzdWIgX0dldFN0YXREYXRhIHsKICAgIG15ICggJFNlbGYsICVQYXJhbSApID0gQF87CgogICAgbXkgQFJldHVybjsKICAgIG15IEBVc2VySURzID0gQHsgJFBhcmFte1VzZXJJRHN9IHx8IFtdIH07CgogICAgbXkgJURhdGVJbmRleFRvTmFtZSA9ICgKICAgICAgICAnU2Vjb25kJyA9PiAwLAogICAgICAgICdNaW51dGUnID0+IDEsCiAgICAgICAgJ0hvdXInICAgPT4gMiwKICAgICAgICAnRGF5JyAgICA9PiAzLAogICAgICAgICdNb250aCcgID0+IDQsCiAgICAgICAgJ1llYXInICAgPT4gNSwKICAgICk7CgogICAgIyBnZXQgdGltZSBhY2NvdW50aW5nIG9iamVjdAogICAgbXkgJFRpbWVBY2NvdW50aW5nT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlRpbWVBY2NvdW50aW5nJyk7CgogICAgIyBsb29waW5nIG92ZXIgYWxsIG9yIHNlbGVjdGVkIHVzZXJzCiAgICBmb3IgbXkgJFVzZXJJRCAoQFVzZXJJRHMpIHsKCiAgICAgICAgbXkgJFN0YXJ0RGF0ZTsKICAgICAgICBteSAkU3RvcERhdGU7CgogICAgICAgICMgY2hlY2sgaWYgdGltZSBwZXJpb2QgaGFzIGJlZW4gc2VsZWN0ZWQKICAgICAgICBpZiAoICRQYXJhbXtQYXJhbX0tPntSZXN0cmljdGlvbnN9LT57VGltZUFjY291bnRpbmdQZXJpb2RTdGFydH0gKSB7CgogICAgICAgICAgICAjIGdldCBVTklYIHRpbWUtc3RhbXAgb2Ygc3RhcnQgYW5kIGVuZCB2YWx1ZXMKICAgICAgICAgICAgJFN0YXJ0RGF0ZSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+VGltZVN0YW1wMlN5c3RlbVRpbWUoCiAgICAgICAgICAgICAgICBTdHJpbmcgPT4gJFBhcmFte1BhcmFtfS0+e1Jlc3RyaWN0aW9uc30tPntUaW1lQWNjb3VudGluZ1BlcmlvZFN0YXJ0fSwKICAgICAgICAgICAgKTsKICAgICAgICAgICAgJFN0b3BEYXRlID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5UaW1lU3RhbXAyU3lzdGVtVGltZSgKICAgICAgICAgICAgICAgIFN0cmluZyA9PiAkUGFyYW17UGFyYW19LT57UmVzdHJpY3Rpb25zfS0+e1RpbWVBY2NvdW50aW5nUGVyaW9kU3RvcH0sCiAgICAgICAgICAgICk7CiAgICAgICAgfQogICAgICAgIGVsc2UgewoKICAgICAgICAgICAgIyBJTVBPUlRBTlQ6CiAgICAgICAgICAgICMgSWYgbm8gdGltZSBwZXJpb2QgaGFkIGJlZW4gc2VsZWN0ZWQgcHJldmlvdXMgbW9udGggd2lsbCBiZSB1c2VkIGFzIHBlcmlvZCEKICAgICAgICAgICAgbXkgJVByZXZpb3VzTW9udGhEYXRlcyA9ICRTZWxmLT5fR2V0UHJldmlvdXNNb250aERhdGVzKAogICAgICAgICAgICAgICAgRGF0ZUluZGV4VG9OYW1lID0+IFwlRGF0ZUluZGV4VG9OYW1lLAogICAgICAgICAgICApOwoKICAgICAgICAgICAgIyBDYWxjdWxhdGUgVU5JWCB0aW1lc3RhbXBzIGZvciBzdGFydCBhbmQgc3RvcCBkYXRlLgogICAgICAgICAgICAkU3RhcnREYXRlID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5EYXRlMlN5c3RlbVRpbWUoCiAgICAgICAgICAgICAgICBZZWFyICAgPT4gJFByZXZpb3VzTW9udGhEYXRlc3tOZXdTdGFydERhdGV9LT5bMF0sCiAgICAgICAgICAgICAgICBNb250aCAgPT4gJFByZXZpb3VzTW9udGhEYXRlc3tOZXdTdGFydERhdGV9LT5bMV0sCiAgICAgICAgICAgICAgICBEYXkgICAgPT4gJFByZXZpb3VzTW9udGhEYXRlc3tOZXdTdGFydERhdGV9LT5bMl0sCiAgICAgICAgICAgICAgICBIb3VyICAgPT4gMCwKICAgICAgICAgICAgICAgIE1pbnV0ZSA9PiAwLAogICAgICAgICAgICAgICAgU2Vjb25kID0+IDAsCiAgICAgICAgICAgICk7CiAgICAgICAgICAgICRTdG9wRGF0ZSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+RGF0ZTJTeXN0ZW1UaW1lKAogICAgICAgICAgICAgICAgWWVhciAgID0+ICRQcmV2aW91c01vbnRoRGF0ZXN7TmV3U3RvcERhdGV9LT5bMF0sCiAgICAgICAgICAgICAgICBNb250aCAgPT4gJFByZXZpb3VzTW9udGhEYXRlc3tOZXdTdG9wRGF0ZX0tPlsxXSwKICAgICAgICAgICAgICAgIERheSAgICA9PiAkUHJldmlvdXNNb250aERhdGVze05ld1N0b3BEYXRlfS0+WzJdLAogICAgICAgICAgICAgICAgSG91ciAgID0+IDIzLAogICAgICAgICAgICAgICAgTWludXRlID0+IDU5LAogICAgICAgICAgICAgICAgU2Vjb25kID0+IDU5LAogICAgICAgICAgICApOwogICAgICAgIH0KCiAgICAgICAgIyBjYWxjdWxhdGUgbnVtYmVyIG9mIGRheXMgd2l0aGluIHRoZSBnaXZlbiByYW5nZQogICAgICAgIG15ICREYXlzID0gaW50KCAoICRTdG9wRGF0ZSAtICRTdGFydERhdGUgKSAvIDg2NDAwICkgKyAxOwoKICAgICAgICBEQVk6CiAgICAgICAgZm9yIG15ICREYXkgKCAwIC4uICREYXlzICkgewoKICAgICAgICAgICAgIyBnZXQgZGF5IHJlbGF0aXZlIHRvIHN0YXJ0IGRhdGUKICAgICAgICAgICAgbXkgJERhdGVPZlBlcmlvZCA9ICRTdGFydERhdGUgKyAkRGF5ICogODY0MDA7CgogICAgICAgICAgICAjIGdldCBuZWVkZWQgZGF0ZSB2YWx1ZXMgb3V0IG9mIHRpbWUtc3RhbXAKICAgICAgICAgICAgbXkgQERhdGVWYWx1ZXMgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlN5c3RlbVRpbWUyRGF0ZSgKICAgICAgICAgICAgICAgIFN5c3RlbVRpbWUgPT4gJERhdGVPZlBlcmlvZCwKICAgICAgICAgICAgKTsKCiAgICAgICAgICAgICMgZ2V0IHdvcmtpbmcgdW5pdCBmb3IgdXNlciBhbmQgZGF5CiAgICAgICAgICAgIG15ICVXb3JraW5nVW5pdCA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+V29ya2luZ1VuaXRzR2V0KAogICAgICAgICAgICAgICAgWWVhciAgID0+ICREYXRlVmFsdWVzWyAkRGF0ZUluZGV4VG9OYW1leydZZWFyJ30gXSwKICAgICAgICAgICAgICAgIE1vbnRoICA9PiAkRGF0ZVZhbHVlc1sgJERhdGVJbmRleFRvTmFtZXsnTW9udGgnfSBdLAogICAgICAgICAgICAgICAgRGF5ICAgID0+ICREYXRlVmFsdWVzWyAkRGF0ZUluZGV4VG9OYW1leydEYXknfSBdLAogICAgICAgICAgICAgICAgVXNlcklEID0+ICRVc2VySUQsCiAgICAgICAgICAgICk7CgogICAgICAgICAgICAjIGV4dHJhY3QgZGV0YWlsZWQgaW5mb3JtYXRpb24KICAgICAgICAgICAgbXkgQERheVdvcmtpbmdVbml0cyA9IEB7ICRXb3JraW5nVW5pdHtXb3JraW5nVW5pdHN9IHx8IFtdIH07CgogICAgICAgICAgICAjIGNoZWNrIGZvciBwcm9qZWN0IHJlc3RyaWN0aW9ucwogICAgICAgICAgICBpZiAoCiAgICAgICAgICAgICAgICAkUGFyYW17UGFyYW19LT57UmVzdHJpY3Rpb25zfS0+e1Byb2plY3R9CiAgICAgICAgICAgICAgICAmJiByZWYgJFBhcmFte1BhcmFtfS0+e1Jlc3RyaWN0aW9uc30tPntQcm9qZWN0fSBlcSAnQVJSQVknCiAgICAgICAgICAgICAgICApCiAgICAgICAgICAgIHsKCiAgICAgICAgICAgICAgICAjIGJ1aWxkIG1hdGNoaW5nIGhhc2ggZm9yIHNlbGVjdGVkIHByb2plY3RzCiAgICAgICAgICAgICAgICBteSAlU2VsZWN0ZWRQcm9qZWN0SURzID0gbWFwIHsgKCAkXyA9PiAxICkgfSBAeyAkUGFyYW17UGFyYW19LT57UmVzdHJpY3Rpb25zfS0+e1Byb2plY3R9IH07CgogICAgICAgICAgICAgICAgIyBmaWx0ZXIgb25seSBzZWxlY3RlZCBwcm9qZWN0cwogICAgICAgICAgICAgICAgbXkgQEZpbHRlcmVkUHJvamVjdFdVcyA9IGdyZXAgewogICAgICAgICAgICAgICAgICAgICRTZWxlY3RlZFByb2plY3RJRHN7ICRfLT57UHJvamVjdElEfSB9CiAgICAgICAgICAgICAgICB9IEBEYXlXb3JraW5nVW5pdHM7CgogICAgICAgICAgICAgICAgQERheVdvcmtpbmdVbml0cyA9IEBGaWx0ZXJlZFByb2plY3RXVXM7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgICMgY2hlY2sgZm9yIHRhc2sgcmVzdHJpY3Rpb25zCiAgICAgICAgICAgIGlmICgKICAgICAgICAgICAgICAgICRQYXJhbXtQYXJhbX0tPntSZXN0cmljdGlvbnN9LT57UHJvamVjdEFjdGlvbn0KICAgICAgICAgICAgICAgICYmIHJlZiAkUGFyYW17UGFyYW19LT57UmVzdHJpY3Rpb25zfS0+e1Byb2plY3RBY3Rpb259IGVxICdBUlJBWScKICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgewoKICAgICAgICAgICAgICAgICMgYnVpbGQgbWF0Y2hpbmcgaGFzaCBmb3Igc2VsZWN0ZWQgYWN0aW9ucwogICAgICAgICAgICAgICAgbXkgJVNlbGVjdGVkQWN0aW9uSURzID0gbWFwIHsgKCAkXyA9PiAxICkgfSBAeyAkUGFyYW17UGFyYW19LT57UmVzdHJpY3Rpb25zfS0+e1Byb2plY3RBY3Rpb259IH07CgogICAgICAgICAgICAgICAgIyBmaWx0ZXIgb25seSBzZWxlY3RlZCBhY3Rpb25zCiAgICAgICAgICAgICAgICBteSBARmlsdGVyZWRBY3Rpb25XVXMgPSBncmVwIHsgJFNlbGVjdGVkQWN0aW9uSURzeyAkXy0+e0FjdGlvbklEfSB9IH0gQERheVdvcmtpbmdVbml0czsKCiAgICAgICAgICAgICAgICBARGF5V29ya2luZ1VuaXRzID0gQEZpbHRlcmVkQWN0aW9uV1VzOwogICAgICAgICAgICB9CgogICAgICAgICAgICAjIGNoZWNrIGZvciB1c2VyIHJlc3RyaWN0aW9ucwogICAgICAgICAgICBpZiAoCiAgICAgICAgICAgICAgICAkUGFyYW17UGFyYW19LT57UmVzdHJpY3Rpb25zfS0+e1VzZXJ9CiAgICAgICAgICAgICAgICAmJiByZWYgJFBhcmFte1BhcmFtfS0+e1Jlc3RyaWN0aW9uc30tPntVc2VyfSBlcSAnQVJSQVknCiAgICAgICAgICAgICAgICApCiAgICAgICAgICAgIHsKCiAgICAgICAgICAgICAgICAjIGJ1aWxkIG1hdGNoaW5nIGhhc2ggZm9yIHNlbGVjdGVkIGFjdGlvbnMKICAgICAgICAgICAgICAgIG15ICVTZWxlY3RlZFVzZXJJRHMgPSBtYXAgeyAoICRfID0+IDEgKSB9IEB7ICRQYXJhbXtQYXJhbX0tPntSZXN0cmljdGlvbnN9LT57VXNlcn0gfTsKCiAgICAgICAgICAgICAgICAjIGZpbHRlciBvbmx5IHNlbGVjdGVkIGFjdGlvbnMKICAgICAgICAgICAgICAgIG15IEBGaWx0ZXJlZFVzZXJXVXMgPSBncmVwIHsgJFNlbGVjdGVkVXNlcklEc3sgJF8tPntVc2VySUR9IH0gfSBARGF5V29ya2luZ1VuaXRzOwoKICAgICAgICAgICAgICAgIEBEYXlXb3JraW5nVW5pdHMgPSBARmlsdGVyZWRVc2VyV1VzOwogICAgICAgICAgICB9CgogICAgICAgICAgICAjIGRvIG5vdCBzdG9yZSBkYXRhIGlmIG5vIGRhdGEgaXMgYXZhaWxhYmxlCiAgICAgICAgICAgIG5leHQgREFZIGlmICFARGF5V29ya2luZ1VuaXRzOwoKICAgICAgICAgICAgIyBhZGQgZGF0YSB0byBnbG9iYWwgcmVzdWx0IHNldAogICAgICAgICAgICBwdXNoIEBSZXR1cm4sIEBEYXlXb3JraW5nVW5pdHM7CiAgICAgICAgfQogICAgfQoKICAgIHJldHVybiBcQFJldHVybjsKfQoKc3ViIF9HZXRQcmV2aW91c01vbnRoRGF0ZXMgewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICBpZiAoICEkUGFyYW17RGF0ZUluZGV4VG9OYW1lfSApIHsKICAgICAgICAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6TG9nJyktPkxvZygKICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICAgICAgTWVzc2FnZSAgPT4gIk5lZWQgRGF0ZUluZGV4VG9OYW1lISIsCiAgICAgICAgKTsKCiAgICAgICAgcmV0dXJuOwogICAgfQoKICAgICMgZ2V0IHRpbWUgYWNjb3VudGluZyBvYmplY3QKICAgIG15ICRUaW1lQWNjb3VudGluZ09iamVjdCAgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VGltZUFjY291bnRpbmcnKTsKICAgIG15ICREYXRlVGltZU9iamVjdEN1cnJlbnQgPSAkS2VybmVsOjpPTS0+Q3JlYXRlKCdLZXJuZWw6OlN5c3RlbTo6RGF0ZVRpbWUnKTsKCiAgICAjIEdldCBjdXJyZW50IGRhdGUgdmFsdWVzLgogICAgbXkgQEN1cnJlbnREYXRlID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5TeXN0ZW1UaW1lMkRhdGUoCiAgICAgICAgU3lzdGVtVGltZSA9PiAkRGF0ZVRpbWVPYmplY3RDdXJyZW50LT5Ub0Vwb2NoKCksCiAgICApOwoKICAgICMgR2V0IGZpcnN0IGRheSBvZiBwcmV2aW91cyBtb250aC4KICAgIG15IEBOZXdTdGFydERhdGUgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPkFkZERlbHRhWU1EKAogICAgICAgICRDdXJyZW50RGF0ZVsgJFBhcmFte0RhdGVJbmRleFRvTmFtZX0tPnsnWWVhcid9IF0sCiAgICAgICAgJEN1cnJlbnREYXRlWyAkUGFyYW17RGF0ZUluZGV4VG9OYW1lfS0+eydNb250aCd9IF0sCiAgICAgICAgIDEsCiAgICAgICAgIDAsCiAgICAgICAgLTEsCiAgICAgICAgIDAsCiAgICApOwoKICAgICMgR2V0IGZpcnN0IGRheSBvZiBuZXh0IG1vbnRoIHJlbGF0aXZlIHRvIHByZXZpb3VzIG1vbnRoLgogICAgbXkgQE5ld1N0b3BEYXRlID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5BZGREZWx0YVlNRCgKICAgICAgICAkTmV3U3RhcnREYXRlWzBdLAogICAgICAgICROZXdTdGFydERhdGVbMV0sCiAgICAgICAgJE5ld1N0YXJ0RGF0ZVsyXSwKICAgICAgICAgMCwKICAgICAgICArMSwKICAgICAgICAgMCwKICAgICk7CgogICAgIyBHZXQgbGFzdCBvZiBkYXkgcHJldmlvdXMgbW9udGguCiAgICBATmV3U3RvcERhdGUgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPkFkZERlbHRhWU1EKAogICAgICAgICROZXdTdG9wRGF0ZVswXSwKICAgICAgICAkTmV3U3RvcERhdGVbMV0sCiAgICAgICAgJE5ld1N0b3BEYXRlWzJdLAogICAgICAgICAwLAogICAgICAgICAwLAogICAgICAgIC0xLAogICAgKTsKCiAgICByZXR1cm4gKAogICAgICAgIE5ld1N0YXJ0RGF0ZSA9PiBcQE5ld1N0YXJ0RGF0ZSwKICAgICAgICBOZXdTdG9wRGF0ZSAgPT4gXEBOZXdTdG9wRGF0ZSwKICAgICk7Cn0KCjE7Cg==</File>
        <File Location="scripts/test/TimeAccounting/DayOfWeekToName.t" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgp1c2Ugc3RyaWN0Owp1c2Ugd2FybmluZ3M7CgpvdXIgJFNlbGY7CgpteSBAVGVzdHMgPSAoCiAgICB7CiAgICAgICAgTmFtZSAgICA9PiAnRW1wdHknLAogICAgICAgIENvbmZpZyAgPT4ge30sCiAgICAgICAgU3VjY2VzcyA9PiAwLAogICAgfSwKICAgIHsKICAgICAgICBOYW1lICAgPT4gJ1dyb25nIERheSAoc3RyaW5nKScsCiAgICAgICAgQ29uZmlnID0+IHsKICAgICAgICAgICAgTnVtYmVyID0+ICdhJywKICAgICAgICB9LAogICAgICAgIFN1Y2Nlc3MgPT4gMCwKICAgIH0sCiAgICB7CiAgICAgICAgTmFtZSAgID0+ICdXcm9uZyBEYXkgKDApJywKICAgICAgICBDb25maWcgPT4gewogICAgICAgICAgICBOdW1iZXIgPT4gMCwKICAgICAgICB9LAogICAgICAgIFN1Y2Nlc3MgPT4gMCwKICAgIH0sCiAgICB7CiAgICAgICAgTmFtZSAgID0+ICdXcm9uZyBEYXkgKC0xKScsCiAgICAgICAgQ29uZmlnID0+IHsKICAgICAgICAgICAgTnVtYmVyID0+IC0xLAogICAgICAgIH0sCiAgICAgICAgU3VjY2VzcyA9PiAwLAogICAgfSwKICAgIHsKICAgICAgICBOYW1lICAgPT4gJ1dyb25nIERheSAoOCknLAogICAgICAgIENvbmZpZyA9PiB7CiAgICAgICAgICAgIE51bWJlciA9PiA4LAogICAgICAgIH0sCiAgICAgICAgU3VjY2VzcyA9PiAwLAogICAgfSwKICAgIHsKICAgICAgICBOYW1lICAgPT4gJ01vbmRheScsCiAgICAgICAgQ29uZmlnID0+IHsKICAgICAgICAgICAgTnVtYmVyID0+IDEsCiAgICAgICAgfSwKICAgICAgICBFeHBlY3RlZFJlc3VsdCA9PiAnTW9uZGF5JywKICAgICAgICBTdWNjZXNzICAgICAgICA9PiAxLAogICAgfSwKICAgIHsKICAgICAgICBOYW1lICAgPT4gJ1R1ZXNkYXknLAogICAgICAgIENvbmZpZyA9PiB7CiAgICAgICAgICAgIE51bWJlciA9PiAyLAogICAgICAgIH0sCiAgICAgICAgRXhwZWN0ZWRSZXN1bHQgPT4gJ1R1ZXNkYXknLAogICAgICAgIFN1Y2Nlc3MgICAgICAgID0+IDEsCiAgICB9LAogICAgewogICAgICAgIE5hbWUgICA9PiAnV2VkbmVzZGF5JywKICAgICAgICBDb25maWcgPT4gewogICAgICAgICAgICBOdW1iZXIgPT4gMywKICAgICAgICB9LAogICAgICAgIEV4cGVjdGVkUmVzdWx0ID0+ICdXZWRuZXNkYXknLAogICAgICAgIFN1Y2Nlc3MgICAgICAgID0+IDEsCiAgICB9LAogICAgewogICAgICAgIE5hbWUgICA9PiAnVGh1cnNkYXknLAogICAgICAgIENvbmZpZyA9PiB7CiAgICAgICAgICAgIE51bWJlciA9PiA0LAogICAgICAgIH0sCiAgICAgICAgRXhwZWN0ZWRSZXN1bHQgPT4gJ1RodXJzZGF5JywKICAgICAgICBTdWNjZXNzICAgICAgICA9PiAxLAogICAgfSwKICAgIHsKICAgICAgICBOYW1lICAgPT4gJ0ZyaWRheScsCiAgICAgICAgQ29uZmlnID0+IHsKICAgICAgICAgICAgTnVtYmVyID0+IDUsCiAgICAgICAgfSwKICAgICAgICBFeHBlY3RlZFJlc3VsdCA9PiAnRnJpZGF5JywKICAgICAgICBTdWNjZXNzICAgICAgICA9PiAxLAogICAgfSwKICAgIHsKICAgICAgICBOYW1lICAgPT4gJ1NhdHVyZGF5JywKICAgICAgICBDb25maWcgPT4gewogICAgICAgICAgICBOdW1iZXIgPT4gNiwKICAgICAgICB9LAogICAgICAgIEV4cGVjdGVkUmVzdWx0ID0+ICdTYXR1cmRheScsCiAgICAgICAgU3VjY2VzcyAgICAgICAgPT4gMSwKICAgIH0sCiAgICB7CiAgICAgICAgTmFtZSAgID0+ICdTdW5kYXknLAogICAgICAgIENvbmZpZyA9PiB7CiAgICAgICAgICAgIE51bWJlciA9PiA3LAogICAgICAgIH0sCiAgICAgICAgRXhwZWN0ZWRSZXN1bHQgPT4gJ1N1bmRheScsCiAgICAgICAgU3VjY2VzcyAgICAgICAgPT4gMSwKICAgIH0sCik7CgpubyB3YXJuaW5ncyAnb25jZSc7ICAgICMjIG5vIGNyaXRpYyBxdyhUZXN0aW5nQW5kRGVidWdnaW5nOjpQcm9oaWJpdE5vV2FybmluZ3MpCm15ICRUaW1lQWNjb3VudGluZ09iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycpOwp1c2Ugd2FybmluZ3M7CgpURVNUOgpmb3IgbXkgJFRlc3QgKEBUZXN0cykgewogICAgbXkgJERheU5hbWUgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPkRheU9mV2Vla1RvTmFtZSggJXsgJFRlc3QtPntDb25maWd9IH0gKTsKCiAgICBpZiAoICEkVGVzdC0+e1N1Y2Nlc3N9ICkgewogICAgICAgICRTZWxmLT5GYWxzZSgKICAgICAgICAgICAgJERheU5hbWUsCiAgICAgICAgICAgICIkVGVzdC0+e05hbWV9IERheU9mV2Vla1RvTmFtZSgpIC0gd2l0aCBmYWxzZSIsCiAgICAgICAgKTsKICAgICAgICBuZXh0IFRFU1Q7CiAgICB9CgogICAgJFNlbGYtPklzKAogICAgICAgICREYXlOYW1lLAogICAgICAgICRUZXN0LT57RXhwZWN0ZWRSZXN1bHR9LAogICAgICAgICIkVGVzdC0+e05hbWV9IERheU9mV2Vla1RvTmFtZSgpIiwKICAgICk7Cn0KCjE7Cg==</File>
        <File Location="scripts/test/TimeAccounting/UpgradeLowerThan5092.t" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjQgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmRlLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgp1c2Ugc3RyaWN0Owp1c2Ugd2FybmluZ3M7CgpvdXIgJFNlbGY7Cgp1c2UgdmFyOjpwYWNrYWdlc2V0dXA6OlRpbWVBY2NvdW50aW5nOwoKbXkgJEhlbHBlciA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpVbml0VGVzdDo6SGVscGVyJyk7CgpteSAkUmFuZG9tR3JvdXAgPSAkSGVscGVyLT5HZXRSYW5kb21JRCgpOwoKbXkgQFRlc3RzID0gKAogICAgewogICAgICAgIE5hbWUgICAgICA9PiAnUmVzdG9yZSBwZXJtaXNzaW9ucyBvZiBBZ2VudFRpbWVBY2NvdW50aW5nRWRpdCBmcm9udGVuZCBtb2R1bGUnLAogICAgICAgIFNldHRpbmdzICA9PiBbJ0Zyb250ZW5kOjpNb2R1bGUjIyNBZ2VudFRpbWVBY2NvdW50aW5nRWRpdCddLAogICAgICAgIE9sZENvbmZpZyA9PiB7CiAgICAgICAgICAgICdGcm9udGVuZDo6TW9kdWxlJyA9PiB7CiAgICAgICAgICAgICAgICAnQWdlbnRUaW1lQWNjb3VudGluZ0VkaXQnID0+IHsKICAgICAgICAgICAgICAgICAgICAnRGVzY3JpcHRpb24nID0+ICdUaW1lIGFjY291bnRpbmcgZWRpdC4nLAogICAgICAgICAgICAgICAgICAgICdHcm91cCcgICAgICAgPT4gWwogICAgICAgICAgICAgICAgICAgICAgICAkUmFuZG9tR3JvdXAsCiAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAnR3JvdXBSbycgPT4gWwogICAgICAgICAgICAgICAgICAgICAgICAkUmFuZG9tR3JvdXAsCiAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAnTmF2QmFyJyA9PiBbCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICdBY2Nlc3NLZXknICAgPT4gJycsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnQmxvY2snICAgICAgID0+ICdJdGVtQXJlYScsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnRGVzY3JpcHRpb24nID0+ICdUaW1lIGFjY291bnRpbmcuJywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICdMaW5rJyAgICAgICAgPT4gJ0FjdGlvbj1BZ2VudFRpbWVBY2NvdW50aW5nRWRpdCcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnTmFtZScgICAgICAgID0+ICdUaW1lIEFjY291bnRpbmcnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ05hdkJhcicgICAgICA9PiAnVGltZUFjY291bnRpbmcnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1ByaW8nICAgICAgICA9PiAnNjAwMCcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnVHlwZScgICAgICAgID0+ICdNZW51JwogICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnQWNjZXNzS2V5JyAgID0+ICcnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0Jsb2NrJyAgICAgICA9PiAnJywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICdEZXNjcmlwdGlvbicgPT4gJ0VkaXQgdGltZSByZWNvcmQuJywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICdHcm91cFJvJyAgICAgPT4gWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRSYW5kb21Hcm91cCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnTGluaycgICA9PiAnQWN0aW9uPUFnZW50VGltZUFjY291bnRpbmdFZGl0JywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICdOYW1lJyAgID0+ICdFZGl0JywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICdOYXZCYXInID0+ICdUaW1lQWNjb3VudGluZycsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnUHJpbycgICA9PiAnMjAwJywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICdUeXBlJyAgID0+ICcnCiAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgIH0sCiAgICAgICAgfSwKICAgIH0sCgogICAgewogICAgICAgIE5hbWUgICAgICAgID0+ICdSZXN0b3JlIHBlcm1pc3Npb25zIG9mIEZyb250ZW5kOjpNb2R1bGUjIyNBZ2VudFRpbWVBY2NvdW50aW5nVmlldyB0byB0aGUgb2xkIGRlZmF1bHRzJywKICAgICAgICBTZXR0aW5ncyAgICA9PiBbJ0Zyb250ZW5kOjpNb2R1bGUjIyNBZ2VudFRpbWVBY2NvdW50aW5nVmlldyddLAogICAgICAgIE9sZENvbmZpZyAgID0+IHt9LAogICAgICAgIE9sZERlZmF1bHRzID0+IHsKICAgICAgICAgICAgJ0Zyb250ZW5kOjpNb2R1bGUnID0+IHsKICAgICAgICAgICAgICAgICdBZ2VudFRpbWVBY2NvdW50aW5nVmlldycgPT4gewogICAgICAgICAgICAgICAgICAgIEdyb3VwICAgPT4gWyd0aW1lX2FjY291bnRpbmcnXSwKICAgICAgICAgICAgICAgICAgICBHcm91cFJvID0+IFsndGltZV9hY2NvdW50aW5nJ10sCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICB9LAogICAgICAgIH0sCiAgICAgICAgQ29uZmlnID0+IHt9LAogICAgfSwKKTsKCm15ICRHZXRDb25maWcgPSBzdWIgewogICAgbXkgJFNvdXJjZSAgICAgID0gc2hpZnQ7CiAgICBteSAkU2V0dGluZ05hbWUgPSBzaGlmdDsKCiAgICBteSAkQ29uZmlnID0gJFNvdXJjZTsKICAgIG15IEBLZXlzICAgPSBzcGxpdCAvIyMjLywgJFNldHRpbmdOYW1lOwogICAgd2hpbGUgKCBteSAkS2V5ID0gc2hpZnQgQEtleXMgKSB7CiAgICAgICAgJENvbmZpZyA9ICRDb25maWctPnskS2V5fTsKICAgIH0KCiAgICByZXR1cm4gJENvbmZpZzsKfTsKCm15ICRDaGVja0dyb3VwR3JvdXBSbyA9IHN1YiB7CiAgICBteSAlUGFyYW0gICAgPSBAXzsKICAgIG15ICRFeHBlY3RlZCA9ICRQYXJhbXtFeHBlY3RlZH07CiAgICBteSAkUmVzdWx0ICAgPSAkUGFyYW17UmVzdWx0fTsKICAgIG15ICRUZXN0TmFtZSA9ICRQYXJhbXtUZXN0TmFtZX07CgogICAgaWYgKCAkRXhwZWN0ZWQtPntHcm91cH0gfHwgJEV4cGVjdGVkLT57R3JvdXBSb30gKSB7CgogICAgICAgICMgQ2hlY2sgZm9yIEtleSBHcm91cCBhbmQgR3JvdXBSby4KICAgICAgICBmb3IgbXkgJEtleSAocXcoR3JvdXAgR3JvdXBSbykpIHsKICAgICAgICAgICAgJFNlbGYtPklzRGVlcGx5KAogICAgICAgICAgICAgICAgJFJlc3VsdC0+eyRLZXl9LAogICAgICAgICAgICAgICAgJEV4cGVjdGVkLT57JEtleX0gLy8gW10sCiAgICAgICAgICAgICAgICAkVGVzdE5hbWUgLiAiLCAnJHsgS2V5IH0nIGZpeGVkISIKICAgICAgICAgICAgKTsKICAgICAgICB9CiAgICB9Cn07CgpteSAkU3lzQ29uZmlnT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlN5c0NvbmZpZycpOwoKVEVTVDoKZm9yIG15ICRUZXN0IChAVGVzdHMpIHsKCiAgICAjIElmIHRoZSBrZXkgJ0NvbmZpZycgZXhpc3RzLCBsZXRzIHNldCB0aGUgbmV3IGNvbmZpZyBiZWZvcmUgZG8gYW55dGhpbmcgZWxzZQogICAgaWYgKCAkVGVzdC0+e0NvbmZpZ30gKSB7CiAgICAgICAgZm9yIG15ICRLZXkgKCBzb3J0IGtleXMgJXsgJFRlc3QtPntDb25maWd9IH0gKSB7CiAgICAgICAgICAgICRIZWxwZXItPkNvbmZpZ1NldHRpbmdDaGFuZ2UoCiAgICAgICAgICAgICAgICBLZXkgICA9PiAkS2V5LAogICAgICAgICAgICAgICAgVmFsdWUgPT4gJFRlc3QtPntDb25maWd9LT57JEtleX0sCiAgICAgICAgICAgICk7CiAgICAgICAgfQogICAgfQoKICAgICMgQ2hlY2sgaWYgaXQgd2FzIHJlc3RvcmVkIHRvIHRoZSBvbGQgY29uZmlnCiAgICBteSAkT2xkQ29uZmlnID0gJFRlc3QtPntPbGRDb25maWd9OwogICAgbG9jYWwgKnZhcjo6cGFja2FnZXNldHVwOjpUaW1lQWNjb3VudGluZzo6X0dldE9UT0JPNUNvbmZpZ0JhY2t1cCA9IHN1YiB7CiAgICAgICAgcmV0dXJuICRPbGRDb25maWc7CiAgICB9OwogICAgdmFyOjpwYWNrYWdlc2V0dXA6OlRpbWVBY2NvdW50aW5nLT5uZXcoKS0+Q29kZVVwZ3JhZGVGcm9tTG93ZXJUaGFuXzVfMF85MigpOwoKICAgICMgQ2hlY2sgaWYgdGhlIG5ldyBjb25maWcgaXMgYWNjb3JkaW5nIHRvIHRoZSBvbGQgb25lLgogICAgbXkgQFNldHRpbmdzID0gQHsgJFRlc3QtPntTZXR0aW5nc30gfTsKICAgIFNFVFRJTkdfTkFNRToKICAgIGZvciBteSAkU2V0dGluZ05hbWUgKEBTZXR0aW5ncykgewogICAgICAgIG15ICRTZXR0aW5nT2xkQ29uZmlnICAgPSAkR2V0Q29uZmlnLT4oICRPbGRDb25maWcsICAgICAgICAgICAkU2V0dGluZ05hbWUgKTsKICAgICAgICBteSAkU2V0dGluZ09sZERlZmF1bHRzID0gJEdldENvbmZpZy0+KCAkVGVzdC0+e09sZERlZmF1bHRzfSwgJFNldHRpbmdOYW1lICk7CiAgICAgICAgbXkgJUNvbmZpZyAgICAgICAgICAgICA9ICRTeXNDb25maWdPYmplY3QtPlNldHRpbmdHZXQoCiAgICAgICAgICAgIE5hbWUgPT4gJFNldHRpbmdOYW1lLAogICAgICAgICk7CiAgICAgICAgbXkgJEVmZmVjdGl2ZVZhbHVlID0gJENvbmZpZ3tFZmZlY3RpdmVWYWx1ZX07CgogICAgICAgICMgSXQncyBub3QgYSBjb21wbGV4IHZhbHVlLCBjaGVjayBvbmx5IGlmIHRoZSB2YWx1ZSB3YXMgcmVzdG9yZWQuCiAgICAgICAgaWYgKCAhKCByZWYgJEVmZmVjdGl2ZVZhbHVlICkgKSB7CiAgICAgICAgICAgICRTZWxmLT5JcygKICAgICAgICAgICAgICAgICRFZmZlY3RpdmVWYWx1ZSwKICAgICAgICAgICAgICAgICRTZXR0aW5nT2xkQ29uZmlnIC8vICRTZXR0aW5nT2xkRGVmYXVsdHMsCiAgICAgICAgICAgICAgICAkVGVzdC0+e05hbWV9CiAgICAgICAgICAgICk7CgogICAgICAgICAgICBuZXh0IFNFVFRJTkdfTkFNRTsKICAgICAgICB9CgogICAgICAgICRDaGVja0dyb3VwR3JvdXBSby0+KAogICAgICAgICAgICBFeHBlY3RlZCA9PiAkU2V0dGluZ09sZENvbmZpZyAvLyAkU2V0dGluZ09sZERlZmF1bHRzLAogICAgICAgICAgICBSZXN1bHQgICA9PiAkRWZmZWN0aXZlVmFsdWUsCiAgICAgICAgICAgIFRlc3ROYW1lID0+ICRUZXN0LT57TmFtZX0sCiAgICAgICAgKTsKCiAgICAgICAgaWYgKCAkU2V0dGluZ09sZENvbmZpZy0+e05hdkJhcn0gfHwgJFNldHRpbmdPbGREZWZhdWx0cy0+e05hdkJhcn0gKSB7CgogICAgICAgICAgICAjIENoZWNrIGZvciBuYXZpZ2F0aW9uIHBlcm1pc3Npb25zLgogICAgICAgICAgICBteSAoIHVuZGVmLCAkRnJvbnRlbmQgKSA9IHNwbGl0IC8jIyMvLCAkU2V0dGluZ05hbWU7CgogICAgICAgICAgICAjIEdldCB0aGUgb2xkIG5hdmlnYXRpb24uCiAgICAgICAgICAgIG15ICRPbGROYXZpZ2F0aW9uID0gJFNldHRpbmdPbGRDb25maWctPntOYXZCYXJ9IC8vICRTZXR0aW5nT2xkRGVmYXVsdHMtPntOYXZCYXJ9OwoKICAgICAgICAgICAgIyBHZXQgdGhlIGN1cnJlbnQgbmF2aWdhdGlvbi4KICAgICAgICAgICAgbXkgJE5ld05hdmlnYXRpb24KICAgICAgICAgICAgICAgID0gJEdldENvbmZpZy0+KCAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OkNvbmZpZycpLCAnRnJvbnRlbmQ6Ok5hdmlnYXRpb24jIyMnIC4gJEZyb250ZW5kICk7CgogICAgICAgICAgICAjIENoZWNrIGlmIHRoZSBwZXJtaXNzaW9uIGlzIHRoZSBzYW1lIGFzIHRoZSBvbGQgb25lLgogICAgICAgICAgICBmb3IgbXkgJEluZGV4ICggc29ydCBrZXlzICV7JE5ld05hdmlnYXRpb259ICkgewogICAgICAgICAgICAgICAgbXkgJE5ld0l0ZW1zID0gJE5ld05hdmlnYXRpb24tPnskSW5kZXh9OwogICAgICAgICAgICAgICAgZm9yIG15ICROZXdJdGVtICggQHskTmV3SXRlbXN9ICkgewogICAgICAgICAgICAgICAgICAgIG15ICRPbGRJdGVtCiAgICAgICAgICAgICAgICAgICAgICAgID0gTGlzdDo6VXRpbDo6Zmlyc3QgeyAkXy0+e05hbWV9IGVxICROZXdJdGVtLT57TmFtZX0gJiYgJF8tPntCbG9ja30gZXEgJE5ld0l0ZW0tPntCbG9ja30gfQogICAgICAgICAgICAgICAgICAgIEB7JE9sZE5hdmlnYXRpb259OwogICAgICAgICAgICAgICAgICAgIG5leHQgTkVXX0lURU0gaWYgISRPbGRJdGVtOwoKICAgICAgICAgICAgICAgICAgICAkQ2hlY2tHcm91cEdyb3VwUm8tPigKICAgICAgICAgICAgICAgICAgICAgICAgRXhwZWN0ZWQgPT4gJE9sZEl0ZW0sCiAgICAgICAgICAgICAgICAgICAgICAgIFJlc3VsdCAgID0+ICROZXdJdGVtLAogICAgICAgICAgICAgICAgICAgICAgICBUZXN0TmFtZSA9PiBzcHJpbnRmKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgJFRlc3QtPntOYW1lfSAuICcgKE5hdmlnYXRpb24gJXMpJywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICROZXdJdGVtLT57TmFtZX0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkTmV3SXRlbS0+e0Jsb2NrfSA/ICctJyAuICROZXdJdGVtLT57QmxvY2t9IDogJycsCiAgICAgICAgICAgICAgICAgICAgICAgICksCiAgICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQoKIyBSZXN0b3JlIGRlZmF1bHQgc2V0dGluZyB2YWx1ZXMgYWZ0ZXIgdGVzdGluZywgc2luY2Ugb3ZlcnJpZGVzIGFyZSBkZXBsb3llZCBmcm9tIGV4dGVybmFsIGNvZGUuCm15IEBTZXR0aW5ncyA9ICgKICAgICdGcm9udGVuZDo6TW9kdWxlIyMjQWdlbnRUaW1lQWNjb3VudGluZ0VkaXQnLAogICAgJ0Zyb250ZW5kOjpNb2R1bGUjIyNBZ2VudFRpbWVBY2NvdW50aW5nT3ZlcnZpZXcnLAogICAgJ0Zyb250ZW5kOjpNb2R1bGUjIyNBZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZycsCiAgICAnRnJvbnRlbmQ6Ok1vZHVsZSMjI0FnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmcnLAogICAgJ0Zyb250ZW5kOjpNb2R1bGUjIyNBZ2VudFRpbWVBY2NvdW50aW5nVmlldycsCiAgICAnRnJvbnRlbmQ6Ok5hdmlnYXRpb24jIyNBZ2VudFRpbWVBY2NvdW50aW5nRWRpdCMjIzAwMi1UaW1lQWNjb3VudGluZycsCiAgICAnRnJvbnRlbmQ6Ok5hdmlnYXRpb24jIyNBZ2VudFRpbWVBY2NvdW50aW5nT3ZlcnZpZXcjIyMwMDItVGltZUFjY291bnRpbmcnLAogICAgJ0Zyb250ZW5kOjpOYXZpZ2F0aW9uIyMjQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcjIyMwMDItVGltZUFjY291bnRpbmcnLAogICAgJ0Zyb250ZW5kOjpOYXZpZ2F0aW9uIyMjQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZyMjIzAwMi1UaW1lQWNjb3VudGluZycsCik7Cgpmb3IgbXkgJFNldHRpbmdOYW1lIChAU2V0dGluZ3MpIHsKICAgIG15ICRFeGNsdXNpdmVMb2NrR1VJRCA9ICRTeXNDb25maWdPYmplY3QtPlNldHRpbmdMb2NrKAogICAgICAgIE5hbWUgICA9PiAkU2V0dGluZ05hbWUsCiAgICAgICAgVXNlcklEID0+IDEsCiAgICApOwogICAgJFNlbGYtPlRydWUoCiAgICAgICAgJEV4Y2x1c2l2ZUxvY2tHVUlELAogICAgICAgICJMb2NrZWQgJFNldHRpbmdOYW1lIgogICAgKTsKCiAgICBteSAkU3VjY2VzcyA9ICRTeXNDb25maWdPYmplY3QtPlNldHRpbmdSZXNldCgKICAgICAgICBOYW1lICAgICAgICAgICAgICA9PiAkU2V0dGluZ05hbWUsCiAgICAgICAgRXhjbHVzaXZlTG9ja0dVSUQgPT4gJEV4Y2x1c2l2ZUxvY2tHVUlELAogICAgICAgIFVzZXJJRCAgICAgICAgICAgID0+IDEsCiAgICApOwogICAgJFNlbGYtPlRydWUoCiAgICAgICAgJFN1Y2Nlc3MsCiAgICAgICAgIlJlc2V0ICRTZXR0aW5nTmFtZSIKICAgICk7Cn0KCm15ICRTdWNjZXNzID0gJFN5c0NvbmZpZ09iamVjdC0+Q29uZmlndXJhdGlvbkRlcGxveSgKICAgIENvbW1lbnRzICAgICAgPT4gJ1VwZ3JhZGVMb3dlclRoYW41MDkyLnQnLAogICAgVXNlcklEICAgICAgICA9PiAxLAogICAgRm9yY2UgICAgICAgICA9PiAxLAogICAgRGlydHlTZXR0aW5ncyA9PiBcQFNldHRpbmdzLAopOwokU2VsZi0+VHJ1ZSgKICAgICRTdWNjZXNzLAogICAgJ1Jlc3RvcmVkIGRlZmF1bHQgY29uZmlndXJhdGlvbicKKTsKCjE7Cg==</File>
        <File Location="scripts/test/TimeAccounting/UserReportingDateCheck.t" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgp1c2Ugc3RyaWN0Owp1c2Ugd2FybmluZ3M7CgojIGRlY2xhcmUgZXh0ZXJuYWxseSBkZWZpbmVkIHZhcmlhYmxlcyB0byBhdm9pZCBlcnJvcnMgdW5kZXIgJ3VzZSBzdHJpY3QnCm91ciAkU2VsZjsKCiMgZ2V0IGhlbHBlciBvYmplY3QKJEtlcm5lbDo6T00tPk9iamVjdFBhcmFtQWRkKAogICAgJ0tlcm5lbDo6U3lzdGVtOjpVbml0VGVzdDo6SGVscGVyJyA9PiB7CiAgICAgICAgUmVzdG9yZURhdGFiYXNlID0+IDEsCiAgICB9LAopOwpteSAkSGVscGVyID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlVuaXRUZXN0OjpIZWxwZXInKTsKCm15ICRVc2VyTG9naW4gPSAkSGVscGVyLT5UZXN0VXNlckNyZWF0ZSgpOwoKbXkgJFVzZXJPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VXNlcicpOwoKbXkgJFVzZXJJRCA9ICRVc2VyT2JqZWN0LT5Vc2VyTG9va3VwKAogICAgVXNlckxvZ2luID0+ICRVc2VyTG9naW4sCik7CgpteSAkVGltZUFjY291bnRpbmdPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VGltZUFjY291bnRpbmcnKTsKCm15ICRTdWNjZXNzID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyU2V0dGluZ3NJbnNlcnQoCiAgICBVc2VySUQgPT4gJFVzZXJJRCwKICAgIFBlcmlvZCA9PiAxLAopOwokU2VsZi0+VHJ1ZSgKICAgICRTdWNjZXNzLAogICAgIlVzZXJTZXR0aW5nc0luc2VydCgpIGZvciB1c2VyICRVc2VySUQiLAopOwoKJFN1Y2Nlc3MgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlVzZXJTZXR0aW5nc1VwZGF0ZSgKICAgIFVzZXJJRCAgICAgICAgPT4gJFVzZXJJRCwKICAgIERlc2NyaXB0aW9uICAgPT4gJ1NvbWUgVGV4dCcsCiAgICBDcmVhdGVQcm9qZWN0ID0+IDEgfHwgMCwKICAgIFNob3dPdmVydGltZSAgPT4gMSB8fCAwLAogICAgUGVyaW9kICAgICAgICA9PiB7CiAgICAgICAgMSA9PiB7CiAgICAgICAgICAgIERhdGVTdGFydCAgID0+ICcyMDE2LTAxLTAxJywKICAgICAgICAgICAgRGF0ZUVuZCAgICAgPT4gJzIwMTYtMTItMzEnLAogICAgICAgICAgICBXZWVrbHlIb3VycyA9PiAnMzgnLAogICAgICAgICAgICBMZWF2ZURheXMgICA9PiAnMjUnLAogICAgICAgICAgICBPdmVydGltZSAgICA9PiAnMzgnLAogICAgICAgICAgICBVc2VyU3RhdHVzICA9PiAxLAogICAgICAgIH0sCiAgICB9LAopOwokU2VsZi0+VHJ1ZSgKICAgICRTdWNjZXNzLAogICAgIlVzZXJTZXR0aW5nc1VwZGF0ZSgpIGZvciB1c2VyICRVc2VySUQiLAopOwoKIyBUaGlzIHVuaXQgdGVzdCBvbmx5IGNoZWNrIHRoYXQgdGhlIGZ1bmN0aW9uIHVzZXMgY29ycmVjdCBkYXRlIHZhbHVlcyBhbmQgaXQgZG9lcyBub3QgYnJlYWsKZm9yIG15ICRNb250aCAoIDEgLi4gMTIgKSB7CiAgICBteSAkTW9udGhTdWNjZXNzID0gMTsKICAgIGZvciBteSAkRGF5ICggMSAuLiAyOCApIHsKICAgICAgICAkU3VjY2VzcyA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+V29ya2luZ1VuaXRzSW5zZXJ0KAogICAgICAgICAgICBZZWFyICAgPT4gJzIwMTYnLAogICAgICAgICAgICBNb250aCAgPT4gJE1vbnRoLAogICAgICAgICAgICBEYXkgICAgPT4gJERheSwKICAgICAgICAgICAgU2ljayAgID0+IDEsCiAgICAgICAgICAgIFVzZXJJRCA9PiAkVXNlcklELAogICAgICAgICk7CiAgICAgICAgaWYgKCAhJFN1Y2Nlc3MgKSB7CiAgICAgICAgICAgICRNb250aFN1Y2Nlc3MgPSAwOwogICAgICAgIH0KICAgIH0KICAgICRTZWxmLT5UcnVlKAogICAgICAgICRTdWNjZXNzLAogICAgICAgICJXb3JraW5nVW5pdHNJbnNlcnQoKSBpbiBtb250aCAkTW9udGggZm9yIHVzZXIgJFVzZXJJRCIsCiAgICApOwp9CgpteSBAVGVzdHMgPSAoCiAgICB7CiAgICAgICAgTmFtZSAgID0+ICcyMDE2LUphbi0xJywKICAgICAgICBDb25maWcgPT4gewogICAgICAgICAgICBZZWFyICA9PiAyMDE2LAogICAgICAgICAgICBNb250aCA9PiAxLAogICAgICAgICAgICBEYXkgICA9PiAxLAogICAgICAgIH0sCiAgICB9LAogICAgewogICAgICAgIE5hbWUgICA9PiAnMjAxNi1GZWItMScsCiAgICAgICAgQ29uZmlnID0+IHsKICAgICAgICAgICAgWWVhciAgPT4gMjAxNiwKICAgICAgICAgICAgTW9udGggPT4gMiwKICAgICAgICAgICAgRGF5ICAgPT4gMSwKICAgICAgICB9LAogICAgfSwKICAgIHsKICAgICAgICBOYW1lICAgPT4gJzIwMTYtT2N0LTEnLAogICAgICAgIENvbmZpZyA9PiB7CiAgICAgICAgICAgIFllYXIgID0+IDIwMTYsCiAgICAgICAgICAgIE1vbnRoID0+IDEwLAogICAgICAgICAgICBEYXkgICA9PiAxLAogICAgICAgIH0sCiAgICB9LAogICAgewogICAgICAgIE5hbWUgICA9PiAnMjAxNi1EZWMtMTInLAogICAgICAgIENvbmZpZyA9PiB7CiAgICAgICAgICAgIFllYXIgID0+IDIwMTYsCiAgICAgICAgICAgIE1vbnRoID0+IDEyLAogICAgICAgICAgICBEYXkgICA9PiAxMiwKICAgICAgICB9LAogICAgfSwKKTsKCmZvciBteSAkVGVzdCAoQFRlc3RzKSB7CgogICAgJEtlcm5lbDo6T00tPk9iamVjdHNEaXNjYXJkKAogICAgICAgIE9iamVjdHMgPT4gWyAnS2VybmVsOjpTeXN0ZW06OlRpbWVBY2NvdW50aW5nJywgXSwKICAgICk7CgogICAgIyBSZWRlZmluZSBWYWNhdGlvbkNoZWNrIGluIG9yZGVyIHRvIGJyZWFrIG9uIGEgd3JvbmcgZGF0ZSAodGhpcyBzaG91bGQgbm90IGhhcHBlbikuCiAgICBubyB3YXJuaW5ncyBxdyggb25jZSByZWRlZmluZSApOyAgICAjIyBubyBjcml0aWMgcXcoVGVzdGluZ0FuZERlYnVnZ2luZzo6UHJvaGliaXROb1dhcm5pbmdzKQogICAgbG9jYWwgKktlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZzo6VmFjYXRpb25DaGVjayA9IHN1YiB7CiAgICAgICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICAgICAgIyBjaGVjayByZXF1aXJlZCBwYXJhbXMKICAgICAgICBmb3IgKHF3KFllYXIgTW9udGggRGF5KSkgewogICAgICAgICAgICBpZiAoICEkUGFyYW17JF99ICkgewogICAgICAgICAgICAgICAgJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkxvZycpLT5Mb2coCiAgICAgICAgICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICAgICAgICAgICAgICBNZXNzYWdlICA9PiAiVmFjYXRpb25DaGVjazogTmVlZCAkXyEiLAogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgbXkgJERhdGVUaW1lT2JqZWN0ID0gJEtlcm5lbDo6T00tPkNyZWF0ZSgKICAgICAgICAgICAgJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScsCiAgICAgICAgICAgIE9iamVjdFBhcmFtcyA9PiB7CiAgICAgICAgICAgICAgICAlUGFyYW0sCiAgICAgICAgICAgICAgICBUaW1lWm9uZSA9PiAkU2VsZi0+e1RpbWVab25lfSwKICAgICAgICAgICAgfSwKICAgICAgICApOwoKICAgICAgICAjIElmIGRhdGUgaXMgd3JvbmcgRGF0ZVRpbWVPYmplY3QgaXMgdW5kZWZpbmVkIGFuZCBpdCBzaG91bGQgYnJlYWsgdW5pdCB0ZXN0IGlmCiAgICAgICAgIyAgIElzVmFjYXRpb25EYXkoKSBpcyBjYWxsZWQsIHRoaXMgaGFwcGVucyBhdCBjZXJ0YWluIHBvaW50IGluIFVzZXJSZXBvcnRpbmcoKS4KCiAgICAgICAgcmV0dXJuICREYXRlVGltZU9iamVjdC0+SXNWYWNhdGlvbkRheSgKICAgICAgICAgICAgQ2FsZW5kYXIgPT4gJFBhcmFte0NhbGVuZGFyfSwKICAgICAgICApOwogICAgfTsKICAgIHVzZSB3YXJuaW5nczsKCiAgICAkVGltZUFjY291bnRpbmdPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VGltZUFjY291bnRpbmcnKTsKCiAgICBteSAlRGF0YSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+VXNlclJlcG9ydGluZyggJXsgJFRlc3QtPntDb25maWd9IH0gKTsKCiAgICAkU2VsZi0+SXNOb3REZWVwbHkoCiAgICAgICAgXCVEYXRhLAogICAgICAgIHt9LAogICAgICAgICIkVGVzdC0+e05hbWV9IFVzZXJSZXBvcnRpbmcoKSByZXR1cm4gdmFsdWUgaXMgbm90IGVtcHR5IgogICAgKTsKfQoxOwo=</File>
        <File Location="scripts/test/TimeAccounting/VacationCheck.t" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgp1c2Ugc3RyaWN0Owp1c2Ugd2FybmluZ3M7CgojIGRlY2xhcmUgZXh0ZXJuYWxseSBkZWZpbmVkIHZhcmlhYmxlcyB0byBhdm9pZCBlcnJvcnMgdW5kZXIgJ3VzZSBzdHJpY3QnCm91ciAkU2VsZjsKCiRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6Q29uZmlnJyktPlNldCgKICAgIEtleSAgID0+ICdUaW1lVmFjYXRpb25EYXlzOjpDYWxlbmRhcjEnLAogICAgVmFsdWUgPT4gewogICAgICAgIDEgPT4gewogICAgICAgICAgICAxID0+ICdOZXcgWWVhclwncyBEYXknCiAgICAgICAgfSwKICAgICAgICAxMiA9PiB7CiAgICAgICAgICAgIDEyID0+ICdCZXN0IGRheSBpbiB3b3JsZCcsCiAgICAgICAgICAgIDI0ID0+ICdDaHJpc3RtYXMgRXZlJywKICAgICAgICAgICAgMjUgPT4gJ0ZpcnN0IENocmlzdG1hcyBEYXknLAogICAgICAgICAgICAyNiA9PiAnU2Vjb25kIENocmlzdG1hcyBEYXknLAogICAgICAgICAgICAzMSA9PiAnTmV3IFllYXJcJ3MgRXZlJwogICAgICAgIH0sCiAgICAgICAgNSA9PiB7CiAgICAgICAgICAgIDEgPT4gJ0ludGVybmF0aW9uYWwgV29ya2Vyc1wnIERheScKICAgICAgICB9LAogICAgfSwKKTsKCm15IEBUZXN0cyA9ICgKICAgIHsKICAgICAgICBOYW1lICAgICAgICAgID0+ICdObyBQYXJhbXMnLAogICAgICAgIENvbmZpZyAgICAgICAgPT4ge30sCiAgICAgICAgRXhwZWN0ZWRWYWx1ZSA9PiAwLAogICAgfSwKICAgIHsKICAgICAgICBOYW1lICAgPT4gJ05vIFllYXInLAogICAgICAgIENvbmZpZyA9PiB7CiAgICAgICAgICAgIE1vbnRoICAgID0+IDEsCiAgICAgICAgICAgIERheSAgICAgID0+IDEsCiAgICAgICAgICAgIENhbGVuZGFyID0+IDEsCiAgICAgICAgfSwKICAgICAgICBFeHBlY3RlZFZhbHVlID0+IDAsCiAgICB9LAogICAgewogICAgICAgIE5hbWUgICA9PiAnTm8gTW9udGgnLAogICAgICAgIENvbmZpZyA9PiB7CiAgICAgICAgICAgIFllYXIgICAgID0+IDIwMTcsCiAgICAgICAgICAgIERheSAgICAgID0+IDEsCiAgICAgICAgICAgIENhbGVuZGFyID0+IDEsCiAgICAgICAgfSwKICAgICAgICBFeHBlY3RlZFZhbHVlID0+IDAsCiAgICB9LAogICAgewogICAgICAgIE5hbWUgICA9PiAnTm8gRGF5JywKICAgICAgICBDb25maWcgPT4gewogICAgICAgICAgICBZZWFyICAgICA9PiAyMDE3LAogICAgICAgICAgICBNb250aCAgICA9PiAxLAogICAgICAgICAgICBDYWxlbmRhciA9PiAxLAogICAgICAgIH0sCiAgICAgICAgRXhwZWN0ZWRWYWx1ZSA9PiAwLAogICAgfSwKICAgIHsKICAgICAgICBOYW1lICAgPT4gJ1dyb25nIERhdGUnLAogICAgICAgIENvbmZpZyA9PiB7CiAgICAgICAgICAgIFllYXIgICAgID0+IDIwMTcsCiAgICAgICAgICAgIE1vbnRoICAgID0+IDIsCiAgICAgICAgICAgIERheSAgICAgID0+IDI5LAogICAgICAgICAgICBDYWxlbmRhciA9PiAxLAogICAgICAgIH0sCiAgICAgICAgRXhwZWN0ZWRWYWx1ZSA9PiAwLAogICAgfSwKICAgIHsKICAgICAgICBOYW1lICAgPT4gJ05vIFZhY2F0aW9uIERheScsCiAgICAgICAgQ29uZmlnID0+IHsKICAgICAgICAgICAgWWVhciAgICAgPT4gMjAxNywKICAgICAgICAgICAgTW9udGggICAgPT4gMiwKICAgICAgICAgICAgRGF5ICAgICAgPT4gMTUsCiAgICAgICAgICAgIENhbGVuZGFyID0+IDEsCiAgICAgICAgfSwKICAgICAgICBFeHBlY3RlZFZhbHVlID0+IDAsCiAgICB9LAogICAgewogICAgICAgIE5hbWUgICA9PiAnVmFjYXRpb24gRGF5IE51bWVyaWMgTW9udGgnLAogICAgICAgIENvbmZpZyA9PiB7CiAgICAgICAgICAgIFllYXIgICAgID0+IDIwMTcsCiAgICAgICAgICAgIE1vbnRoICAgID0+IDEsCiAgICAgICAgICAgIERheSAgICAgID0+IDEsCiAgICAgICAgICAgIENhbGVuZGFyID0+IDEsCiAgICAgICAgfSwKICAgICAgICBFeHBlY3RlZFZhbHVlID0+ICJOZXcgWWVhcidzIERheSIsCiAgICB9LAogICAgewogICAgICAgIE5hbWUgICA9PiAnVmFjYXRpb24gRGF5IFN0cmluZyBNb250aCcsCiAgICAgICAgQ29uZmlnID0+IHsKICAgICAgICAgICAgWWVhciAgICAgPT4gMjAxNywKICAgICAgICAgICAgTW9udGggICAgPT4gJzAxJywKICAgICAgICAgICAgRGF5ICAgICAgPT4gMSwKICAgICAgICAgICAgQ2FsZW5kYXIgPT4gMSwKICAgICAgICB9LAogICAgICAgIEV4cGVjdGVkVmFsdWUgPT4gIk5ldyBZZWFyJ3MgRGF5IiwKICAgIH0sCiAgICB7CiAgICAgICAgTmFtZSAgID0+ICdWYWNhdGlvbiBEYXkgQ3VzdG9tJywKICAgICAgICBDb25maWcgPT4gewogICAgICAgICAgICBZZWFyICAgICA9PiAyMDE3LAogICAgICAgICAgICBNb250aCAgICA9PiAxMiwKICAgICAgICAgICAgRGF5ICAgICAgPT4gMTIsCiAgICAgICAgICAgIENhbGVuZGFyID0+IDEsCiAgICAgICAgfSwKICAgICAgICBFeHBlY3RlZFZhbHVlID0+ICJCZXN0IGRheSBpbiB3b3JsZCIsCiAgICB9Cik7CgpteSAkVGltZUFjY291bnRpbmdPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VGltZUFjY291bnRpbmcnKTsKCmZvciBteSAkVGVzdCAoQFRlc3RzKSB7CgogICAgbXkgJFJlc3VsdCA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+VmFjYXRpb25DaGVjayggJXsgJFRlc3QtPntDb25maWd9IH0gKTsKCiAgICAkU2VsZi0+SXMoCiAgICAgICAgJFJlc3VsdCAvLyAwLAogICAgICAgICRUZXN0LT57RXhwZWN0ZWRWYWx1ZX0sCiAgICAgICAgIiRUZXN0LT57TmFtZX0gVmFjYXRpb25DaGVjaygpIiwKICAgICk7Cgp9CgoxOwo=</File>
        <File Location="scripts/test/TimeAccounting.t" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgp1c2Ugc3RyaWN0Owp1c2Ugd2FybmluZ3M7CgojIGRlY2xhcmUgZXh0ZXJuYWxseSBkZWZpbmVkIHZhcmlhYmxlcyB0byBhdm9pZCBlcnJvcnMgdW5kZXIgJ3VzZSBzdHJpY3QnCm91ciAkU2VsZjsKCiMgZ2V0IGhlbHBlciBvYmplY3QKJEtlcm5lbDo6T00tPk9iamVjdFBhcmFtQWRkKAogICAgJ0tlcm5lbDo6U3lzdGVtOjpVbml0VGVzdDo6SGVscGVyJyA9PiB7CiAgICAgICAgUmVzdG9yZURhdGFiYXNlID0+IDEsCiAgICB9LAopOwpteSAkSGVscGVyID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlVuaXRUZXN0OjpIZWxwZXInKTsKCiMgc2V0IGZpeGVkIHRpbWUKJEhlbHBlci0+Rml4ZWRUaW1lU2V0KAogICAgJEtlcm5lbDo6T00tPkNyZWF0ZSgKICAgICAgICAnS2VybmVsOjpTeXN0ZW06OkRhdGVUaW1lJywKICAgICAgICBPYmplY3RQYXJhbXMgPT4gewogICAgICAgICAgICBTdHJpbmcgPT4gJzIwMTEtMDEtMzEgMjM6NTk6NTknLAogICAgICAgIH0sCiAgICApLT5Ub0Vwb2NoKCksCik7CgpteSAkUmFuZG9tTnVtYmVyID0gaW50IHN1YnN0ciAkSGVscGVyLT5HZXRSYW5kb21OdW1iZXIoKSwgLTUsIDU7CgojIGRhdGEgZm9yIHRoZSBuZXcgYWN0aW9uICh0YXNrKQpteSAlTmV3QWN0aW9uRGF0YSA9ICgKICAgIEFjdGlvbiAgICAgICA9PiAnVGVzdEFjdGlvbicgLiAkUmFuZG9tTnVtYmVyLAogICAgQWN0aW9uU3RhdHVzID0+IDEsCik7CgojIGdldCB0aW1lIGFjY291bnRpbmcgb2JqZWN0Cm15ICRUaW1lQWNjb3VudGluZ09iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycpOwoKIyBjcmVhdGUgYSBuZXcgYWN0aW9uICh0YXNrKQpteSAkSW5zZXJ0ID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5BY3Rpb25TZXR0aW5nc0luc2VydCglTmV3QWN0aW9uRGF0YSk7CgojIHZlcmlmeSB0aGF0IHRoZSBhY3Rpb24gd2FzIHN1Y2Nlc3NmdWxseSBpbnNlcnRlZAokU2VsZi0+VHJ1ZSgKICAgICRJbnNlcnQsCiAgICAnSW5zZXJ0IHRlc3QgYWN0aW9uIHNldHRpbmdzIGludG8gZGF0YWJhc2UnLAopOwoKIyBnZXQgdGhlIGFjdGlvbiBkYXRhIHRoYXQgd2FzIGluc2VydGVkIGFib3ZlCm15ICVBY3Rpb25EYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5BY3Rpb25HZXQoIEFjdGlvbiA9PiAkTmV3QWN0aW9uRGF0YXtBY3Rpb259ICk7CgojIHZlcmlmeSB0aGF0IHRoZSBkYXRhIHNhdmVkIGluIHRoZSBEQiBpcyB0aGUgc2FtZSB0aGF0IHdhcyBpbnNlcnRlZAokU2VsZi0+SXMoCiAgICAkQWN0aW9uRGF0YXtBY3Rpb25TdGF0dXN9LAogICAgJE5ld0FjdGlvbkRhdGF7QWN0aW9uU3RhdHVzfSwKICAgICdDb21wYXJlIGFjdGlvbiBzdGF0dXMgc2F2ZWQgaW4gREIgd2l0aCB0aGUgaW5zZXJ0ZWQgb25lJywKKTsKCiMgbW9kaWZ5IHRoZSBhY3Rpb24gbmFtZQpteSAkVXBkYXRlID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5BY3Rpb25TZXR0aW5nc1VwZGF0ZSgKICAgIEFjdGlvbklEICAgICA9PiAkQWN0aW9uRGF0YXtJRH0sCiAgICBBY3Rpb24gICAgICAgPT4gJE5ld0FjdGlvbkRhdGF7QWN0aW9ufSAuICdtb2RpZmllZCcsCiAgICBBY3Rpb25TdGF0dXMgPT4gMSwKKTsKCiMgdmVyaWZ5IHRoYXQgdGhlIGFjdGlvbiB3YXMgdXBkYXRlZAokU2VsZi0+VHJ1ZSgKICAgICRVcGRhdGUsCiAgICAnVXBkYXRlIHRlc3QgYWN0aW9uIHNldHRpbmdzJywKKTsKCiMgZ2V0IGFsbCBhY3Rpb25zIGRhdGEKbXkgJUFsbEFjdGlvbnMgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPkFjdGlvblNldHRpbmdzR2V0KCk7CgojIHZlcmlmeSB0aGUgbGFzdCBtb2RpZmljYXRpb24KJFNlbGYtPklzKAogICAgJEFsbEFjdGlvbnN7ICRBY3Rpb25EYXRhe0lEfSB9e0FjdGlvbn0sCiAgICAkTmV3QWN0aW9uRGF0YXtBY3Rpb259IC4gJ21vZGlmaWVkJywKICAgICdDb21wYXJlIGFjdGlvbiBuYW1lIHNhdmVkIGluIERCIHdpdGggdGhlIHNwZWNpZmllZCBpbiB0aGUgdXBkYXRlJywKKTsKCiMgZGF0YSBmb3IgdGhlIG5ldyBwcm9qZWN0Cm15ICVOZXdQcm9qZWN0RGF0YSA9ICgKICAgIFByb2plY3QgICAgICAgICAgICA9PiAnVGVzdFByb2plY3QnIC4gJFJhbmRvbU51bWJlciwKICAgIFByb2plY3REZXNjcmlwdGlvbiA9PiAnVGVzdCcsCiAgICBQcm9qZWN0U3RhdHVzICAgICAgPT4gMSwKKTsKCiMgY3JlYXRlIGEgbmV3IHByb2plY3QKbXkgJFByb2plY3RJRCA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+UHJvamVjdFNldHRpbmdzSW5zZXJ0KCVOZXdQcm9qZWN0RGF0YSk7CgojIHZlcmlmeSB0aGF0IHRoZSBhY3Rpb24gd2FzIHN1Y2Nlc3NmdWxseSBpbnNlcnRlZAokU2VsZi0+VHJ1ZSgKICAgICRQcm9qZWN0SUQsCiAgICAnSW5zZXJ0IHRlc3QgcHJvamVjdCBzZXR0aW5ncyBpbnRvIGRhdGFiYXNlJywKKTsKCiMgZ2V0IHRoZSBhY3Rpb24gZGF0YSB0aGF0IHdhcyBpbnNlcnRlZCBhYm92ZQpteSAlUHJvamVjdERhdGEgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlByb2plY3RHZXQoIElEID0+ICRQcm9qZWN0SUQgKTsKCiMgdmVyaWZ5IHRoYXQgdGhlIGRhdGEgc2F2ZWQgaW4gdGhlIERCIGlzIHRoZSBzYW1lIHRoYXQgd2FzIGluc2VydGVkCiRTZWxmLT5JcygKICAgICRQcm9qZWN0RGF0YXtQcm9qZWN0fSwKICAgICROZXdQcm9qZWN0RGF0YXtQcm9qZWN0fSwKICAgICdDb21wYXJlIHByb2plY3QgbmFtZSBzYXZlZCBpbiBEQiB3aXRoIHRoZSBpbnNlcnRlZCBvbmUnLAopOwokU2VsZi0+SXMoCiAgICAkUHJvamVjdERhdGF7UHJvamVjdERlc2NyaXB0aW9ufSwKICAgICROZXdQcm9qZWN0RGF0YXtQcm9qZWN0RGVzY3JpcHRpb259LAogICAgJ0NvbXBhcmUgcHJvamVjdCBkZXNjcmlwdGlvbiBzYXZlZCBpbiBEQiB3aXRoIHRoZSBpbnNlcnRlZCBvbmUnLAopOwokU2VsZi0+SXMoCiAgICAkUHJvamVjdERhdGF7UHJvamVjdFN0YXR1c30sCiAgICAkTmV3UHJvamVjdERhdGF7UHJvamVjdFN0YXR1c30sCiAgICAnQ29tcGFyZSBwcm9qZWN0IHN0YXR1cyBzYXZlZCBpbiBEQiB3aXRoIHRoZSBpbnNlcnRlZCBvbmUnLAopOwoKIyBtb2RpZnkgdGhlIHByb2plY3QgbmFtZQokVXBkYXRlID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Qcm9qZWN0U2V0dGluZ3NVcGRhdGUoCiAgICBJRCAgICAgICAgICAgICAgICAgPT4gJFByb2plY3RJRCwKICAgIFByb2plY3QgICAgICAgICAgICA9PiAkTmV3UHJvamVjdERhdGF7UHJvamVjdH0gLiAnbW9kaWZpZWQnLAogICAgUHJvamVjdERlc2NyaXB0aW9uID0+ICdUZXN0JywKICAgIFByb2plY3RTdGF0dXMgICAgICA9PiAxLAopOwoKIyB2ZXJpZnkgdGhhdCB0aGUgYWN0aW9uIHdhcyB1cGRhdGVkCiRTZWxmLT5UcnVlKAogICAgJFVwZGF0ZSwKICAgICdVcGRhdGUgdGVzdCBwcm9qZWN0IHNldHRpbmdzJywKKTsKCiMgZ2V0IGFsbCBwcm9qZWN0cyBkYXRhCm15ICVBbGxQcm9qZWN0cyA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+UHJvamVjdFNldHRpbmdzR2V0KCBTdGF0dXMgPT4gJ3ZhbGlkJyApOwoKIyB2ZXJpZnkgdGhlIGxhc3QgbW9kaWZpY2F0aW9uCiRTZWxmLT5JcygKICAgICRBbGxQcm9qZWN0c3tQcm9qZWN0fXskUHJvamVjdElEfSwKICAgICROZXdQcm9qZWN0RGF0YXtQcm9qZWN0fSAuICdtb2RpZmllZCcsCiAgICAnQ29tcGFyZSBwcm9qZWN0IG5hbWUgc2F2ZWQgaW4gREIgd2l0aCB0aGUgc3BlY2lmaWVkIGluIHRoZSB1cGRhdGUnLAopOwoKIyBjcmVhdGUgbmV3IHVzZXIKbXkgJFVzZXJMb2dpbiA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpVbml0VGVzdDo6SGVscGVyJyktPlRlc3RVc2VyQ3JlYXRlKCk7Cm15ICRVc2VySUQgICAgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VXNlcicpLT5Vc2VyTG9va3VwKAogICAgVXNlckxvZ2luID0+ICRVc2VyTG9naW4sCik7CgojIG9idGFpbiB0aGUgbGFzdCByZWdpc3RlcmVkIHBlcmlvZCBvZiB0aGUgdGVzdCB1c2VyCm15ICRMYXN0UGVyaW9kTnVtYmVyID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyTGFzdFBlcmlvZE51bWJlckdldCggVXNlcklEID0+ICRVc2VySUQgKSArIDE7CgojIGNyZWF0ZSByZWdpc3RyeSBmb3IgdGhlIG5ldyB1c2VyIGluIFRBCiRJbnNlcnQgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlVzZXJTZXR0aW5nc0luc2VydCgKICAgIFVzZXJJRCA9PiAkVXNlcklELAogICAgUGVyaW9kID0+ICRMYXN0UGVyaW9kTnVtYmVyLAopOwoKIyB2ZXJpZnkgdGhhdCB0aGUgdXNlciB3YXMgc3VjY2Vzc2Z1bGx5IGluc2VydGVkCiRTZWxmLT5UcnVlKAogICAgJEluc2VydCwKICAgICdJbnNlcnQgdGVzdCB1c2VyIHNldHRpbmdzIGludG8gZGF0YWJhc2UnLAopOwoKIyBpbnNlcnQgYW5vdGhlciBwZXJpb2QgZW50cnkgZm9yIHRoZSBzYW1lIHVzZXIKJEluc2VydCA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+VXNlclNldHRpbmdzSW5zZXJ0KAogICAgVXNlcklEID0+ICRVc2VySUQsCiAgICBQZXJpb2QgPT4gJExhc3RQZXJpb2ROdW1iZXIgKyAxLAopOwoKIyB2ZXJpZnkgdGhhdCB0aGUgdXNlciB3YXMgc3VjY2Vzc2Z1bGx5IGluc2VydGVkCiRTZWxmLT5UcnVlKAogICAgJEluc2VydCwKICAgICdJbnNlcnQgdGltZSBwZXJpb2QgZm9yIHRlc3QgdXNlciBzZXR0aW5ncyBpbnRvIGRhdGFiYXNlJywKKTsKCiRSYW5kb21OdW1iZXIgPSBpbnQgc3Vic3RyICRIZWxwZXItPkdldFJhbmRvbU51bWJlcigpLCAtMywgMzsKCiMgdXBkYXRlIHVzZXIgZGF0YQpteSAlVXNlclNldHRpbmdzVXBkYXRlRGF0YSA9ICgKICAgIFVzZXJJRCAgICAgICAgPT4gJFVzZXJJRCwKICAgIERlc2NyaXB0aW9uICAgPT4gJ1Rlc3QgdXNlcicgLiAkUmFuZG9tTnVtYmVyLAogICAgQ3JlYXRlUHJvamVjdCA9PiAxLAogICAgU2hvd092ZXJ0aW1lICA9PiAxLAogICAgQWxsb3dTa2lwICAgICA9PiAxLAogICAgUGVyaW9kICAgICAgICA9PiB7CiAgICAgICAgMSA9PiB7CiAgICAgICAgICAgIERhdGVTdGFydCAgID0+ICcyMDExLTAxLTAxJywKICAgICAgICAgICAgRGF0ZUVuZCAgICAgPT4gJzIwMTEtMDEtMzEnLAogICAgICAgICAgICBXZWVrbHlIb3VycyA9PiAkUmFuZG9tTnVtYmVyLAogICAgICAgICAgICBMZWF2ZURheXMgICA9PiAnMTAnLAogICAgICAgICAgICBPdmVydGltZSAgICA9PiAnMjAnLAogICAgICAgICAgICBVc2VyU3RhdHVzICA9PiAxLAogICAgICAgIH0sCiAgICAgICAgMiA9PiB7CiAgICAgICAgICAgIERhdGVTdGFydCAgID0+ICcyMDExLTAyLTAxJywKICAgICAgICAgICAgRGF0ZUVuZCAgICAgPT4gJzIwMTEtMTItMzEnLAogICAgICAgICAgICBXZWVrbHlIb3VycyA9PiAkUmFuZG9tTnVtYmVyICsgMTAsCiAgICAgICAgICAgIExlYXZlRGF5cyAgID0+ICc1JywKICAgICAgICAgICAgT3ZlcnRpbWUgICAgPT4gJzEwJywKICAgICAgICAgICAgVXNlclN0YXR1cyAgPT4gMSwKICAgICAgICB9LAogICAgfSwKKTsKJFVwZGF0ZSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+VXNlclNldHRpbmdzVXBkYXRlKCVVc2VyU2V0dGluZ3NVcGRhdGVEYXRhKTsKCiMgdmVyaWZ5IHRoYXQgdGhlIGFjdGlvbiB3YXMgdXBkYXRlZAokU2VsZi0+VHJ1ZSgKICAgICRVcGRhdGUsCiAgICAnVXBkYXRlIHRlc3QgdXNlciBzZXR0aW5ncycsCik7CgojIGdldCB1c2VyIHNldHRpbmdzCm15ICVTaW5nbGVVc2VyRGF0YSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+U2luZ2xlVXNlclNldHRpbmdzR2V0KCBVc2VySUQgPT4gJFVzZXJJRCApOwoKIyB2ZXJpZnkgdGhlIGxhc3QgbW9kaWZpY2F0aW9uCiRTZWxmLT5JcygKICAgIGludCAkU2luZ2xlVXNlckRhdGF7MX17V2Vla2x5SG91cnN9LAogICAgJFJhbmRvbU51bWJlciwKICAgICdDb21wYXJlIHdlZWtseSBob3VycyBmb3IgcGVyaW9kIDEgc2F2ZWQgaW4gREIgd2l0aCB0aGUgc3BlY2lmaWVkIGluIHRoZSB1cGRhdGUnLAopOwoKJFNlbGYtPklzKAogICAgaW50ICRTaW5nbGVVc2VyRGF0YXsyfXtXZWVrbHlIb3Vyc30sCiAgICAkUmFuZG9tTnVtYmVyICsgMTAsCiAgICAnQ29tcGFyZSB3ZWVrbHkgaG91cnMgZm9yIHBlcmlvZCAyIHNhdmVkIGluIERCIHdpdGggdGhlIHNwZWNpZmllZCBpbiB0aGUgdXBkYXRlJywKKTsKCiMgZ2V0IHVzZXIgZGF0YQolU2luZ2xlVXNlckRhdGEgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlVzZXJHZXQoIFVzZXJJRCA9PiAkVXNlcklEICk7CgojIGNvbXBhcmUgZGF0YSBzYXZlZCBvbiB0aGUgREIgd2l0aCB0aGUgaW5zZXJ0ZWQgb25lCiRTZWxmLT5JcygKICAgICRTaW5nbGVVc2VyRGF0YXtEZXNjcmlwdGlvbn0sCiAgICAnVGVzdCB1c2VyJyAuICRSYW5kb21OdW1iZXIsCiAgICAnQ29tcGFyZSBkZXNjcmlwdGlvbiBzYXZlZCBvbiB0aGUgREIgd2l0aCB0aGUgc3BlY2lmaWVkIGluIHRoZSBpbnNlcnRpb24nLAopOwoKIyBnZXQgYWxsIHVzZXJzIGRhdGEKbXkgJUFsbFVzZXJzRGF0YSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+VXNlckxpc3QoKTsKCiMgdmVyaWZ5IHRoYXQgdGhlIHRlc3QgdXNlciBpcyBpbiB0aGUgbGlzdAokU2VsZi0+VHJ1ZSgKICAgICRBbGxVc2Vyc0RhdGF7JFVzZXJJRH17RGVzY3JpcHRpb259LAogICAgJ1ZlcmlmeSB0aGUgZXhpc3RlbmNlIG9mIHRoZSB0ZXN0IHVzZXIgaW4gdGhlIGxpc3QnCik7CgojIGdldCBhbGwgcGVyaW9kcyBvZiBkYXRhIG9mIGFsbCB1c2VycwpteSAlQWxsVXNlcnNQZXJpb2REYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyU2V0dGluZ3NHZXQoKTsKCiMgdmVyaWZ5IHRoZSBwZXJpb2QgZGF0YSBvZiB0aGUgdGVzdCB1c2VyCm15ICRDb3JyZWN0VXNlckRhdGEgPQogICAgKAogICAgICAgICRBbGxVc2Vyc1BlcmlvZERhdGF7JFVzZXJJRH17MX17V2Vla2x5SG91cnN9ID09ICRSYW5kb21OdW1iZXIKICAgICAgICAmJiAkQWxsVXNlcnNQZXJpb2REYXRheyRVc2VySUR9ezF9e0xlYXZlRGF5c30gPT0gMTAKICAgICAgICAmJiAkQWxsVXNlcnNQZXJpb2REYXRheyRVc2VySUR9ezF9e092ZXJ0aW1lfSA9PSAyMAogICAgICAgICYmICRBbGxVc2Vyc1BlcmlvZERhdGF7JFVzZXJJRH17MX17VXNlclN0YXR1c30KICAgICAgICAmJiAkQWxsVXNlcnNQZXJpb2REYXRheyRVc2VySUR9ezJ9e1dlZWtseUhvdXJzfSA9PSAkUmFuZG9tTnVtYmVyICsgMTAKICAgICAgICAmJiAkQWxsVXNlcnNQZXJpb2REYXRheyRVc2VySUR9ezJ9e0xlYXZlRGF5c30gPT0gNQogICAgICAgICYmICRBbGxVc2Vyc1BlcmlvZERhdGF7JFVzZXJJRH17Mn17T3ZlcnRpbWV9ID09IDEwCiAgICAgICAgJiYgJEFsbFVzZXJzUGVyaW9kRGF0YXskVXNlcklEfXsyfXtVc2VyU3RhdHVzfQogICAgKSA/IDEgOiAwOwoKJFNlbGYtPlRydWUoCiAgICAkQ29ycmVjdFVzZXJEYXRhLAogICAgJ1ZlcmlmeSB0aGUgcGVyaW9kIGRhdGEgb2YgdGhlIHRlc3QgdXNlciBpbiB0aGUgbGlzdCcKKTsKCiMgZ2V0IGN1cnJlbnQgcGVyaW9kIG9mIHVzZXIKbXkgJVVzZXJDdXJyZW50UGVyaW9kID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyQ3VycmVudFBlcmlvZEdldCgKICAgIFllYXIgID0+ICcyMDExJywKICAgIE1vbnRoID0+ICcwMScsCiAgICBEYXkgICA9PiAnMTUnLAopOwoKIyBjaGVjayB0aGUgcGVyaW9kCiRTZWxmLT5JcygKICAgICRVc2VyQ3VycmVudFBlcmlvZHskVXNlcklEfS0+e1BlcmlvZH0sCiAgICAxLAogICAgJ1ZlcmlmeSBjdXJyZW50IHBlcmlvZCcsCik7CgokU2VsZi0+SXMoCiAgICAkVXNlckN1cnJlbnRQZXJpb2R7JFVzZXJJRH0tPntEYXRlU3RhcnR9LAogICAgJzIwMTEtMDEtMDEnLAogICAgJ1ZlcmlmeSBzdGFydCBkYXRlIG9mIGN1cnJlbnQgcGVyaW9kJywKKTsKCiRTZWxmLT5JcygKICAgICRVc2VyQ3VycmVudFBlcmlvZHskVXNlcklEfS0+e0RhdGVFbmR9LAogICAgJzIwMTEtMDEtMzEnLAogICAgJ1ZlcmlmeSBlbmQgZGF0ZSBvZiBjdXJyZW50IHBlcmlvZCcsCik7CgojIENoZWNrIGZvciBjb21wbGV0ZW5lc3MgLSBzaG91bGQgYmUgb2sgYXMgdXNlciBpcyBub3QgcmVxdWlyZWQgdG8gbG9nIHRpbWVzLgpteSAlV29ya2luZ1VuaXRzQ2hlY2tBbGxvd1NraXAgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPldvcmtpbmdVbml0c0NvbXBsZXRuZXNzQ2hlY2soCiAgICBVc2VySUQgPT4gJFVzZXJJRCwKKTsKJFNlbGYtPkZhbHNlKAogICAgJFdvcmtpbmdVbml0c0NoZWNrQWxsb3dTa2lwe0VuZm9yY2VJbnNlcnR9LAogICAgJ1ZlcmlmeSB1c2VyIHBlcm1pc3Npb24gdG8gc2tpcCBsb2dnaW5nIGVuYWJsZWQnLAopOwoKIyBVcGRhdGUgJ0FsbG93U2tpcCcgZmxhZy4KJFVwZGF0ZSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+VXNlclNldHRpbmdzVXBkYXRlKAogICAgJVVzZXJTZXR0aW5nc1VwZGF0ZURhdGEsCiAgICBBbGxvd1NraXAgPT4gMCwKKTsKCiMgdmVyaWZ5IHRoYXQgdGhlIGFjdGlvbiB3YXMgdXBkYXRlZAokU2VsZi0+VHJ1ZSgKICAgICRVcGRhdGUsCiAgICAnVXBkYXRlIHRlc3QgdXNlciBzZXR0aW5ncycsCik7CgojIENoZWNrIGZvciBjb21wbGV0ZW5lc3MgLSBzaG91bGQgcmV0dXJuIGEgcmVzdWx0IGFzIHVzZXIgaXMgbm93IHJlcXVpcmVkIHRvIGxvZyB0aW1lcy4KbXkgJVdvcmtpbmdVbml0c0NoZWNrTm9BbGxvd1NraXAgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPldvcmtpbmdVbml0c0NvbXBsZXRuZXNzQ2hlY2soCiAgICBVc2VySUQgPT4gJFVzZXJJRCwKKTsKJFNlbGYtPlRydWUoCiAgICAkV29ya2luZ1VuaXRzQ2hlY2tOb0FsbG93U2tpcHtFbmZvcmNlSW5zZXJ0fSwKICAgICdWZXJpZnkgdXNlciBwZXJtaXNzaW9uIHRvIHNraXAgbG9nZ2luZyBkaXNhYmxlZCcsCik7CgojIGhhc2ggd2l0aCB0aGUgd29ya2luZyB1bml0cyBmb3IgSmFuLiAxNHRoLCAyMDExCm15ICVXb3JraW5nVW5pdHMgPSAoCiAgICBZZWFyICAgICAgICAgPT4gJzIwMTEnLAogICAgTW9udGggICAgICAgID0+ICcwMScsCiAgICBEYXkgICAgICAgICAgPT4gJzE0JywKICAgIExlYXZlRGF5ICAgICA9PiAwLAogICAgU2ljayAgICAgICAgID0+IDAsCiAgICBPdmVydGltZSAgICAgPT4gMCwKICAgIFdvcmtpbmdVbml0cyA9PiBbCiAgICAgICAgewogICAgICAgICAgICBQcm9qZWN0SUQgPT4gJFByb2plY3RJRCwKICAgICAgICAgICAgQWN0aW9uSUQgID0+ICRBY3Rpb25EYXRhe0lEfSwKICAgICAgICAgICAgUmVtYXJrICAgID0+ICdNeSBjb21tZW50JywKICAgICAgICAgICAgU3RhcnRUaW1lID0+ICc3OjAwJywKICAgICAgICAgICAgRW5kVGltZSAgID0+ICcxMDowMCcsCiAgICAgICAgICAgIFBlcmlvZCAgICA9PiAzLjAsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICAgIFByb2plY3RJRCA9PiAkUHJvamVjdElELAogICAgICAgICAgICBBY3Rpb25JRCAgPT4gJEFjdGlvbkRhdGF7SUR9LAogICAgICAgICAgICBSZW1hcmsgICAgPT4gJ015IGNvbW1lbnQnLAogICAgICAgICAgICBTdGFydFRpbWUgPT4gJzEzOjAwJywKICAgICAgICAgICAgRW5kVGltZSAgID0+ICcxNTowMCcsCiAgICAgICAgICAgIFBlcmlvZCAgICA9PiAyLjAsCiAgICAgICAgfSwKICAgIF0sCiAgICBVc2VySUQgPT4gJFVzZXJJRCwKKTsKCiMgaW5zZXJ0IHdvcmtpbmcgdW5pdHMgaW4gdGhlIERCCiRJbnNlcnQgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPldvcmtpbmdVbml0c0luc2VydCglV29ya2luZ1VuaXRzKTsKCiMgdmVyaWZ5IHRoYXQgdGhlIHdvcmtpbmcgdW5pdHMgd2VyZSBzdWNjZXNzZnVsbHkgaW5zZXJ0ZWQKJFNlbGYtPlRydWUoCiAgICAkSW5zZXJ0LAogICAgJ0luc2VydCB3b3JraW5nIHVuaXRzIGZvciB0ZXN0IHVzZXIgaW50byBkYXRhYmFzZScsCik7CgojIGdldCBhbGwgZGF5cyB3aXRob3V0IHdvcmtpbmcgdW5pdHMgZW50cnkKbXkgJVdvcmtpbmdVbml0c0NoZWNrID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Xb3JraW5nVW5pdHNDb21wbGV0bmVzc0NoZWNrKAogICAgVXNlcklEID0+ICRVc2VySUQsCik7CgojIHZlcmlmeSB0aGF0IEphbiAxNHRoLCAyMDExIGlzIG5vdCBpbiB0aGUgbGlzdCBvZiBkYXlzIHdpdGhvdXQgZW50cnkKJFNlbGYtPkZhbHNlKAogICAgZGVmaW5lZCAkV29ya2luZ1VuaXRzQ2hlY2t7J0luY29tcGxldGUnfXsnMjAxMSd9eycwMSd9eycxNCd9LAogICAgJ1ZlcmlmeSBjb21wbGV0aW9uIG9mIHdvcmtpbmcgdW5pdHMnCik7CgojIGdldCB3b3JraW5nIHVuaXRzIG9mIGFsbCB1c2VycwpteSAlRGF0YSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+VXNlclJlcG9ydGluZygKICAgIFllYXIgID0+ICcyMDExJywKICAgIE1vbnRoID0+ICcwMScsCiAgICBEYXkgICA9PiAnMTUnLAopOwoKIyB2ZXJpZnkgdGhlIGNvcnJlY3RuZXNzIG9mIHRoZSB3b3JraW5nIHVuaXRzIGZvciB0aGUgdGVzdCB1c2VyCiRTZWxmLT5JcygKICAgICREYXRheyRVc2VySUR9e1dvcmtpbmdIb3Vyc1RvdGFsfSwKICAgIDUsCiAgICAnVmVyaWZ5IG51bWJlciBvZiB3b3JraW5nIGhvdXJzIG9mIHRoZSB0ZXN0IHVzZXInLAopOwoKIyBnZXQgcHJvamVjdHMgaW4gd2hpY2ggdGhlIHRlc3QgdXNlciBoYXMgd29ya2VkIG9uCm15IEBMYXN0UHJvamVjdHMgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPkxhc3RQcm9qZWN0c09mVXNlcigKICAgIFVzZXJJRCA9PiAkVXNlcklELAopOwoKbXkgJFRlc3RQcm9qZWN0RXhpc3RlbmNlOwoKSUQ6CmZvciBteSAkSUQgKEBMYXN0UHJvamVjdHMpIHsKICAgIG5leHQgSUQgaWYgJElEICE9ICRQcm9qZWN0SUQ7CiAgICAkVGVzdFByb2plY3RFeGlzdGVuY2UgPSAxOwp9CgojIHZlcmlmeSB0aGF0IGV4aXN0ZW5jZSBvZiB0aGUgdGVzdCBwcm9qZWN0IGludG8gdGhlIHVzZXIncyBsaXN0CiRTZWxmLT5UcnVlKAogICAgJFRlc3RQcm9qZWN0RXhpc3RlbmNlLAogICAgJ1ZlcmlmeSB0aGF0IGV4aXN0ZW5jZSBvZiB0aGUgdGVzdCBwcm9qZWN0IGludG8gdGhlIHVzZXJcJ3MgbGlzdCcsCik7CgojIGdldCBwcm9qZWN0IC0gYWN0aW9uIHdvcmtpbmcgaG91cnMKbXkgJVByb2plY3RBY3Rpb25Xb3JraW5nSG91cnMgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlByb2plY3RBY3Rpb25SZXBvcnRpbmcoCiAgICBZZWFyICAgPT4gMjAxMSwKICAgIE1vbnRoICA9PiAxLAogICAgVXNlcklEID0+ICRVc2VySUQsCik7CgojIHZlcmlmeSB0b3RhbCByZXBvcnRlZCBob3VycyBmb3IgdGhlIHRlc3QgYWN0aW9uICh0YXNrKSBhbmQgdGVzdCBwcm9qZWN0CiRTZWxmLT5JcygKICAgICRQcm9qZWN0QWN0aW9uV29ya2luZ0hvdXJzeyRQcm9qZWN0SUR9e0FjdGlvbnN9eyAkQWN0aW9uRGF0YXtJRH0gfXtUb3RhbH0sCiAgICAnNScsCiAgICAnVmVyaWZ5IHRvdGFsIHJlcG9ydGVkIGhvdXJzIGZvciB0aGUgdGVzdCBhY3Rpb24gKHRhc2spIGFuZCB0ZXN0IHByb2plY3QnLAopOwoKIyBnZXQgcHJvamVjdCB3b3JraW5nIHVuaXRzCm15IEBQcm9qZWN0SGlzdG9yeUFycmF5ID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Qcm9qZWN0SGlzdG9yeSggUHJvamVjdElEID0+ICRQcm9qZWN0SUQgKTsKCm15ICRUb3RhbEhvdXJzOwoKIyBnZXQgc3VtIG9mIGFsbCB3b3JraW5nIHVuaXQgZm9yIHRoZSB0ZXN0IHByb2plY3QKZm9yIG15ICRQcm9qZWN0IChAUHJvamVjdEhpc3RvcnlBcnJheSkgewogICAgJFRvdGFsSG91cnMgKz0gJFByb2plY3QtPntQZXJpb2R9Owp9CgpteSAkVGVzdFByb2plY3RUb3RhbEhvdXJzID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Qcm9qZWN0VG90YWxIb3VycygKICAgIFByb2plY3RJRCA9PiAkUHJvamVjdElELAopOwoKIyB2ZXJpZnkgdG90YWwgd29ya2luZyB1bml0cyBmb3IgdGhlIHRlc3QgcHJvamVjdAokU2VsZi0+SXMoCiAgICBpbnQgJFRvdGFsSG91cnMsCiAgICBpbnQgJFRlc3RQcm9qZWN0VG90YWxIb3VycywKICAgICdWZXJpZnkgdG90YWwgaG91cnMgb2YgdGVzdCBwcm9qZWN0JywKKTsKCiMgZGVsZXRlIHdvcmtpbmcgdW5pdHMgZm9yIEphbi4gMTV0aCwgMjAxMQpteSAkRGVsZXRlID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Xb3JraW5nVW5pdHNEZWxldGUoCiAgICBZZWFyICAgPT4gJzIwMTEnLAogICAgTW9udGggID0+ICcxJywKICAgIERheSAgICA9PiAnMTUnLAogICAgVXNlcklEID0+ICRVc2VySUQsCik7CgojIHZlcmlmeSB0aGF0IHRoZSB3b3JraW5nIHVuaXRzIHdlcmUgc3VjY2Vzc2Z1bGx5IGRlbGV0ZWQKJFNlbGYtPlRydWUoCiAgICAkRGVsZXRlLAogICAgJ0RlbGV0ZSB3b3JraW5nIHVuaXRzIGZvciB0ZXN0JywKKTsKCiMgZ2V0IHdvcmtpbmcgdW5pdHMgZm9yIEphbi4gMTV0aCwgMjAxMQpteSAlV29ya2luZ1VuaXRzRGF0YSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+V29ya2luZ1VuaXRzR2V0KAogICAgWWVhciAgID0+ICcyMDExJywKICAgIE1vbnRoICA9PiAnMScsCiAgICBEYXkgICAgPT4gJzE1JywKICAgIFVzZXJJRCA9PiAkVXNlcklELAopOwoKIyB2ZXJpZnkgbm9uZXhpc3RlbmNlIG9mIHRoZSBkZWxldGVkIHdvcmtpbmcgdW5pdHMKJFNlbGYtPklzKAogICAgJFdvcmtpbmdVbml0c0RhdGF7VG90YWx9LAogICAgJzAnLAogICAgJ1ZlcmlmeSBub25leGlzdGVuY2Ugb2YgdGhlIGRlbGV0ZWQgd29ya2luZyB1bml0cycsCik7CgojIHNldCB0byBpbnZhbGlkIGFsbCByZWdpc3RyaWVzIHVzZWQgZm9yIHRoZSB0ZXN0cwokVGltZUFjY291bnRpbmdPYmplY3QtPkFjdGlvblNldHRpbmdzVXBkYXRlKAogICAgQWN0aW9uSUQgICAgID0+ICRBY3Rpb25EYXRhe0lEfSwKICAgIEFjdGlvbiAgICAgICA9PiAkTmV3QWN0aW9uRGF0YXtBY3Rpb259IC4gJ21vZGlmaWVkJywKICAgIEFjdGlvblN0YXR1cyA9PiAwLAopOwoKJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Qcm9qZWN0U2V0dGluZ3NVcGRhdGUoCiAgICBJRCAgICAgICAgICAgICAgICAgPT4gJFByb2plY3RJRCwKICAgIFByb2plY3QgICAgICAgICAgICA9PiAkTmV3UHJvamVjdERhdGF7UHJvamVjdH0gLiAnbW9kaWZpZWQnLAogICAgUHJvamVjdERlc2NyaXB0aW9uID0+ICdUZXN0JywKICAgIFByb2plY3RTdGF0dXMgICAgICA9PiAwLAopOwoKJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyU2V0dGluZ3NVcGRhdGUoCiAgICBVc2VySUQgICAgICAgID0+ICRVc2VySUQsCiAgICBEZXNjcmlwdGlvbiAgID0+ICdUZXN0IHVzZXInLAogICAgQ3JlYXRlUHJvamVjdCA9PiAwLAogICAgU2hvd092ZXJ0aW1lICA9PiAwLAogICAgQWxsb3dTa2lwICAgICA9PiAwLAogICAgUGVyaW9kICAgICAgICA9PiB7CiAgICAgICAgMSA9PiB7CiAgICAgICAgICAgIERhdGVTdGFydCAgID0+ICcyMDExLTAxLTAxJywKICAgICAgICAgICAgRGF0ZUVuZCAgICAgPT4gJzIwMTEtMDEtMzEnLAogICAgICAgICAgICBXZWVrbHlIb3VycyA9PiAnNTAnLAogICAgICAgICAgICBMZWF2ZURheXMgICA9PiAnMTAnLAogICAgICAgICAgICBPdmVydGltZSAgICA9PiAnMjAnLAogICAgICAgICAgICBVc2VyU3RhdHVzICA9PiAwLAogICAgICAgIH0sCiAgICAgICAgMiA9PiB7CiAgICAgICAgICAgIERhdGVTdGFydCAgID0+ICcyMDExLTAyLTAxJywKICAgICAgICAgICAgRGF0ZUVuZCAgICAgPT4gJzIwMTEtMDItMjgnLAogICAgICAgICAgICBXZWVrbHlIb3VycyA9PiAnMzAnLAogICAgICAgICAgICBMZWF2ZURheXMgICA9PiAnNScsCiAgICAgICAgICAgIE92ZXJ0aW1lICAgID0+ICcxMCcsCiAgICAgICAgICAgIFVzZXJTdGF0dXMgID0+IDAsCiAgICAgICAgfSwKICAgIH0sCik7CgojIGNsZWFudXAgaXMgZG9uZSBieSBSZXN0b3JlRGF0YWJhc2UuCgoxOwo=</File>
        <File Location="scripts/test/Selenium/Agent/AgentTimeAccountingEdit.t" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgp1c2Ugc3RyaWN0Owp1c2Ugd2FybmluZ3M7CnVzZSB1dGY4OwoKb3VyICRTZWxmOwoKbXkgJFNlbGVuaXVtID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlVuaXRUZXN0OjpTZWxlbml1bScpOwoKJFNlbGVuaXVtLT5SdW5UZXN0KAogICAgc3ViIHsKCiAgICAgICAgbXkgJEhlbHBlciAgICAgICAgICAgICAgID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlVuaXRUZXN0OjpIZWxwZXInKTsKICAgICAgICBteSAkVGltZUFjY291bnRpbmdPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VGltZUFjY291bnRpbmcnKTsKCiAgICAgICAgIyBVc2UgYSBjYWxlbmRhciB3aXRoIHRoZSBzYW1lIGJ1c2luZXNzIGhvdXJzIGZvciBldmVyeSBkYXkgc28gdGhhdCB0aGUgVVQgcnVucyBjb3JyZWN0bHkKICAgICAgICAjIG9uIGV2ZXJ5IGRheSBvZiB0aGUgd2VlayBhbmQgb3V0c2lkZSB1c3VhbCBidXNpbmVzcyBob3Vycy4KICAgICAgICBteSAlV2VlazsKICAgICAgICBteSBARGF5cyA9IHF3KFN1biBNb24gVHVlIFdlZCBUaHUgRnJpIFNhdCk7CiAgICAgICAgZm9yIG15ICREYXkgKEBEYXlzKSB7CiAgICAgICAgICAgICRXZWVreyREYXl9ID0gWyAwIC4uIDIzIF07CiAgICAgICAgfQogICAgICAgICRIZWxwZXItPkNvbmZpZ1NldHRpbmdDaGFuZ2UoCiAgICAgICAgICAgIEtleSAgID0+ICdUaW1lV29ya2luZ0hvdXJzJywKICAgICAgICAgICAgVmFsdWUgPT4gXCVXZWVrLAogICAgICAgICk7CgogICAgICAgICMgRGlzYWJsZSBkZWZhdWx0IFZhY2F0aW9uIGRheXMuCiAgICAgICAgJEhlbHBlci0+Q29uZmlnU2V0dGluZ0NoYW5nZSgKICAgICAgICAgICAgS2V5ICAgPT4gJ1RpbWVWYWNhdGlvbkRheXMnLAogICAgICAgICAgICBWYWx1ZSA9PiB7fSwKICAgICAgICApOwoKICAgICAgICAjIERpc2FibGUgTWFzc0VudHJ5IGZlYXR1cmVzLgogICAgICAgICRIZWxwZXItPkNvbmZpZ1NldHRpbmdDaGFuZ2UoCiAgICAgICAgICAgIFZhbGlkID0+IDEsCiAgICAgICAgICAgIEtleSAgID0+ICdUaW1lQWNjb3VudGluZzo6QWxsb3dNYXNzRW50cnlGb3JVc2VyJywKICAgICAgICAgICAgVmFsdWUgPT4gMCwKICAgICAgICApOwoKICAgICAgICAjIENyZWF0ZSB0ZXN0IHVzZXIuCiAgICAgICAgbXkgJFRlc3RVc2VyTG9naW4gPSAkSGVscGVyLT5UZXN0VXNlckNyZWF0ZSgKICAgICAgICAgICAgR3JvdXBzID0+IFsgJ2FkbWluJywgJ3VzZXJzJyBdLAogICAgICAgICkgfHwgZGllICJEaWQgbm90IGdldCB0ZXN0IHVzZXIiOwoKICAgICAgICAjIEdldCB0ZXN0IHVzZXIgSUQuCiAgICAgICAgbXkgJFRlc3RVc2VySUQgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VXNlcicpLT5Vc2VyTG9va3VwKAogICAgICAgICAgICBVc2VyTG9naW4gPT4gJFRlc3RVc2VyTG9naW4sCiAgICAgICAgKTsKCiAgICAgICAgIyBJbnNlcnQgdGVzdCB1c2VyIGludG8gYWNjb3VudCBzZXR0aW5nLgogICAgICAgICRUaW1lQWNjb3VudGluZ09iamVjdC0+VXNlclNldHRpbmdzSW5zZXJ0KAogICAgICAgICAgICBVc2VySUQgPT4gJFRlc3RVc2VySUQsCiAgICAgICAgICAgIFBlcmlvZCA9PiAnMScsCiAgICAgICAgKTsKCiAgICAgICAgbXkgJERhdGVUaW1lT2JqZWN0ICAgPSAkS2VybmVsOjpPTS0+Q3JlYXRlKCdLZXJuZWw6OlN5c3RlbTo6RGF0ZVRpbWUnKTsKICAgICAgICBteSAkRGF0ZVRpbWVTZXR0aW5ncyA9ICREYXRlVGltZU9iamVjdC0+R2V0KCk7CgogICAgICAgIG15ICRZZWFyQ3VycmVudCAgPSAkRGF0ZVRpbWVTZXR0aW5ncy0+e1llYXJ9OwogICAgICAgIG15ICRNb250aEN1cnJlbnQgPSAkRGF0ZVRpbWVTZXR0aW5ncy0+e01vbnRofTsKICAgICAgICBteSAkRGF5Q3VycmVudCAgID0gJERhdGVUaW1lU2V0dGluZ3MtPntEYXl9OwoKICAgICAgICAjIFVwZGF0ZSB1c2VyIHRpbWUgYWNjb3VudCBzZXR0aW5nLgogICAgICAgICRUaW1lQWNjb3VudGluZ09iamVjdC0+VXNlclNldHRpbmdzVXBkYXRlKAogICAgICAgICAgICBVc2VySUQgICAgICAgID0+ICRUZXN0VXNlcklELAogICAgICAgICAgICBEZXNjcmlwdGlvbiAgID0+ICdTZWxlbml1bSB0ZXN0IGFjY291bnRpbmcgdXNlcicsCiAgICAgICAgICAgIENyZWF0ZVByb2plY3QgPT4gMSwKICAgICAgICAgICAgU2hvd092ZXJ0aW1lICA9PiAxLAogICAgICAgICAgICBQZXJpb2QgICAgICAgID0+IHsKICAgICAgICAgICAgICAgIDEgPT4gewogICAgICAgICAgICAgICAgICAgIERhdGVTdGFydCAgID0+ICIkWWVhckN1cnJlbnQtJE1vbnRoQ3VycmVudC0kRGF5Q3VycmVudCIsCiAgICAgICAgICAgICAgICAgICAgRGF0ZUVuZCAgICAgPT4gIiRZZWFyQ3VycmVudC0kTW9udGhDdXJyZW50LSREYXlDdXJyZW50IiwKICAgICAgICAgICAgICAgICAgICBXZWVrbHlIb3VycyA9PiAnMzgnLAogICAgICAgICAgICAgICAgICAgIExlYXZlRGF5cyAgID0+ICcyNScsCiAgICAgICAgICAgICAgICAgICAgT3ZlcnRpbWUgICAgPT4gJzM4JywKICAgICAgICAgICAgICAgICAgICBVc2VyU3RhdHVzICA9PiAxLAogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgfSwKICAgICAgICApOwoKICAgICAgICAjIENyZWF0ZSB0ZXN0IHByb2plY3QuCiAgICAgICAgbXkgJFByb2plY3RUaXRsZSA9ICdQcm9qZWN0ICcgLiAkSGVscGVyLT5HZXRSYW5kb21JRCgpOwogICAgICAgIG15ICRQcm9qZWN0SUQgICAgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlByb2plY3RTZXR0aW5nc0luc2VydCgKICAgICAgICAgICAgUHJvamVjdCAgICAgICAgICAgID0+ICRQcm9qZWN0VGl0bGUsCiAgICAgICAgICAgIFByb2plY3REZXNjcmlwdGlvbiA9PiAnU2VsZW5pdW0gdGVzdCBwcm9qZWN0JywKICAgICAgICAgICAgUHJvamVjdFN0YXR1cyAgICAgID0+IDEsCiAgICAgICAgKTsKCiAgICAgICAgIyBDcmVhdGUgdGVzdCBhY3Rpb24uCiAgICAgICAgbXkgJEFjdGlvblRpdGxlID0gJ0FjdGlvbiAnIC4gJEhlbHBlci0+R2V0UmFuZG9tSUQoKTsKICAgICAgICAkVGltZUFjY291bnRpbmdPYmplY3QtPkFjdGlvblNldHRpbmdzSW5zZXJ0KAogICAgICAgICAgICBBY3Rpb24gICAgICAgPT4gJEFjdGlvblRpdGxlLAogICAgICAgICAgICBBY3Rpb25TdGF0dXMgPT4gMSwKICAgICAgICApOwogICAgICAgIG15ICVBY3Rpb25EYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5BY3Rpb25HZXQoCiAgICAgICAgICAgIEFjdGlvbiA9PiAkQWN0aW9uVGl0bGUsCiAgICAgICAgKTsKICAgICAgICBteSAkQWN0aW9uSUQgPSAkQWN0aW9uRGF0YXtJRH07CgogICAgICAgICMgTG9naW4gYXMgdGVzdCB1c2VyLgogICAgICAgICRTZWxlbml1bS0+TG9naW4oCiAgICAgICAgICAgIFR5cGUgICAgID0+ICdBZ2VudCcsCiAgICAgICAgICAgIFVzZXIgICAgID0+ICRUZXN0VXNlckxvZ2luLAogICAgICAgICAgICBQYXNzd29yZCA9PiAkVGVzdFVzZXJMb2dpbiwKICAgICAgICApOwoKICAgICAgICBteSAkU2NyaXB0QWxpYXMgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OkNvbmZpZycpLT5HZXQoJ1NjcmlwdEFsaWFzJyk7CgogICAgICAgICMgTmF2aWdhdGUgdG8gQWdlbnRUaW1lQWNjb3VudGluZ0VkaXQuCiAgICAgICAgJFNlbGVuaXVtLT5WZXJpZmllZEdldCgiJHtTY3JpcHRBbGlhc31pbmRleC5wbD9BY3Rpb249QWdlbnRUaW1lQWNjb3VudGluZ0VkaXQiKTsKCiAgICAgICAgJFNlbGVuaXVtLT5XYWl0Rm9yKAogICAgICAgICAgICBKYXZhU2NyaXB0ID0+ICdyZXR1cm4gdHlwZW9mKCQpID09PSAiZnVuY3Rpb24iICYmICQoIiNSZWNvcmRzTnVtYmVyIikubGVuZ3RoOycKICAgICAgICApOwoKICAgICAgICAjIEFkZCBhZGRpdGlvbmFsIHJvdy4KICAgICAgICBteSAkUmVjb3Jkc051bWJlciAgICAgPSAkU2VsZW5pdW0tPmV4ZWN1dGVfc2NyaXB0KCdyZXR1cm4gcGFyc2VJbnQoJCgiI1JlY29yZHNOdW1iZXIiKS52YWwoKSwgMTApOycpOwogICAgICAgIG15ICROZXh0UmVjb3Jkc051bWJlciA9ICRSZWNvcmRzTnVtYmVyICsgMTsKCiAgICAgICAgJFNlbGVuaXVtLT5leGVjdXRlX3NjcmlwdCgKICAgICAgICAgICAgIlwkKFwiI01vcmVJbnB1dEZpZWxkc1wiKVswXS5zY3JvbGxJbnRvVmlldyh0cnVlKTsiLAogICAgICAgICk7CiAgICAgICAgJFNlbGVuaXVtLT5XYWl0Rm9yalF1ZXJ5RXZlbnRCb3VuZCgKICAgICAgICAgICAgQ1NTU2VsZWN0b3IgPT4gIiNNb3JlSW5wdXRGaWVsZHMiLAogICAgICAgICk7CiAgICAgICAgJFNlbGVuaXVtLT5maW5kX2VsZW1lbnQoICIjTW9yZUlucHV0RmllbGRzIiwgJ2NzcycgKS0+Y2xpY2soKTsKCiAgICAgICAgJFNlbGVuaXVtLT5XYWl0Rm9yKAogICAgICAgICAgICBKYXZhU2NyaXB0ID0+ICJyZXR1cm4gXCQoJyNSZWNvcmRzTnVtYmVyJykudmFsKCkgPT0gJE5leHRSZWNvcmRzTnVtYmVyOyIKICAgICAgICApOwogICAgICAgICRTZWxlbml1bS0+V2FpdEZvcigKICAgICAgICAgICAgSmF2YVNjcmlwdCA9PiAicmV0dXJuIFwkKCcjSW5zZXJ0V29ya2luZ0hvdXJzIHRyLldvcmtpbmdIb3VycycpLmxlbmd0aCA9PSAkTmV4dFJlY29yZHNOdW1iZXI7IgogICAgICAgICk7CgogICAgICAgICMgQ2hlY2sgdGltZSBhY2NvdW50aW5nIGVkaXQgZmllbGQgSURzLCBmaXJzdCBhbmQgYWRkZWQgcm93LgogICAgICAgIGZvciBteSAkUm93ICggMSwgJE5leHRSZWNvcmRzTnVtYmVyICkgewogICAgICAgICAgICBmb3IgbXkgJEVkaXRGaWVsZElEICgKICAgICAgICAgICAgICAgIHF3KFByb2plY3RJRCBBY3Rpb25JRCBSZW1hcmsgU3RhcnRUaW1lIEVuZFRpbWUgUGVyaW9kKQogICAgICAgICAgICAgICAgKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAkU2VsZi0+VHJ1ZSgKICAgICAgICAgICAgICAgICAgICAkU2VsZW5pdW0tPmV4ZWN1dGVfc2NyaXB0KCJyZXR1cm4gXCQoJyMkRWRpdEZpZWxkSUQkUm93JykubGVuZ3RoOyIpLAogICAgICAgICAgICAgICAgICAgICJFbGVtZW50ICcjJEVkaXRGaWVsZElEJFJvdycgaXMgZm91bmQgaW4gc2NyZWVuIiwKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZm9yIG15ICRFZGl0UmVzdElEICgKICAgICAgICAgICAgcXcoTW9udGggRGF5IFllYXIgRGF5RGF0ZXBpY2tlckljb24gTmF2aWdhdGlvblNlbGVjdCBJbmNvbXBsZXRlV29ya2luZ0RheXNMaXN0IExlYXZlRGF5IFNpY2sgT3ZlcnRpbWUpCiAgICAgICAgICAgICkKICAgICAgICB7CiAgICAgICAgICAgICRTZWxmLT5UcnVlKAogICAgICAgICAgICAgICAgJFNlbGVuaXVtLT5leGVjdXRlX3NjcmlwdCgicmV0dXJuIFwkKCcjJEVkaXRSZXN0SUQnKS5sZW5ndGg7IiksCiAgICAgICAgICAgICAgICAiRWxlbWVudCAnIyRFZGl0UmVzdElEJyBpcyBmb3VuZCBpbiBzY3JlZW4iLAogICAgICAgICAgICApOwogICAgICAgIH0KCiAgICAgICAgIyBFZGl0IHRpbWUgYWNjb3VudGluZyBmb3IgdGVzdCBjcmVhdGVkIHVzZXIuCiAgICAgICAgJFNlbGVuaXVtLT5JbnB1dEZpZWxkVmFsdWVTZXQoCiAgICAgICAgICAgIEVsZW1lbnQgPT4gJyNQcm9qZWN0SUQxJywKICAgICAgICAgICAgVmFsdWUgICA9PiAkUHJvamVjdElELAogICAgICAgICk7CgogICAgICAgICRTZWxlbml1bS0+SW5wdXRGaWVsZFZhbHVlU2V0KAogICAgICAgICAgICBFbGVtZW50ID0+ICcjQWN0aW9uSUQxJywKICAgICAgICAgICAgVmFsdWUgICA9PiAkQWN0aW9uSUQsCiAgICAgICAgKTsKCiAgICAgICAgJFNlbGVuaXVtLT5maW5kX2VsZW1lbnQoICIjUmVtYXJrMSIsICAgICdjc3MnICktPnNlbmRfa2V5cygnU2VsZW5pdW0gdGVzdCByZW1hcmsnKTsKICAgICAgICAkU2VsZW5pdW0tPmZpbmRfZWxlbWVudCggIiNTdGFydFRpbWUxIiwgJ2NzcycgKS0+c2VuZF9rZXlzKCcxMDowMCcpOwogICAgICAgICRTZWxlbml1bS0+ZmluZF9lbGVtZW50KCAiI0VuZFRpbWUxIiwgICAnY3NzJyApLT5zZW5kX2tleXMoICcxNjowMCcsICJcdCIgKTsKCiAgICAgICAgIyBTdWJtaXQgd29yayBhY2NvdW50aW5nIGVkaXQgdGltZSByZWNvcmQuCiAgICAgICAgJFNlbGVuaXVtLT5maW5kX2VsZW1lbnQoIi8vYnV0dG9uW1xAdmFsdWU9J1N1Ym1pdCddW1xAdHlwZT0nc3VibWl0J10iKS0+VmVyaWZpZWRDbGljaygpOwoKICAgICAgICAjIFZlcmlmeSB0aGF0IHBlcmlvZCBjYWxjdWxhdGUgY29ycmVjdCB0aW1lLgogICAgICAgICRTZWxmLT5JcygKICAgICAgICAgICAgJFNlbGVuaXVtLT5maW5kX2VsZW1lbnQoICIjUGVyaW9kMSIsICdjc3MnICktPmdldF92YWx1ZSgpLAogICAgICAgICAgICAnNi4wMCcsCiAgICAgICAgICAgICJQZXJpb2QgdGltZSBjb3JyZWN0bHkgY2FsY3VsYXRlZCIsCiAgICAgICAgKTsKCiAgICAgICAgIyBWZXJpZnkgc3VibWl0IG1lc3NhZ2UuCiAgICAgICAgbXkgJFN1Ym1pdE1lc3NhZ2UgPSAnU3VjY2Vzc2Z1bCBpbnNlcnQhJzsKICAgICAgICAkU2VsZi0+VHJ1ZSgKICAgICAgICAgICAgaW5kZXgoICRTZWxlbml1bS0+Z2V0X3BhZ2Vfc291cmNlKCksICRTdWJtaXRNZXNzYWdlICkgPiAtMSwKICAgICAgICAgICAgIiRTdWJtaXRNZXNzYWdlIGlzIGZvdW5kIiwKICAgICAgICApOwoKICAgICAgICAjIENoZWNrIGlmIEFnZW50IGhhdmUgYWNjZXNzIHRvIE5hdmJhci4gU2VlIGJ1ZyMxMzQ2Ni4KICAgICAgICAjIE5hdmlnYXRlIHRvIEFnZW50VGltZUFjY291bnRpbmdTZXR0aW5nLgogICAgICAgICRTZWxlbml1bS0+VmVyaWZpZWRHZXQoCiAgICAgICAgICAgICIke1NjcmlwdEFsaWFzfWluZGV4LnBsP0FjdGlvbj1BZ2VudFRpbWVBY2NvdW50aW5nU2V0dGluZztTdWJhY3Rpb249RWRpdFVzZXI7VXNlcklEPSRUZXN0VXNlcklEIgogICAgICAgICk7CgogICAgICAgICMgU3VidHJhY3QgMTAgZGF5cyBmcm9tIGN1cnJlbnQgZGF0ZS4KICAgICAgICBteSAkSW50ZXJ2YWwgPSAxMDsKICAgICAgICAkRGF0ZVRpbWVPYmplY3QtPlN1YnRyYWN0KCBEYXlzID0+ICRJbnRlcnZhbCApOwogICAgICAgIG15ICRZZWFyU3RhcnQgPSAkRGF0ZVRpbWVPYmplY3QtPkZvcm1hdCgKICAgICAgICAgICAgRm9ybWF0ID0+ICclWScsCiAgICAgICAgKTsKICAgICAgICBteSAkTW9udGhTdGFydCA9ICREYXRlVGltZU9iamVjdC0+Rm9ybWF0KAogICAgICAgICAgICBGb3JtYXQgPT4gJyVtJywKICAgICAgICApOwogICAgICAgIG15ICREYXlTdGFydCA9ICREYXRlVGltZU9iamVjdC0+Rm9ybWF0KAogICAgICAgICAgICBGb3JtYXQgPT4gJyVkJywKICAgICAgICApOwoKICAgICAgICBteSAkU3VidHJhY3RlZERhdGUgPSAiJFllYXJTdGFydC0kTW9udGhTdGFydC0kRGF5U3RhcnQiOwogICAgICAgICRTZWxlbml1bS0+ZmluZF9lbGVtZW50KCAiI0RhdGVTdGFydC0xIiwgJ2NzcycgKS0+Y2xlYXIoKTsKICAgICAgICAkU2VsZW5pdW0tPmZpbmRfZWxlbWVudCggIiNEYXRlU3RhcnQtMSIsICdjc3MnICktPnNlbmRfa2V5cygkU3VidHJhY3RlZERhdGUpOwoKICAgICAgICAkU2VsZW5pdW0tPldhaXRGb3JqUXVlcnlFdmVudEJvdW5kKAogICAgICAgICAgICBDU1NTZWxlY3RvciA9PiAiI1N1Ym1pdFVzZXJEYXRhIiwKICAgICAgICApOwogICAgICAgICRTZWxlbml1bS0+ZmluZF9lbGVtZW50KCAiI1N1Ym1pdFVzZXJEYXRhIiwgJ2NzcycgKS0+Y2xpY2soKTsKCiAgICAgICAgJFNlbGVuaXVtLT5XYWl0Rm9yKAogICAgICAgICAgICBKYXZhU2NyaXB0ID0+ICJyZXR1cm4gXCQoJy5NZXNzYWdlQm94LkVycm9yIGFbaHJlZio9XCJBY3Rpb249QWdlbnRUaW1lQWNjb3VudGluZ0VkaXRcIl0nKS5sZW5ndGg7IgogICAgICAgICk7CgogICAgICAgICMgQ2hlY2sgaWYgZXJyb3Igbm90aWZpY2F0aW9uIGlzIHNob3duIG9uIHBhZ2UuCiAgICAgICAgJFNlbGYtPklzKAogICAgICAgICAgICAkU2VsZW5pdW0tPmV4ZWN1dGVfc2NyaXB0KAogICAgICAgICAgICAgICAgInJldHVybiBcJCgnLk1lc3NhZ2VCb3guRXJyb3IgYVtocmVmKj1cIkFjdGlvbj1BZ2VudFRpbWVBY2NvdW50aW5nRWRpdFwiXScpLnRleHQoKS50cmltKCk7IgogICAgICAgICAgICApLAogICAgICAgICAgICAiUGxlYXNlIGluc2VydCB5b3VyIHdvcmtpbmcgaG91cnMhIiwKICAgICAgICAgICAgJ0Vycm9yIG5vdGlmaWNhdGlvbiBmb3IgaW5zZXJ0aW5nIHdvcmtpbmcgaG91cnMgaXMgZm91bmQnLAogICAgICAgICk7CgogICAgICAgICMgQ2hlY2tzIGlmIEluY29tcGxldGUgd29ya2luZyBkYXlzIGlzIHNob3duLgogICAgICAgICRTZWxmLT5JcygKICAgICAgICAgICAgJFNlbGVuaXVtLT5leGVjdXRlX3NjcmlwdCgKICAgICAgICAgICAgICAgICJyZXR1cm4gXCQoJy5JbmNvbXBsZXRlV29ya2luZ0RheXMgLkNvdW50ZXInKS50ZXh0KCk7IgogICAgICAgICAgICApLAogICAgICAgICAgICAkSW50ZXJ2YWwsCiAgICAgICAgICAgICIkSW50ZXJ2YWwgaW5jb21wbGV0ZSB3b3JraW5nIGRheXMgaXMgZm91bmQgaW4gdG9vbGJhciBjb3VudGVyIiwKICAgICAgICApOwoKICAgICAgICAjIFRyeSB0byBuYXZpZ2F0ZSB0byBBZ2VudERhc2hib2FyZC4KICAgICAgICAkU2VsZW5pdW0tPlZlcmlmaWVkR2V0KCIke1NjcmlwdEFsaWFzfWluZGV4LnBsP0FjdGlvbj1BZ2VudERhc2hib2FyZCIpOwoKICAgICAgICAkU2VsZi0+RmFsc2UoCiAgICAgICAgICAgIGluZGV4KCAkU2VsZW5pdW0tPmdldF9jdXJyZW50X3VybCgpLCAnQWN0aW9uPUFnZW50RGFzaGJvYXJkJyApID4gLTEsCiAgICAgICAgICAgICJVc2VyIGlzIGJsb2tlZCB0byB1c2UgYXBwbGljYXRpb24sIGl0IGlzIG5lZWRlZCB0byBpbnNlcnQgd29ya2luZyBob3VycyIsCiAgICAgICAgKTsKCiAgICAgICAgIyBEaXNhYmxlIE1hc3NFbnRyeSBmZWF0dXJlcy4KICAgICAgICAkSGVscGVyLT5Db25maWdTZXR0aW5nQ2hhbmdlKAogICAgICAgICAgICBWYWxpZCA9PiAxLAogICAgICAgICAgICBLZXkgICA9PiAnVGltZUFjY291bnRpbmc6Ok1heEludGVydmFsT2ZJbmNvbXBsZXRlRGF5cycsCiAgICAgICAgICAgIFZhbHVlID0+IDE1LAogICAgICAgICk7CgogICAgICAgICMgRGlzYWJsZSBNYXNzRW50cnkgZmVhdHVyZXMuCiAgICAgICAgJEhlbHBlci0+Q29uZmlnU2V0dGluZ0NoYW5nZSgKICAgICAgICAgICAgVmFsaWQgPT4gMSwKICAgICAgICAgICAgS2V5ICAgPT4gJ1RpbWVBY2NvdW50aW5nOjpNYXhJbnRlcnZhbE9mSW5jb21wbGV0ZURheXNCZWZvcmVXYXJuaW5nJywKICAgICAgICAgICAgVmFsdWUgPT4gNSwKICAgICAgICApOwoKICAgICAgICAjIFJlZnJlc2ggdGhlIHNjcmVlbiB0byBsb2FkIG5ldyBub3RpZmljYXRpb24gYWZ0ZXIgY2hhbmdpbmcgY29uZmlnLgogICAgICAgICRTZWxlbml1bS0+VmVyaWZpZWRSZWZyZXNoKCk7CgogICAgICAgICRTZWxlbml1bS0+V2FpdEZvcigKICAgICAgICAgICAgSmF2YVNjcmlwdCA9PiAicmV0dXJuIFwkKCcuTWVzc2FnZUJveC5Ob3RpY2UgYVtocmVmKj1cIkFjdGlvbj1BZ2VudFRpbWVBY2NvdW50aW5nRWRpdFwiXScpLmxlbmd0aDsiCiAgICAgICAgKTsKCiAgICAgICAgIyBDaGVjayBpZiB3YXJybmluZyBub3RpZmljYXRpb24gaXMgc2hvd24gb24gcGFnZS4KICAgICAgICAkU2VsZi0+SXMoCiAgICAgICAgICAgICRTZWxlbml1bS0+ZXhlY3V0ZV9zY3JpcHQoCiAgICAgICAgICAgICAgICAicmV0dXJuIFwkKCcuTWVzc2FnZUJveC5Ob3RpY2UgYVtocmVmKj1cIkFjdGlvbj1BZ2VudFRpbWVBY2NvdW50aW5nRWRpdFwiXScpLnRleHQoKS50cmltKCk7IgogICAgICAgICAgICApLAogICAgICAgICAgICAiUGxlYXNlIGluc2VydCB5b3VyIHdvcmtpbmcgaG91cnMhIiwKICAgICAgICAgICAgJ1dhcnJuaW5nIG5vdGlmaWNhdGlvbiBmb3IgaW5zZXJ0aW5nIHdvcmtpbmcgaG91cnMgaXMgZm91bmQnLAogICAgICAgICk7CgogICAgICAgICMgVHJ5IHRvIG5hdmlnYXRlIHRvIEFnZW50RGFzaGJvYXJkLgogICAgICAgICRTZWxlbml1bS0+VmVyaWZpZWRHZXQoIiR7U2NyaXB0QWxpYXN9aW5kZXgucGw/QWN0aW9uPUFnZW50RGFzaGJvYXJkIik7CgogICAgICAgICRTZWxmLT5UcnVlKAogICAgICAgICAgICBpbmRleCggJFNlbGVuaXVtLT5nZXRfY3VycmVudF91cmwoKSwgJ0FjdGlvbj1BZ2VudERhc2hib2FyZCcgKSA+IC0xLAogICAgICAgICAgICAiVXNlciBpcyBub3QgYmxva2VkIHRvIHVzZSBhcHBsaWNhdGlvbiIsCiAgICAgICAgKTsKCiAgICAgICAgbXkgJERCT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkRCJyk7CgogICAgICAgICMgR2V0IERCIGNsZWFuLXVwIGRhdGEuCiAgICAgICAgbXkgQERCQ2xlYW5EYXRhID0gKAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBRdW90ZWQgID0+ICRQcm9qZWN0VGl0bGUsCiAgICAgICAgICAgICAgICBUYWJsZSAgID0+ICd0aW1lX2FjY291bnRpbmdfcHJvamVjdCcsCiAgICAgICAgICAgICAgICBXaGVyZSAgID0+ICdwcm9qZWN0JywKICAgICAgICAgICAgICAgIEJpbmQgICAgPT4gJycsCiAgICAgICAgICAgICAgICBNZXNzYWdlID0+ICIkUHJvamVjdFRpdGxlIGlzIGRlbGV0ZWQiLAogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBRdW90ZWQgID0+ICRBY3Rpb25UaXRsZSwKICAgICAgICAgICAgICAgIFRhYmxlICAgPT4gJ3RpbWVfYWNjb3VudGluZ19hY3Rpb24nLAogICAgICAgICAgICAgICAgV2hlcmUgICA9PiAnYWN0aW9uJywKICAgICAgICAgICAgICAgIEJpbmQgICAgPT4gJycsCiAgICAgICAgICAgICAgICBNZXNzYWdlID0+ICIkQWN0aW9uVGl0bGUgaXMgZGVsZXRlZCIsCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIFRhYmxlICAgPT4gJ3RpbWVfYWNjb3VudGluZ190YWJsZScsCiAgICAgICAgICAgICAgICBXaGVyZSAgID0+ICd1c2VyX2lkJywKICAgICAgICAgICAgICAgIEJpbmQgICAgPT4gJFRlc3RVc2VySUQsCiAgICAgICAgICAgICAgICBNZXNzYWdlID0+ICJUZXN0IHVzZXIgJFRlc3RVc2VySUQgaXMgcmVtb3ZlZCBmcm9tIGFjY291bnRpbmcgdGFibGUiLAogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBUYWJsZSAgID0+ICd0aW1lX2FjY291bnRpbmdfdXNlcicsCiAgICAgICAgICAgICAgICBXaGVyZSAgID0+ICd1c2VyX2lkJywKICAgICAgICAgICAgICAgIEJpbmQgICAgPT4gJFRlc3RVc2VySUQsCiAgICAgICAgICAgICAgICBNZXNzYWdlID0+ICJUZXN0IHVzZXIgJFRlc3RVc2VySUQgaXMgcmVtb3ZlZCBmcm9tIGFjY291bnRpbmcgc2V0dGluZyIsCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIFRhYmxlICAgPT4gJ3RpbWVfYWNjb3VudGluZ191c2VyX3BlcmlvZCcsCiAgICAgICAgICAgICAgICBXaGVyZSAgID0+ICd1c2VyX2lkJywKICAgICAgICAgICAgICAgIEJpbmQgICAgPT4gJFRlc3RVc2VySUQsCiAgICAgICAgICAgICAgICBNZXNzYWdlID0+ICJUZXN0IHVzZXIgJFRlc3RVc2VySUQgaXMgcmVtb3ZlZCBmcm9tIGFjY291bnRpbmcgcGVyaW9kIiwKICAgICAgICAgICAgfSwKICAgICAgICApOwoKICAgICAgICAjIENsZWFuIHN5c3RlbSBmcm9tIHRlc3QgY3JlYXRlZCBkYXRhLgogICAgICAgIGZvciBteSAkRGVsZXRlIChAREJDbGVhbkRhdGEpIHsKICAgICAgICAgICAgaWYgKCAkRGVsZXRlLT57UXVvdGVkfSApIHsKICAgICAgICAgICAgICAgICREZWxldGUtPntCaW5kfSA9ICREQk9iamVjdC0+UXVvdGUoICREZWxldGUtPntRdW90ZWR9ICk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbXkgJFN1Y2Nlc3MgPSAkREJPYmplY3QtPkRvKAogICAgICAgICAgICAgICAgU1FMICA9PiAiREVMRVRFIEZST00gJERlbGV0ZS0+e1RhYmxlfSBXSEVSRSAkRGVsZXRlLT57V2hlcmV9ID0gPyIsCiAgICAgICAgICAgICAgICBCaW5kID0+IFsgXCREZWxldGUtPntCaW5kfSBdLAogICAgICAgICAgICApOwogICAgICAgICAgICAkU2VsZi0+VHJ1ZSgKICAgICAgICAgICAgICAgICRTdWNjZXNzLAogICAgICAgICAgICAgICAgJERlbGV0ZS0+e01lc3NhZ2V9LAogICAgICAgICAgICApOwogICAgICAgIH0KICAgIH0KKTsKCjE7Cg==</File>
        <File Location="scripts/test/Selenium/Agent/AgentTimeAccountingOverview.t" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgp1c2Ugc3RyaWN0Owp1c2Ugd2FybmluZ3M7CnVzZSB1dGY4OwoKb3VyICRTZWxmOwoKIyBnZXQgc2VsZW5pdW0gb2JqZWN0Cm15ICRTZWxlbml1bSA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpVbml0VGVzdDo6U2VsZW5pdW0nKTsKCiRTZWxlbml1bS0+UnVuVGVzdCgKICAgIHN1YiB7CgogICAgICAgICMgZ2V0IGhlbHBlciBvYmplY3QKICAgICAgICBteSAkSGVscGVyID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlVuaXRUZXN0OjpIZWxwZXInKTsKCiAgICAgICAgIyB1c2UgYSBjYWxlbmRhciB3aXRoIHRoZSBzYW1lIGJ1c2luZXNzIGhvdXJzIGZvciBldmVyeSBkYXkgc28gdGhhdCB0aGUgVVQgcnVucyBjb3JyZWN0bHkKICAgICAgICAjIG9uIGV2ZXJ5IGRheSBvZiB0aGUgd2VlayBhbmQgb3V0c2lkZSB1c3VhbCBidXNpbmVzcyBob3Vycy4KICAgICAgICBteSAlV2VlazsKICAgICAgICBteSBARGF5cyA9IHF3KFN1biBNb24gVHVlIFdlZCBUaHUgRnJpIFNhdCk7CiAgICAgICAgZm9yIG15ICREYXkgKEBEYXlzKSB7CiAgICAgICAgICAgICRXZWVreyREYXl9ID0gWyAwIC4uIDIzIF07CiAgICAgICAgfQoKICAgICAgICAkSGVscGVyLT5Db25maWdTZXR0aW5nQ2hhbmdlKAogICAgICAgICAgICBLZXkgICA9PiAnVGltZVdvcmtpbmdIb3VycycsCiAgICAgICAgICAgIFZhbHVlID0+IFwlV2VlaywKICAgICAgICApOwoKICAgICAgICAkSGVscGVyLT5Db25maWdTZXR0aW5nQ2hhbmdlKAogICAgICAgICAgICBLZXkgICA9PiAnVGltZVdvcmtpbmdIb3VycycsCiAgICAgICAgICAgIFZhbHVlID0+IFwlV2VlaywKICAgICAgICApOwoKICAgICAgICAjIGNyZWF0ZSB0ZXN0IHVzZXIgYW5kIGxvZ2luCiAgICAgICAgbXkgJFRlc3RVc2VyTG9naW4gPSAkSGVscGVyLT5UZXN0VXNlckNyZWF0ZSgKICAgICAgICAgICAgR3JvdXBzID0+IFsgJ2FkbWluJywgJ3VzZXJzJyBdLAogICAgICAgICkgfHwgZGllICJEaWQgbm90IGdldCB0ZXN0IHVzZXIiOwoKICAgICAgICAjIGdldCB0ZXN0IHVzZXIgSUQKICAgICAgICBteSAkVGVzdFVzZXJJRCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpVc2VyJyktPlVzZXJMb29rdXAoCiAgICAgICAgICAgIFVzZXJMb2dpbiA9PiAkVGVzdFVzZXJMb2dpbiwKICAgICAgICApOwoKICAgICAgICAjIGdldCB0aW1lIGFjY291bnRpbmcgb2JqZWN0CiAgICAgICAgbXkgJFRpbWVBY2NvdW50aW5nT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlRpbWVBY2NvdW50aW5nJyk7CgogICAgICAgICMgaW5zZXJ0IHRlc3QgdXNlciBpbnRvIGFjY291bnQgc2V0dGluZwogICAgICAgICRUaW1lQWNjb3VudGluZ09iamVjdC0+VXNlclNldHRpbmdzSW5zZXJ0KAogICAgICAgICAgICBVc2VySUQgPT4gJFRlc3RVc2VySUQsCiAgICAgICAgICAgIFBlcmlvZCA9PiAnMScsCiAgICAgICAgKTsKCiAgICAgICAgbXkgJERhdGVUaW1lT2JqZWN0ICAgPSAkS2VybmVsOjpPTS0+Q3JlYXRlKCdLZXJuZWw6OlN5c3RlbTo6RGF0ZVRpbWUnKTsKICAgICAgICBteSAkRGF0ZVRpbWVTZXR0aW5ncyA9ICREYXRlVGltZU9iamVjdC0+R2V0KCk7CgogICAgICAgIG15ICRZZWFyQ3VycmVudCAgPSAkRGF0ZVRpbWVTZXR0aW5ncy0+e1llYXJ9OwogICAgICAgIG15ICRNb250aEN1cnJlbnQgPSAkRGF0ZVRpbWVTZXR0aW5ncy0+e01vbnRofTsKICAgICAgICBteSAkRGF5Q3VycmVudCAgID0gJERhdGVUaW1lU2V0dGluZ3MtPntEYXl9OwoKICAgICAgICAkRGF0ZVRpbWVPYmplY3QtPkFkZCggRGF5cyA9PiAxICk7CiAgICAgICAgbXkgJERhdGVUaW1lU2V0dGluZ3NFbmQgPSAkRGF0ZVRpbWVPYmplY3QtPkdldCgpOwoKICAgICAgICBteSAkWWVhckVuZCAgPSAkRGF0ZVRpbWVTZXR0aW5nc0VuZC0+e1llYXJ9OwogICAgICAgIG15ICRNb250aEVuZCA9ICREYXRlVGltZVNldHRpbmdzRW5kLT57TW9udGh9OwogICAgICAgIG15ICREYXlFbmQgICA9ICREYXRlVGltZVNldHRpbmdzRW5kLT57RGF5fTsKCiAgICAgICAgIyB1cGRhdGUgdXNlciB0aW1lIGFjY291bnQgc2V0dGluZwogICAgICAgICRUaW1lQWNjb3VudGluZ09iamVjdC0+VXNlclNldHRpbmdzVXBkYXRlKAogICAgICAgICAgICBVc2VySUQgICAgICAgID0+ICRUZXN0VXNlcklELAogICAgICAgICAgICBEZXNjcmlwdGlvbiAgID0+ICdTZWxlbml1bSB0ZXN0IGFjY291bnRpbmcgdXNlcicsCiAgICAgICAgICAgIENyZWF0ZVByb2plY3QgPT4gMSwKICAgICAgICAgICAgU2hvd092ZXJ0aW1lICA9PiAxLAogICAgICAgICAgICBQZXJpb2QgICAgICAgID0+IHsKICAgICAgICAgICAgICAgIDEgPT4gewogICAgICAgICAgICAgICAgICAgIERhdGVTdGFydCAgID0+ICIkWWVhckN1cnJlbnQtJE1vbnRoQ3VycmVudC0kRGF5Q3VycmVudCIsCiAgICAgICAgICAgICAgICAgICAgRGF0ZUVuZCAgICAgPT4gIiRZZWFyRW5kLSRNb250aEVuZC0kRGF5RW5kIiwKICAgICAgICAgICAgICAgICAgICBXZWVrbHlIb3VycyA9PiAnMzgnLAogICAgICAgICAgICAgICAgICAgIExlYXZlRGF5cyAgID0+ICcyNScsCiAgICAgICAgICAgICAgICAgICAgT3ZlcnRpbWUgICAgPT4gJzM4JywKICAgICAgICAgICAgICAgICAgICBVc2VyU3RhdHVzICA9PiAxLAogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgfSwKICAgICAgICApOwoKICAgICAgICAjIGNyZWF0ZSB0ZXN0IHByb2plY3QKICAgICAgICBteSAkUHJvamVjdFRpdGxlID0gJ1Byb2plY3QgJyAuICRIZWxwZXItPkdldFJhbmRvbUlEKCk7CiAgICAgICAgbXkgJFByb2plY3RJRCAgICA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+UHJvamVjdFNldHRpbmdzSW5zZXJ0KAogICAgICAgICAgICBQcm9qZWN0ICAgICAgICAgICAgPT4gJFByb2plY3RUaXRsZSwKICAgICAgICAgICAgUHJvamVjdERlc2NyaXB0aW9uID0+ICdTZWxlbml1bSB0ZXN0IHByb2plY3QnLAogICAgICAgICAgICBQcm9qZWN0U3RhdHVzICAgICAgPT4gMSwKICAgICAgICApOwoKICAgICAgICAjIGNyZWF0ZSB0ZXN0IGFjdGlvbgogICAgICAgIG15ICRBY3Rpb25UaXRsZSA9ICdBY3Rpb24gJyAuICRIZWxwZXItPkdldFJhbmRvbUlEKCk7CiAgICAgICAgJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5BY3Rpb25TZXR0aW5nc0luc2VydCgKICAgICAgICAgICAgQWN0aW9uICAgICAgID0+ICRBY3Rpb25UaXRsZSwKICAgICAgICAgICAgQWN0aW9uU3RhdHVzID0+IDEsCiAgICAgICAgKTsKICAgICAgICBteSAlQWN0aW9uRGF0YSA9ICRUaW1lQWNjb3VudGluZ09iamVjdC0+QWN0aW9uR2V0KAogICAgICAgICAgICBBY3Rpb24gPT4gJEFjdGlvblRpdGxlLAogICAgICAgICk7CiAgICAgICAgbXkgJEFjdGlvbklEID0gJEFjdGlvbkRhdGF7SUR9OwoKICAgICAgICAjIGFkZCB3b3JraW5nIHVuaXRzIGZvciB0ZXN0IHVzZXIKICAgICAgICAkVGltZUFjY291bnRpbmdPYmplY3QtPldvcmtpbmdVbml0c0luc2VydCgKICAgICAgICAgICAgWWVhciAgICAgICAgID0+ICRZZWFyQ3VycmVudCwKICAgICAgICAgICAgTW9udGggICAgICAgID0+ICRNb250aEN1cnJlbnQsCiAgICAgICAgICAgIERheSAgICAgICAgICA9PiAkRGF5Q3VycmVudCwKICAgICAgICAgICAgTGVhdmVEYXkgICAgID0+IDEsCiAgICAgICAgICAgIFNpY2sgICAgICAgICA9PiAxLAogICAgICAgICAgICBPdmVydGltZSAgICAgPT4gMSwKICAgICAgICAgICAgV29ya2luZ1VuaXRzID0+IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBQcm9qZWN0SUQgPT4gJFByb2plY3RJRCwKICAgICAgICAgICAgICAgICAgICBBY3Rpb25JRCAgPT4gJEFjdGlvbklELAogICAgICAgICAgICAgICAgICAgIFJlbWFyayAgICA9PiAnU2VsZW5pdW0gdGVzdCByZW1hcmsnLAogICAgICAgICAgICAgICAgICAgIFBlcmlvZCAgICA9PiAnNScsCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICBdLAogICAgICAgICAgICBVc2VySUQgPT4gJFRlc3RVc2VySUQsCiAgICAgICAgKTsKCiAgICAgICAgIyBsb2cgaW4gdGVzdCB1c2VyCiAgICAgICAgJFNlbGVuaXVtLT5Mb2dpbigKICAgICAgICAgICAgVHlwZSAgICAgPT4gJ0FnZW50JywKICAgICAgICAgICAgVXNlciAgICAgPT4gJFRlc3RVc2VyTG9naW4sCiAgICAgICAgICAgIFBhc3N3b3JkID0+ICRUZXN0VXNlckxvZ2luLAogICAgICAgICk7CgogICAgICAgICMgZ2V0IHNjcmlwdCBhbGlhcwogICAgICAgIG15ICRTY3JpcHRBbGlhcyA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6Q29uZmlnJyktPkdldCgnU2NyaXB0QWxpYXMnKTsKCiAgICAgICAgIyBuYXZpZ2F0ZSB0byBBZ2VudFRpbWVBY2NvdW50aW5nT3ZlcnZpZXcKICAgICAgICAkU2VsZW5pdW0tPlZlcmlmaWVkR2V0KCIke1NjcmlwdEFsaWFzfWluZGV4LnBsP0FjdGlvbj1BZ2VudFRpbWVBY2NvdW50aW5nT3ZlcnZpZXc7Iik7CgogICAgICAgICMgY2hlY2sgcGFnZSBsYXlvdXQKICAgICAgICAkU2VsZW5pdW0tPmZpbmRfZWxlbWVudCggInRhYmxlIiwgICAgICAgICAgICAgJ2NzcycgKTsKICAgICAgICAkU2VsZW5pdW0tPmZpbmRfZWxlbWVudCggInRhYmxlIHRoZWFkIHRyIHRoIiwgJ2NzcycgKTsKICAgICAgICAkU2VsZW5pdW0tPmZpbmRfZWxlbWVudCggInRhYmxlIHRib2R5IHRyIHRkIiwgJ2NzcycgKTsKCiAgICAgICAgIyB2ZXJpZnkgQWdlbnRUaW1lQWNjb3VudGluZ092ZXJ2aWV3IHZhbHVlcwogICAgICAgIG15IEBXZWVrZGF5QXJyYXkgPSAoICdNb24nLCAnVHVlJywgJ1dlZCcsICdUaHUnLCAnRnJpJywgJ1NhdCcsICdTdW4nLCApOwogICAgICAgIG15IEBUZXN0ICAgICAgICAgPSAoCiAgICAgICAgICAgICRQcm9qZWN0VGl0bGUsICAgICAkQWN0aW9uVGl0bGUsICAgICAgICAnVGltZSByZXBvcnRpbmcgbW9udGhseSBvdmVydmlldycsICdPbiBvdmVydGltZSBsZWF2ZScsICdPdmVydGltZSAoSG91cnMpJywKICAgICAgICAgICAgJ1ZhY2F0aW9uIChEYXlzKScsICdTaWNrIExlYXZlIChEYXlzKScsIEBXZWVrZGF5QXJyYXkKICAgICAgICApOwoKICAgICAgICBmb3IgbXkgJENoZWNrIChAVGVzdCkgewogICAgICAgICAgICAkU2VsZi0+VHJ1ZSgKICAgICAgICAgICAgICAgIGluZGV4KCAkU2VsZW5pdW0tPmdldF9wYWdlX3NvdXJjZSgpLCAkQ2hlY2sgKSA+IC0xLAogICAgICAgICAgICAgICAgIiRDaGVjayBpcyBmb3VuZCIsCiAgICAgICAgICAgICk7CiAgICAgICAgfQoKICAgICAgICAjIGdldCBEQiBvYmplY3QKICAgICAgICBteSAkREJPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6REInKTsKCiAgICAgICAgIyBnZXQgREIgY2xlYW4tdXAgZGF0YQogICAgICAgIG15IEBEQkNsZWFuRGF0YSA9ICgKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgUXVvdGVkICA9PiAkUHJvamVjdFRpdGxlLAogICAgICAgICAgICAgICAgVGFibGUgICA9PiAndGltZV9hY2NvdW50aW5nX3Byb2plY3QnLAogICAgICAgICAgICAgICAgV2hlcmUgICA9PiAncHJvamVjdCcsCiAgICAgICAgICAgICAgICBCaW5kICAgID0+ICcnLAogICAgICAgICAgICAgICAgTWVzc2FnZSA9PiAiJFByb2plY3RUaXRsZSBpcyBkZWxldGVkIiwKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgUXVvdGVkICA9PiAkQWN0aW9uVGl0bGUsCiAgICAgICAgICAgICAgICBUYWJsZSAgID0+ICd0aW1lX2FjY291bnRpbmdfYWN0aW9uJywKICAgICAgICAgICAgICAgIFdoZXJlICAgPT4gJ2FjdGlvbicsCiAgICAgICAgICAgICAgICBCaW5kICAgID0+ICcnLAogICAgICAgICAgICAgICAgTWVzc2FnZSA9PiAiJEFjdGlvblRpdGxlIGlzIGRlbGV0ZWQiLAogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBUYWJsZSAgID0+ICd0aW1lX2FjY291bnRpbmdfdGFibGUnLAogICAgICAgICAgICAgICAgV2hlcmUgICA9PiAndXNlcl9pZCcsCiAgICAgICAgICAgICAgICBCaW5kICAgID0+ICRUZXN0VXNlcklELAogICAgICAgICAgICAgICAgTWVzc2FnZSA9PiAiVGVzdCB1c2VyICRUZXN0VXNlcklEIGlzIHJlbW92ZWQgZnJvbSBhY2NvdW50aW5nIHRhYmxlIiwKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgVGFibGUgICA9PiAndGltZV9hY2NvdW50aW5nX3VzZXInLAogICAgICAgICAgICAgICAgV2hlcmUgICA9PiAndXNlcl9pZCcsCiAgICAgICAgICAgICAgICBCaW5kICAgID0+ICRUZXN0VXNlcklELAogICAgICAgICAgICAgICAgTWVzc2FnZSA9PiAiVGVzdCB1c2VyICRUZXN0VXNlcklEIGlzIHJlbW92ZWQgZnJvbSBhY2NvdW50aW5nIHNldHRpbmciLAogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBUYWJsZSAgID0+ICd0aW1lX2FjY291bnRpbmdfdXNlcl9wZXJpb2QnLAogICAgICAgICAgICAgICAgV2hlcmUgICA9PiAndXNlcl9pZCcsCiAgICAgICAgICAgICAgICBCaW5kICAgID0+ICRUZXN0VXNlcklELAogICAgICAgICAgICAgICAgTWVzc2FnZSA9PiAiVGVzdCB1c2VyICRUZXN0VXNlcklEIGlzIHJlbW92ZWQgZnJvbSBhY2NvdW50aW5nIHBlcmlvZCIsCiAgICAgICAgICAgIH0sCiAgICAgICAgKTsKCiAgICAgICAgIyBjbGVhbiBzeXN0ZW0gZnJvbSB0ZXN0IGNyZWF0ZWQgZGF0YQogICAgICAgIGZvciBteSAkRGVsZXRlIChAREJDbGVhbkRhdGEpIHsKICAgICAgICAgICAgaWYgKCAkRGVsZXRlLT57UXVvdGVkfSApIHsKICAgICAgICAgICAgICAgICREZWxldGUtPntCaW5kfSA9ICREQk9iamVjdC0+UXVvdGUoICREZWxldGUtPntRdW90ZWR9ICk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbXkgJFN1Y2Nlc3MgPSAkREJPYmplY3QtPkRvKAogICAgICAgICAgICAgICAgU1FMICA9PiAiREVMRVRFIEZST00gJERlbGV0ZS0+e1RhYmxlfSBXSEVSRSAkRGVsZXRlLT57V2hlcmV9ID0gPyIsCiAgICAgICAgICAgICAgICBCaW5kID0+IFsgXCREZWxldGUtPntCaW5kfSBdLAogICAgICAgICAgICApOwogICAgICAgICAgICAkU2VsZi0+VHJ1ZSgKICAgICAgICAgICAgICAgICRTdWNjZXNzLAogICAgICAgICAgICAgICAgJERlbGV0ZS0+e01lc3NhZ2V9LAogICAgICAgICAgICApOwogICAgICAgIH0KICAgIH0KKTsKCjE7Cg==</File>
        <File Location="scripts/test/Selenium/Agent/AgentTimeAccountingReporting.t" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgp1c2Ugc3RyaWN0Owp1c2Ugd2FybmluZ3M7CnVzZSB1dGY4OwoKb3VyICRTZWxmOwoKbXkgJFNlbGVuaXVtID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlVuaXRUZXN0OjpTZWxlbml1bScpOwoKJFNlbGVuaXVtLT5SdW5UZXN0KAogICAgc3ViIHsKCiAgICAgICAgbXkgJEhlbHBlciAgICAgICAgICAgICAgID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlVuaXRUZXN0OjpIZWxwZXInKTsKICAgICAgICBteSAkVGltZUFjY291bnRpbmdPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VGltZUFjY291bnRpbmcnKTsKICAgICAgICBteSAkRGF0ZVRpbWVPYmplY3QgICAgICAgPSAkS2VybmVsOjpPTS0+Q3JlYXRlKCdLZXJuZWw6OlN5c3RlbTo6RGF0ZVRpbWUnKTsKCiAgICAgICAgIyBTZXQgTWF4SW50ZXJ2YWxPZkluY29tcGxldGVEYXlzIFN5c0NvbmZpZyBvbiA1MCBkYXlzIGZvciB0ZXN0IHB1cnBvc2UuCiAgICAgICAgJEhlbHBlci0+Q29uZmlnU2V0dGluZ0NoYW5nZSgKICAgICAgICAgICAgVmFsaWQgPT4gMSwKICAgICAgICAgICAgS2V5ICAgPT4gJ1RpbWVBY2NvdW50aW5nOjpNYXhJbnRlcnZhbE9mSW5jb21wbGV0ZURheXMnLAogICAgICAgICAgICBWYWx1ZSA9PiA1MCwKICAgICAgICApOwoKICAgICAgICAjIFVzZSBhIGNhbGVuZGFyIHdpdGggdGhlIHNhbWUgYnVzaW5lc3MgaG91cnMgZm9yIGV2ZXJ5IGRheSBzbyB0aGF0IHRoZSBVVCBydW5zIGNvcnJlY3RseQogICAgICAgICMgb24gZXZlcnkgZGF5IG9mIHRoZSB3ZWVrIGFuZCBvdXRzaWRlIHVzdWFsIGJ1c2luZXNzIGhvdXJzLgogICAgICAgIG15ICVXZWVrOwogICAgICAgIG15IEBEYXlzID0gcXcoU3VuIE1vbiBUdWUgV2VkIFRodSBGcmkgU2F0KTsKICAgICAgICBmb3IgbXkgJERheSAoQERheXMpIHsKICAgICAgICAgICAgJFdlZWt7JERheX0gPSBbIDAgLi4gMjMgXTsKICAgICAgICB9CgogICAgICAgICRIZWxwZXItPkNvbmZpZ1NldHRpbmdDaGFuZ2UoCiAgICAgICAgICAgIEtleSAgID0+ICdUaW1lV29ya2luZ0hvdXJzJywKICAgICAgICAgICAgVmFsdWUgPT4gXCVXZWVrLAogICAgICAgICk7CgogICAgICAgICRIZWxwZXItPkNvbmZpZ1NldHRpbmdDaGFuZ2UoCiAgICAgICAgICAgIEtleSAgID0+ICdUaW1lV29ya2luZ0hvdXJzJywKICAgICAgICAgICAgVmFsdWUgPT4gXCVXZWVrLAogICAgICAgICk7CgogICAgICAgICMgQ3JlYXRlIHRlc3QgdXNlci4KICAgICAgICBteSAkVGVzdFVzZXJMb2dpbiA9ICRIZWxwZXItPlRlc3RVc2VyQ3JlYXRlKAogICAgICAgICAgICBHcm91cHMgPT4gWyAnYWRtaW4nLCAndXNlcnMnIF0sCiAgICAgICAgKSB8fCBkaWUgIkRpZCBub3QgZ2V0IHRlc3QgdXNlciI7CgogICAgICAgICMgR2V0IHRlc3QgdXNlciBJRC4KICAgICAgICBteSAkVGVzdFVzZXJJRCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpVc2VyJyktPlVzZXJMb29rdXAoCiAgICAgICAgICAgIFVzZXJMb2dpbiA9PiAkVGVzdFVzZXJMb2dpbiwKICAgICAgICApOwoKICAgICAgICAjIEluc2VydCB0ZXN0IHVzZXIgaW50byBhY2NvdW50IHNldHRpbmcuCiAgICAgICAgJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyU2V0dGluZ3NJbnNlcnQoCiAgICAgICAgICAgIFVzZXJJRCA9PiAkVGVzdFVzZXJJRCwKICAgICAgICAgICAgUGVyaW9kID0+ICcxJywKICAgICAgICApOwoKICAgICAgICAkRGF0ZVRpbWVPYmplY3QtPlN1YnRyYWN0KCBEYXlzID0+IDQwICk7CiAgICAgICAgbXkgJFllYXJTdGFydCA9ICREYXRlVGltZU9iamVjdC0+Rm9ybWF0KAogICAgICAgICAgICBGb3JtYXQgPT4gJyVZJywKICAgICAgICApOwogICAgICAgIG15ICRNb250aFN0YXJ0ID0gJERhdGVUaW1lT2JqZWN0LT5Gb3JtYXQoCiAgICAgICAgICAgIEZvcm1hdCA9PiAnJW0nLAogICAgICAgICk7CiAgICAgICAgbXkgJERheVN0YXJ0ID0gJERhdGVUaW1lT2JqZWN0LT5Gb3JtYXQoCiAgICAgICAgICAgIEZvcm1hdCA9PiAnJWQnLAogICAgICAgICk7CgogICAgICAgICREYXRlVGltZU9iamVjdC0+QWRkKAogICAgICAgICAgICBTZWNvbmRzID0+IDEKICAgICAgICApOwogICAgICAgIG15ICREYXRlVGltZVNldHRpbmdzID0gJERhdGVUaW1lT2JqZWN0LT5HZXQoKTsKCiAgICAgICAgbXkgJFllYXJDdXJyZW50ICA9ICREYXRlVGltZVNldHRpbmdzLT57WWVhcn07CiAgICAgICAgbXkgJE1vbnRoQ3VycmVudCA9ICREYXRlVGltZVNldHRpbmdzLT57TW9udGh9OwogICAgICAgIG15ICREYXlDdXJyZW50ICAgPSAkRGF0ZVRpbWVTZXR0aW5ncy0+e0RheX07CgogICAgICAgICREYXRlVGltZVNldHRpbmdzID0gJEtlcm5lbDo6T00tPkNyZWF0ZSgnS2VybmVsOjpTeXN0ZW06OkRhdGVUaW1lJyk7CiAgICAgICAgJERhdGVUaW1lU2V0dGluZ3MtPkFkZCgKICAgICAgICAgICAgRGF5cyA9PiAxLAogICAgICAgICk7CiAgICAgICAgbXkgJERhdGVUaW1lU2V0dGluZ3NFbmQgPSAkRGF0ZVRpbWVTZXR0aW5ncy0+R2V0KCk7CgogICAgICAgIG15ICRZZWFyRW5kICA9ICREYXRlVGltZVNldHRpbmdzRW5kLT57WWVhcn07CiAgICAgICAgbXkgJE1vbnRoRW5kID0gJERhdGVUaW1lU2V0dGluZ3NFbmQtPntNb250aH07CiAgICAgICAgbXkgJERheUVuZCAgID0gJERhdGVUaW1lU2V0dGluZ3NFbmQtPntEYXl9OwoKICAgICAgICAjIFVwZGF0ZSB1c2VyIHRpbWUgYWNjb3VudCBzZXR0aW5nLgogICAgICAgICRUaW1lQWNjb3VudGluZ09iamVjdC0+VXNlclNldHRpbmdzVXBkYXRlKAogICAgICAgICAgICBVc2VySUQgICAgICAgID0+ICRUZXN0VXNlcklELAogICAgICAgICAgICBEZXNjcmlwdGlvbiAgID0+ICdTZWxlbml1bSB0ZXN0IGFjY291bnRpbmcgdXNlcicsCiAgICAgICAgICAgIENyZWF0ZVByb2plY3QgPT4gMSwKICAgICAgICAgICAgU2hvd092ZXJ0aW1lICA9PiAxLAogICAgICAgICAgICBQZXJpb2QgICAgICAgID0+IHsKICAgICAgICAgICAgICAgIDEgPT4gewogICAgICAgICAgICAgICAgICAgIERhdGVTdGFydCAgID0+ICIkWWVhclN0YXJ0LSRNb250aFN0YXJ0LSREYXlTdGFydCIsCiAgICAgICAgICAgICAgICAgICAgRGF0ZUVuZCAgICAgPT4gIiRZZWFyRW5kLSRNb250aEVuZC0kRGF5RW5kIiwKICAgICAgICAgICAgICAgICAgICBXZWVrbHlIb3VycyA9PiAnMzgnLAogICAgICAgICAgICAgICAgICAgIExlYXZlRGF5cyAgID0+ICcyNScsCiAgICAgICAgICAgICAgICAgICAgT3ZlcnRpbWUgICAgPT4gJzM4JywKICAgICAgICAgICAgICAgICAgICBVc2VyU3RhdHVzICA9PiAxLAogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgfSwKICAgICAgICApOwoKICAgICAgICAjIENyZWF0ZSB0ZXN0IHByb2plY3QuCiAgICAgICAgbXkgJFByb2plY3RUaXRsZSA9ICdQcm9qZWN0ICcgLiAkSGVscGVyLT5HZXRSYW5kb21JRCgpOwogICAgICAgIG15ICRQcm9qZWN0SUQgICAgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlByb2plY3RTZXR0aW5nc0luc2VydCgKICAgICAgICAgICAgUHJvamVjdCAgICAgICAgICAgID0+ICRQcm9qZWN0VGl0bGUsCiAgICAgICAgICAgIFByb2plY3REZXNjcmlwdGlvbiA9PiAnU2VsZW5pdW0gdGVzdCBwcm9qZWN0JywKICAgICAgICAgICAgUHJvamVjdFN0YXR1cyAgICAgID0+IDEsCiAgICAgICAgKTsKCiAgICAgICAgIyBDcmVhdGUgdGVzdCBhY3Rpb24uCiAgICAgICAgbXkgJEFjdGlvblRpdGxlID0gJ0FjdGlvbiAnIC4gJEhlbHBlci0+R2V0UmFuZG9tSUQoKTsKICAgICAgICAkVGltZUFjY291bnRpbmdPYmplY3QtPkFjdGlvblNldHRpbmdzSW5zZXJ0KAogICAgICAgICAgICBBY3Rpb24gICAgICAgPT4gJEFjdGlvblRpdGxlLAogICAgICAgICAgICBBY3Rpb25TdGF0dXMgPT4gMSwKICAgICAgICApOwogICAgICAgIG15ICVBY3Rpb25EYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5BY3Rpb25HZXQoCiAgICAgICAgICAgIEFjdGlvbiA9PiAkQWN0aW9uVGl0bGUsCiAgICAgICAgKTsKICAgICAgICBteSAkQWN0aW9uSUQgPSAkQWN0aW9uRGF0YXtJRH07CgogICAgICAgICMgQWRkIHdvcmtpbmcgdW5pdHMgZm9yIHRlc3QgdXNlci4KICAgICAgICAkVGltZUFjY291bnRpbmdPYmplY3QtPldvcmtpbmdVbml0c0luc2VydCgKICAgICAgICAgICAgWWVhciAgICAgICAgID0+ICRZZWFyQ3VycmVudCwKICAgICAgICAgICAgTW9udGggICAgICAgID0+ICRNb250aEN1cnJlbnQsCiAgICAgICAgICAgIERheSAgICAgICAgICA9PiAkRGF5Q3VycmVudCwKICAgICAgICAgICAgTGVhdmVEYXkgICAgID0+IDEsCiAgICAgICAgICAgIFNpY2sgICAgICAgICA9PiAxLAogICAgICAgICAgICBPdmVydGltZSAgICAgPT4gMSwKICAgICAgICAgICAgV29ya2luZ1VuaXRzID0+IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBQcm9qZWN0SUQgPT4gJFByb2plY3RJRCwKICAgICAgICAgICAgICAgICAgICBBY3Rpb25JRCAgPT4gJEFjdGlvbklELAogICAgICAgICAgICAgICAgICAgIFJlbWFyayAgICA9PiAnU2VsZW5pdW0gdGVzdCByZW1hcmsnLAogICAgICAgICAgICAgICAgICAgIFBlcmlvZCAgICA9PiAnNScsCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICBdLAogICAgICAgICAgICBVc2VySUQgPT4gJFRlc3RVc2VySUQsCiAgICAgICAgKTsKCiAgICAgICAgIyBMb2dpbiBhcyB0ZXN0IHVzZXIuCiAgICAgICAgJFNlbGVuaXVtLT5Mb2dpbigKICAgICAgICAgICAgVHlwZSAgICAgPT4gJ0FnZW50JywKICAgICAgICAgICAgVXNlciAgICAgPT4gJFRlc3RVc2VyTG9naW4sCiAgICAgICAgICAgIFBhc3N3b3JkID0+ICRUZXN0VXNlckxvZ2luLAogICAgICAgICk7CgogICAgICAgIG15ICRTY3JpcHRBbGlhcyA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6Q29uZmlnJyktPkdldCgnU2NyaXB0QWxpYXMnKTsKCiAgICAgICAgIyBOYXZpZ2F0ZSB0byBBZ2VudFRpbWVBY2NvdW50aW5nUmVwb3J0aW5nLgogICAgICAgICRTZWxlbml1bS0+VmVyaWZpZWRHZXQoIiR7U2NyaXB0QWxpYXN9aW5kZXgucGw/QWN0aW9uPUFnZW50VGltZUFjY291bnRpbmdSZXBvcnRpbmciKTsKCiAgICAgICAgIyBTZWxlY3QgbW9udGggYW5kIHllYXIgdGhhdCBhcmUgdXNlZCBmb3IgdGVzdGluZy4KICAgICAgICAkU2VsZW5pdW0tPmZpbmRfZWxlbWVudCggIiNNb250aCBvcHRpb25bdmFsdWU9JyRNb250aFN0YXJ0J10iLCAnY3NzJyApLT5jbGljaygpOwogICAgICAgICRTZWxlbml1bS0+ZmluZF9lbGVtZW50KCAiI1llYXIgb3B0aW9uW3ZhbHVlPSckWWVhclN0YXJ0J10iLCAgICdjc3MnICktPmNsaWNrKCk7CiAgICAgICAgJFNlbGVuaXVtLT5XYWl0Rm9yKAogICAgICAgICAgICBKYXZhU2NyaXB0ID0+ICJyZXR1cm4gXCQoJyNNb250aCcpLnZhbCgpID09ICRNb250aFN0YXJ0ICYmIFwkKCcjWWVhcicpLnZhbCgpID09ICRZZWFyU3RhcnQiCiAgICAgICAgKTsKCiAgICAgICAgJFNlbGVuaXVtLT5maW5kX2VsZW1lbnQoICIjTmF2aWdhdGlvblNlbGVjdCIsICdjc3MnICktPlZlcmlmaWVkQ2xpY2soKTsKCiAgICAgICAgIyBDaGVjayBwYWdlIGxheW91dC4KICAgICAgICAkU2VsZW5pdW0tPmZpbmRfZWxlbWVudCggInRhYmxlIiwgICAgICAgICAgICAgJ2NzcycgKTsKICAgICAgICAkU2VsZW5pdW0tPmZpbmRfZWxlbWVudCggInRhYmxlIHRoZWFkIHRyIHRoIiwgJ2NzcycgKTsKICAgICAgICAkU2VsZW5pdW0tPmZpbmRfZWxlbWVudCggInRhYmxlIHRib2R5IHRyIHRkIiwgJ2NzcycgKTsKCiAgICAgICAgIyBWZXJpZnkgdGhlcmUgaXMgbGluayB0byB0ZXN0IHVzZXIgcmVwb3J0cy4KICAgICAgICBteSAkVXNlclJlcG9ydEVsZW1lbnQgPSAkU2VsZW5pdW0tPmZpbmRfZWxlbWVudCggIiRUZXN0VXNlckxvZ2luICRUZXN0VXNlckxvZ2luIiwgJ2xpbmtfdGV4dCcgKTsKICAgICAgICAkVXNlclJlcG9ydEVsZW1lbnQtPmlzX2VuYWJsZWQoKTsKICAgICAgICAkVXNlclJlcG9ydEVsZW1lbnQtPmlzX2Rpc3BsYXllZCgpOwoKICAgICAgICAjIFZlcmlmeSB0aGVyZSBpcyBsaW5rIHRvIHRlc3QgdXNlciBwcm9qZWN0IHJlcG9ydHMuCiAgICAgICAgbXkgJFByb2plY3RSZXBvcnRFbGVtZW50ID0gJFNlbGVuaXVtLT5maW5kX2VsZW1lbnQoICIkUHJvamVjdFRpdGxlIiwgJ2xpbmtfdGV4dCcgKTsKICAgICAgICAkUHJvamVjdFJlcG9ydEVsZW1lbnQtPmlzX2VuYWJsZWQoKTsKICAgICAgICAkUHJvamVjdFJlcG9ydEVsZW1lbnQtPmlzX2Rpc3BsYXllZCgpOwoKICAgICAgICAjIFNlbGVjdCB0ZXN0IGNyZWF0ZWQgcHJvamVjdC4KICAgICAgICAkU2VsZW5pdW0tPmZpbmRfZWxlbWVudCggJFByb2plY3RUaXRsZSwgJ2xpbmtfdGV4dCcgKS0+VmVyaWZpZWRDbGljaygpOwoKICAgICAgICAjIENoZWNrIHBhZ2UgbGF5b3V0LgogICAgICAgICRTZWxlbml1bS0+ZmluZF9lbGVtZW50KCAidGFibGUiLCAgICAgICAgICAgICAnY3NzJyApOwogICAgICAgICRTZWxlbml1bS0+ZmluZF9lbGVtZW50KCAidGFibGUgdGhlYWQgdHIgdGgiLCAnY3NzJyApOwogICAgICAgICRTZWxlbml1bS0+ZmluZF9lbGVtZW50KCAidGFibGUgdGJvZHkgdHIgdGQiLCAnY3NzJyApOwoKICAgICAgICAjIFZlcmlmeSB0aGVyZSBpcyB0ZXN0IGNyZWF0ZWQgYWN0aW9uLgogICAgICAgICRTZWxmLT5UcnVlKAogICAgICAgICAgICBpbmRleCggJFNlbGVuaXVtLT5nZXRfcGFnZV9zb3VyY2UoKSwgJEFjdGlvblRpdGxlICkgPiAtMSwKICAgICAgICAgICAgIiRBY3Rpb25UaXRsZSBpcyBmb3VuZCIsCiAgICAgICAgKTsKCiAgICAgICAgbXkgJERCT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkRCJyk7CgogICAgICAgICMgR2V0IERCIGNsZWFuLXVwIGRhdGEuCiAgICAgICAgbXkgQERCQ2xlYW5EYXRhID0gKAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBRdW90ZWQgID0+ICRQcm9qZWN0VGl0bGUsCiAgICAgICAgICAgICAgICBUYWJsZSAgID0+ICd0aW1lX2FjY291bnRpbmdfcHJvamVjdCcsCiAgICAgICAgICAgICAgICBXaGVyZSAgID0+ICdwcm9qZWN0JywKICAgICAgICAgICAgICAgIEJpbmQgICAgPT4gJycsCiAgICAgICAgICAgICAgICBNZXNzYWdlID0+ICIkUHJvamVjdFRpdGxlIGlzIGRlbGV0ZWQiLAogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBRdW90ZWQgID0+ICRBY3Rpb25UaXRsZSwKICAgICAgICAgICAgICAgIFRhYmxlICAgPT4gJ3RpbWVfYWNjb3VudGluZ19hY3Rpb24nLAogICAgICAgICAgICAgICAgV2hlcmUgICA9PiAnYWN0aW9uJywKICAgICAgICAgICAgICAgIEJpbmQgICAgPT4gJycsCiAgICAgICAgICAgICAgICBNZXNzYWdlID0+ICIkQWN0aW9uVGl0bGUgaXMgZGVsZXRlZCIsCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIFRhYmxlICAgPT4gJ3RpbWVfYWNjb3VudGluZ190YWJsZScsCiAgICAgICAgICAgICAgICBXaGVyZSAgID0+ICd1c2VyX2lkJywKICAgICAgICAgICAgICAgIEJpbmQgICAgPT4gJFRlc3RVc2VySUQsCiAgICAgICAgICAgICAgICBNZXNzYWdlID0+ICJUZXN0IHVzZXIgJFRlc3RVc2VySUQgaXMgcmVtb3ZlZCBmcm9tIGFjY291bnRpbmcgdGFibGUiLAogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBUYWJsZSAgID0+ICd0aW1lX2FjY291bnRpbmdfdXNlcicsCiAgICAgICAgICAgICAgICBXaGVyZSAgID0+ICd1c2VyX2lkJywKICAgICAgICAgICAgICAgIEJpbmQgICAgPT4gJFRlc3RVc2VySUQsCiAgICAgICAgICAgICAgICBNZXNzYWdlID0+ICJUZXN0IHVzZXIgJFRlc3RVc2VySUQgaXMgcmVtb3ZlZCBmcm9tIGFjY291bnRpbmcgc2V0dGluZyIsCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIFRhYmxlICAgPT4gJ3RpbWVfYWNjb3VudGluZ191c2VyX3BlcmlvZCcsCiAgICAgICAgICAgICAgICBXaGVyZSAgID0+ICd1c2VyX2lkJywKICAgICAgICAgICAgICAgIEJpbmQgICAgPT4gJFRlc3RVc2VySUQsCiAgICAgICAgICAgICAgICBNZXNzYWdlID0+ICJUZXN0IHVzZXIgJFRlc3RVc2VySUQgaXMgcmVtb3ZlZCBmcm9tIGFjY291bnRpbmcgcGVyaW9kIiwKICAgICAgICAgICAgfSwKICAgICAgICApOwoKICAgICAgICAjIENsZWFuIHN5c3RlbSBmcm9tIHRlc3QgY3JlYXRlZCBkYXRhLgogICAgICAgIGZvciBteSAkRGVsZXRlIChAREJDbGVhbkRhdGEpIHsKICAgICAgICAgICAgaWYgKCAkRGVsZXRlLT57UXVvdGVkfSApIHsKICAgICAgICAgICAgICAgICREZWxldGUtPntCaW5kfSA9ICREQk9iamVjdC0+UXVvdGUoICREZWxldGUtPntRdW90ZWR9ICk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbXkgJFN1Y2Nlc3MgPSAkREJPYmplY3QtPkRvKAogICAgICAgICAgICAgICAgU1FMICA9PiAiREVMRVRFIEZST00gJERlbGV0ZS0+e1RhYmxlfSBXSEVSRSAkRGVsZXRlLT57V2hlcmV9ID0gPyIsCiAgICAgICAgICAgICAgICBCaW5kID0+IFsgXCREZWxldGUtPntCaW5kfSBdLAogICAgICAgICAgICApOwogICAgICAgICAgICAkU2VsZi0+VHJ1ZSgKICAgICAgICAgICAgICAgICRTdWNjZXNzLAogICAgICAgICAgICAgICAgJERlbGV0ZS0+e01lc3NhZ2V9LAogICAgICAgICAgICApOwogICAgICAgIH0KICAgIH0KKTsKCjE7Cg==</File>
        <File Location="scripts/test/Selenium/Agent/AgentTimeAccountingSetting.t" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgp1c2Ugc3RyaWN0Owp1c2Ugd2FybmluZ3M7CnVzZSB1dGY4OwoKb3VyICRTZWxmOwoKbXkgJFNlbGVuaXVtID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlVuaXRUZXN0OjpTZWxlbml1bScpOwoKJFNlbGVuaXVtLT5SdW5UZXN0KAogICAgc3ViIHsKCiAgICAgICAgbXkgJEhlbHBlciA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpVbml0VGVzdDo6SGVscGVyJyk7CgogICAgICAgICMgQ3JlYXRlIHRlc3QgdXNlciBhbmQgbG9naW4uCiAgICAgICAgbXkgJFRlc3RVc2VyTG9naW4gPSAkSGVscGVyLT5UZXN0VXNlckNyZWF0ZSgKICAgICAgICAgICAgR3JvdXBzID0+IFsgJ2FkbWluJywgJ3VzZXJzJyBdLAogICAgICAgICkgfHwgZGllICJEaWQgbm90IGdldCB0ZXN0IHVzZXIiOwoKICAgICAgICAkU2VsZW5pdW0tPkxvZ2luKAogICAgICAgICAgICBUeXBlICAgICA9PiAnQWdlbnQnLAogICAgICAgICAgICBVc2VyICAgICA9PiAkVGVzdFVzZXJMb2dpbiwKICAgICAgICAgICAgUGFzc3dvcmQgPT4gJFRlc3RVc2VyTG9naW4sCiAgICAgICAgKTsKCiAgICAgICAgIyBDcmVhdGUgYW5vdGhlciB0ZXN0IHVzZXIuCiAgICAgICAgbXkgJFRlc3RVc2VyID0gJEhlbHBlci0+VGVzdFVzZXJDcmVhdGUoKTsKCiAgICAgICAgIyBHZXQgdGVzdCB1c2VyIElELgogICAgICAgIG15ICRUZXN0VXNlcklEID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlVzZXInKS0+VXNlckxvb2t1cCgKICAgICAgICAgICAgVXNlckxvZ2luID0+ICRUZXN0VXNlciwKICAgICAgICApOwoKICAgICAgICBteSAkU2NyaXB0QWxpYXMgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OkNvbmZpZycpLT5HZXQoJ1NjcmlwdEFsaWFzJyk7CgogICAgICAgICMgTmF2aWdhdGUgdG8gQWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmcuCiAgICAgICAgJFNlbGVuaXVtLT5WZXJpZmllZEdldCgiJHtTY3JpcHRBbGlhc31pbmRleC5wbD9BY3Rpb249QWdlbnRUaW1lQWNjb3VudGluZ1NldHRpbmciKTsKCiAgICAgICAgIyBDaGVjayB0aW1lIGFjY291bnQgc2V0dGluZyBwYWdlIElEcy4KICAgICAgICBmb3IgbXkgJFNldHRpbmdQYWdlICgKICAgICAgICAgICAgcXcoCiAgICAgICAgICAgICAgICBOZXdVc2VySUQKICAgICAgICAgICAgICAgIENvcmVfVUlfQXV0b2dlbmVyYXRlZElEXzAKICAgICAgICAgICAgICAgIENvcmVfVUlfQXV0b2dlbmVyYXRlZElEXzEKICAgICAgICAgICAgICAgIENvcmVfVUlfQXV0b2dlbmVyYXRlZElEXzIKICAgICAgICAgICAgICAgIC5GaWx0ZXJCb3gKICAgICAgICAgICAgKQogICAgICAgICAgICApCiAgICAgICAgewogICAgICAgICAgICBteSAkU2VsZWN0b3IgPSAoICRTZXR0aW5nUGFnZSA9fiBtL15bYS16QS1aMC05XS8gPyAnIycgOiAnJyApIC4gJFNldHRpbmdQYWdlOwogICAgICAgICAgICBteSAkRWxlbWVudCAgPSAkU2VsZW5pdW0tPmZpbmRfZWxlbWVudCggJFNlbGVjdG9yLCAnY3NzJyApOwogICAgICAgICAgICAkRWxlbWVudC0+aXNfZW5hYmxlZCgpOwogICAgICAgICAgICAkRWxlbWVudC0+aXNfZGlzcGxheWVkKCk7CiAgICAgICAgfQoKICAgICAgICAjIENoZWNrIGFkZCBwcm9qZWN0IGFuZCBhZGQgdGFzay4KICAgICAgICBmb3IgbXkgJFNldHRpbmdBZGQgKCAnQWRkJywgJ0FkZCB0YXNrJywgKSB7CiAgICAgICAgICAgIG15ICRFbGVtZW50ID0gJFNlbGVuaXVtLT5maW5kX2VsZW1lbnQoIi8vYnV0dG9uW1xAdmFsdWU9JyRTZXR0aW5nQWRkJ11bXEB0eXBlPSdzdWJtaXQnXSIpOwogICAgICAgICAgICAkRWxlbWVudC0+aXNfZW5hYmxlZCgpOwogICAgICAgICAgICAkRWxlbWVudC0+aXNfZGlzcGxheWVkKCk7CiAgICAgICAgfQoKICAgICAgICAjIEZvciBjaGVjayAnbmV3IHVzZXInIGlucHV0IGF1dG9jb21wbGV0ZS4KICAgICAgICAkU2VsZW5pdW0tPmZpbmRfZWxlbWVudCggJ2lucHV0W2lkPSJOZXdVc2VySURfU2VhcmNoIl0nLCAnY3NzJyApOwoKICAgICAgICAjIENsaWNrIG9uICdBZGQgcHJvamVjdCcuCiAgICAgICAgJFNlbGVuaXVtLT5maW5kX2VsZW1lbnQoIi8vYnV0dG9uW1xAdmFsdWU9J0FkZCddW1xAdHlwZT0nc3VibWl0J10iKS0+VmVyaWZpZWRDbGljaygpOwoKICAgICAgICAjIENoZWNrIHByb2plY3QgcGFnZSBJRHMuCiAgICAgICAgZm9yIG15ICRQcm9qZWN0UGFnZUlEIChxdyhQcm9qZWN0IFByb2plY3REZXNjcmlwdGlvbiBQcm9qZWN0U3RhdHVzKSkKICAgICAgICB7CiAgICAgICAgICAgIG15ICRFbGVtZW50ID0gJFNlbGVuaXVtLT5maW5kX2VsZW1lbnQoICIjJFByb2plY3RQYWdlSUQiLCAnY3NzJyApOwogICAgICAgICAgICAkRWxlbWVudC0+aXNfZW5hYmxlZCgpOwogICAgICAgICAgICAkRWxlbWVudC0+aXNfZGlzcGxheWVkKCk7CiAgICAgICAgfQoKICAgICAgICAjIENyZWF0ZSB0ZXN0IHByb2plY3QuCiAgICAgICAgbXkgJFByb2plY3RUaXRsZSAgICAgICA9ICdQcm9qZWN0ICcgLiAkSGVscGVyLT5HZXRSYW5kb21JRCgpOwogICAgICAgIG15ICRQcm9qZWN0RGVzY3JpcHRpb24gPSAnU2VsZW5pdW0gdGVzdCBwcm9qZWN0JzsKICAgICAgICAkU2VsZW5pdW0tPmZpbmRfZWxlbWVudCggIiNQcm9qZWN0IiwgICAgICAgICAgICAnY3NzJyApLT5zZW5kX2tleXMoJFByb2plY3RUaXRsZSk7CiAgICAgICAgJFNlbGVuaXVtLT5maW5kX2VsZW1lbnQoICIjUHJvamVjdERlc2NyaXB0aW9uIiwgJ2NzcycgKS0+c2VuZF9rZXlzKCRQcm9qZWN0RGVzY3JpcHRpb24pOwogICAgICAgICRTZWxlbml1bS0+ZmluZF9lbGVtZW50KCIvL2J1dHRvbltcQHZhbHVlPSdTdWJtaXQnXVtcQHR5cGU9J3N1Ym1pdCddIiktPlZlcmlmaWVkQ2xpY2soKTsKCiAgICAgICAgIyBWZXJpZnkgY3JlYXRlZCB0ZXN0IHByb2plY3QuCiAgICAgICAgZm9yIG15ICRQcm9qZWN0VmVyaWZ5ICggJFByb2plY3RUaXRsZSwgJFByb2plY3REZXNjcmlwdGlvbiApIHsKICAgICAgICAgICAgJFNlbGYtPlRydWUoCiAgICAgICAgICAgICAgICBpbmRleCggJFNlbGVuaXVtLT5nZXRfcGFnZV9zb3VyY2UoKSwgJFByb2plY3RWZXJpZnkgKSA+IC0xLAogICAgICAgICAgICAgICAgIiRQcm9qZWN0VmVyaWZ5IGlzIGZvdW5kIiwKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgICMgQ2xpY2sgb24gJ0FkZCB0YXNrJy4KICAgICAgICAkU2VsZW5pdW0tPmZpbmRfZWxlbWVudCgiLy9idXR0b25bXEB2YWx1ZT0nQWRkIHRhc2snXVtcQHR5cGU9J3N1Ym1pdCddIiktPlZlcmlmaWVkQ2xpY2soKTsKCiAgICAgICAgIyBDaGVjayB0YXNrIHBhZ2UgSURzLgogICAgICAgIGZvciBteSAkVGFza1BhZ2VJRCAocXcoVGFzayBUYXNrU3RhdHVzKSkgewogICAgICAgICAgICBteSAkRWxlbWVudCA9ICRTZWxlbml1bS0+ZmluZF9lbGVtZW50KCAiIyRUYXNrUGFnZUlEIiwgJ2NzcycgKTsKICAgICAgICAgICAgJEVsZW1lbnQtPmlzX2VuYWJsZWQoKTsKICAgICAgICAgICAgJEVsZW1lbnQtPmlzX2Rpc3BsYXllZCgpOwogICAgICAgIH0KCiAgICAgICAgIyBDcmVhdGUgdGVzdCB0YXNrLgogICAgICAgIG15ICRBY3Rpb25UaXRsZSA9ICdUYXNrICcgLiAkSGVscGVyLT5HZXRSYW5kb21JRCgpOwogICAgICAgICRTZWxlbml1bS0+ZmluZF9lbGVtZW50KCAiI1Rhc2siLCAnY3NzJyApLT5zZW5kX2tleXMoJEFjdGlvblRpdGxlKTsKICAgICAgICAkU2VsZW5pdW0tPmZpbmRfZWxlbWVudCgiLy9idXR0b25bXEB2YWx1ZT0nU3VibWl0J11bXEB0eXBlPSdzdWJtaXQnXSIpLT5WZXJpZmllZENsaWNrKCk7CgogICAgICAgICMgVmVyaWZ5IGNyZWF0ZWQgdGVzdCB0YXNrLgogICAgICAgICRTZWxmLT5UcnVlKAogICAgICAgICAgICBpbmRleCggJFNlbGVuaXVtLT5nZXRfcGFnZV9zb3VyY2UoKSwgJEFjdGlvblRpdGxlICkgPiAtMSwKICAgICAgICAgICAgIiRBY3Rpb25UaXRsZSBpcyBmb3VuZCIsCiAgICAgICAgKTsKCiAgICAgICAgIyBUaGlzIGNoYW5nZSB0cmlnZ2VyZWQgYSBwYWdlIGxvYWQgb24gYSBuZXcgcGFnZS4KICAgICAgICAkU2VsZW5pdW0tPmV4ZWN1dGVfc2NyaXB0KAogICAgICAgICAgICAiXCQoJyNOZXdVc2VySUQnKS52YWwoJyRUZXN0VXNlcklEJykudHJpZ2dlcigncmVkcmF3LklucHV0RmllbGQnKS50cmlnZ2VyKCdjaGFuZ2UnKTsiCiAgICAgICAgKTsKCiAgICAgICAgJFNlbGVuaXVtLT5XYWl0Rm9yKAogICAgICAgICAgICBKYXZhU2NyaXB0ID0+CiAgICAgICAgICAgICAgICAncmV0dXJuIHR5cGVvZihDb3JlKSA9PSAib2JqZWN0IiAmJiB0eXBlb2YoQ29yZS5BcHApID09ICJvYmplY3QiICYmIENvcmUuQXBwLlBhZ2VMb2FkQ29tcGxldGU7JwogICAgICAgICk7CiAgICAgICAgJFNlbGVuaXVtLT5XYWl0Rm9yKCBKYXZhU2NyaXB0ID0+ICJyZXR1cm4gdHlwZW9mKFwkKSA9PT0gJ2Z1bmN0aW9uJyAmJiBcJCgnI0Rlc2NyaXB0aW9uJykubGVuZ3RoOyIgKTsKCiAgICAgICAgIyBDaGVjayBlZGl0IHVzZXIgcGFnZS4KICAgICAgICBmb3IgbXkgJEVkaXRVc2VyUGFnZUlEICgKICAgICAgICAgICAgcXcoRGVzY3JpcHRpb24gU2hvd092ZXJ0aW1lIENyZWF0ZVByb2plY3QgQWxsb3dTa2lwIENhbGVuZGFyIERhdGVTdGFydC0xIERhdGVFbmQtMSBMZWF2ZURheXMtMQogICAgICAgICAgICBXZWVrbHlIb3Vycy0xIE92ZXJ0aW1lLTEgUGVyaW9kU3RhdHVzLTEpCiAgICAgICAgICAgICkKICAgICAgICB7CiAgICAgICAgICAgIG15ICRFbGVtZW50ID0gJFNlbGVuaXVtLT5maW5kX2VsZW1lbnQoICIjJEVkaXRVc2VyUGFnZUlEIiwgJ2NzcycgKTsKICAgICAgICAgICAgJEVsZW1lbnQtPmlzX2VuYWJsZWQoKTsKICAgICAgICAgICAgJEVsZW1lbnQtPmlzX2Rpc3BsYXllZCgpOwogICAgICAgIH0KCiAgICAgICAgJFNlbGVuaXVtLT5leGVjdXRlX3NjcmlwdCgiXCQoJyNMZWF2ZURheXMtMScpLnZhbCgnJyk7Iik7CiAgICAgICAgJFNlbGVuaXVtLT5maW5kX2VsZW1lbnQoICIjTGVhdmVEYXlzLTEiLCAnY3NzJyApLT5zZW5kX2tleXMoMCk7CiAgICAgICAgJFNlbGVuaXVtLT5maW5kX2VsZW1lbnQoICIjRGF0ZVN0YXJ0LTEiLCAnY3NzJyApLT5jbGljaygpOwoKICAgICAgICAjIFZlcmlmeSBsZWF2ZSBkYXlzIGNvcnJlY3QgZm9ybWF0LgogICAgICAgICRTZWxmLT5JcygKICAgICAgICAgICAgJFNlbGVuaXVtLT5maW5kX2VsZW1lbnQoICIjTGVhdmVEYXlzLTEiLCAnY3NzJyApLT5nZXRfdmFsdWUoKSwKICAgICAgICAgICAgJzAuMDAnLAogICAgICAgICAgICAiTGVhdmUgRGF5cyBjb3JyZWN0IGZvcm1hdCIsCiAgICAgICAgKTsKCiAgICAgICAgJFNlbGVuaXVtLT5leGVjdXRlX3NjcmlwdCgiXCQoJyNMZWF2ZURheXMtMScpLnZhbCgnJyk7Iik7CiAgICAgICAgJFNlbGVuaXVtLT5maW5kX2VsZW1lbnQoICIjTGVhdmVEYXlzLTEiLCAnY3NzJyApLT5zZW5kX2tleXMoNDApOwogICAgICAgICRTZWxlbml1bS0+ZmluZF9lbGVtZW50KCAiI0RhdGVTdGFydC0xIiwgJ2NzcycgKS0+Y2xpY2soKTsKCiAgICAgICAgIyBWZXJpZnkgbGVhdmUgZGF5cyBjb3JyZWN0IGZvcm1hdC4KICAgICAgICAkU2VsZi0+SXMoCiAgICAgICAgICAgICRTZWxlbml1bS0+ZmluZF9lbGVtZW50KCAiI0xlYXZlRGF5cy0xIiwgJ2NzcycgKS0+Z2V0X3ZhbHVlKCksCiAgICAgICAgICAgICc0MC4wMCcsCiAgICAgICAgICAgICJMZWF2ZSBEYXlzIGNvcnJlY3QgZm9ybWF0IiwKICAgICAgICApOwoKICAgICAgICAjIENsaWNrICdBZGQgdGltZSBwZXJpb2QnLgogICAgICAgICRTZWxlbml1bS0+ZmluZF9lbGVtZW50KCIvL2J1dHRvbltcQHZhbHVlPSdBZGQgdGltZSBwZXJpb2QnXVtcQHR5cGU9J3N1Ym1pdCddIiktPlZlcmlmaWVkQ2xpY2soKTsKCiAgICAgICAgIyBDaGVjayBmb3IgbmV3IGFkZGVkIHRpbWUgcGVyaW9kIGZpZWxkcy4KICAgICAgICBmb3IgbXkgJE5ld1RpbWVQZXJpb2RJRCAocXcoRGF0ZVN0YXJ0LTIgRGF0ZUVuZC0yIExlYXZlRGF5cy0yIFdlZWtseUhvdXJzLTIgT3ZlcnRpbWUtMiBQZXJpb2RTdGF0dXMtMikpCiAgICAgICAgewogICAgICAgICAgICBteSAkRWxlbWVudCA9ICRTZWxlbml1bS0+ZmluZF9lbGVtZW50KCAiIyROZXdUaW1lUGVyaW9kSUQiLCAnY3NzJyApOwogICAgICAgICAgICAkRWxlbWVudC0+aXNfZW5hYmxlZCgpOwogICAgICAgICAgICAkRWxlbWVudC0+aXNfZGlzcGxheWVkKCk7CiAgICAgICAgfQoKICAgICAgICAjIEVkaXQgdXNlciBzZXR0aW5nLgogICAgICAgIG15ICRVc2VyRGVzY3JpcHRpb24gPSAnU2VsZW5pdW0gdGVzdCB1c2VyIHNldHRpbmcnOwogICAgICAgICRTZWxlbml1bS0+ZmluZF9lbGVtZW50KCAiI0Rlc2NyaXB0aW9uIiwgJ2NzcycgKS0+Y2xlYXIoKTsKICAgICAgICAkU2VsZW5pdW0tPmZpbmRfZWxlbWVudCggIiNEZXNjcmlwdGlvbiIsICdjc3MnICktPnNlbmRfa2V5cygkVXNlckRlc2NyaXB0aW9uKTsKCiAgICAgICAgJFNlbGVuaXVtLT5maW5kX2VsZW1lbnQoICIjU2hvd092ZXJ0aW1lIiwgJ2NzcycgKS0+Y2xpY2soKTsKICAgICAgICAkU2VsZW5pdW0tPldhaXRGb3IoIEphdmFTY3JpcHQgPT4gInJldHVybiBcJCgnI1Nob3dPdmVydGltZTpjaGVja2VkJykubGVuZ3RoOyIgKTsKCiAgICAgICAgJFNlbGVuaXVtLT5maW5kX2VsZW1lbnQoICIjQ3JlYXRlUHJvamVjdCIsICdjc3MnICktPmNsaWNrKCk7CiAgICAgICAgJFNlbGVuaXVtLT5XYWl0Rm9yKCBKYXZhU2NyaXB0ID0+ICJyZXR1cm4gXCQoJyNDcmVhdGVQcm9qZWN0OmNoZWNrZWQnKS5sZW5ndGg7IiApOwoKICAgICAgICAkU2VsZW5pdW0tPmZpbmRfZWxlbWVudCggIiNBbGxvd1NraXAiLCAnY3NzJyApLT5jbGljaygpOwogICAgICAgICRTZWxlbml1bS0+V2FpdEZvciggSmF2YVNjcmlwdCA9PiAicmV0dXJuIFwkKCcjQWxsb3dTa2lwOmNoZWNrZWQnKS5sZW5ndGg7IiApOwoKICAgICAgICAkU2VsZW5pdW0tPmZpbmRfZWxlbWVudCgiLy9idXR0b25bXEB2YWx1ZT0nU3VibWl0J11bXEB0eXBlPSdzdWJtaXQnXSIpLT5WZXJpZmllZENsaWNrKCk7CgogICAgICAgICMgVmVyaWZ5IHRlc3QgdXNlciBzZXR0aW5nLgogICAgICAgIG15ICRTZXR0aW5nVXNlciA9ICIkVGVzdFVzZXIgJFRlc3RVc2VyICgkVGVzdFVzZXIpIjsKICAgICAgICBmb3IgbXkgJFNldHRpbmdVc2VyVmVyaWZ5ICggJFNldHRpbmdVc2VyLCAkVXNlckRlc2NyaXB0aW9uICkgewogICAgICAgICAgICAkU2VsZi0+VHJ1ZSgKICAgICAgICAgICAgICAgIGluZGV4KCAkU2VsZW5pdW0tPmdldF9wYWdlX3NvdXJjZSgpLCAkU2V0dGluZ1VzZXJWZXJpZnkgKSA+IC0xLAogICAgICAgICAgICAgICAgIiRTZXR0aW5nVXNlclZlcmlmeSBpcyBmb3VuZCIsCiAgICAgICAgICAgICk7CiAgICAgICAgfQoKICAgICAgICBteSAkREJPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6REInKTsKCiAgICAgICAgIyBHZXQgREIgY2xlYW4tdXAgZGF0YS4KICAgICAgICBteSBAREJDbGVhbkRhdGEgPSAoCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIFF1b3RlZCAgPT4gJFByb2plY3RUaXRsZSwKICAgICAgICAgICAgICAgIFRhYmxlICAgPT4gJ3RpbWVfYWNjb3VudGluZ19wcm9qZWN0JywKICAgICAgICAgICAgICAgIFdoZXJlICAgPT4gJ3Byb2plY3QnLAogICAgICAgICAgICAgICAgQmluZCAgICA9PiAnJywKICAgICAgICAgICAgICAgIE1lc3NhZ2UgPT4gIiRQcm9qZWN0VGl0bGUgaXMgZGVsZXRlZCIsCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIFF1b3RlZCAgPT4gJEFjdGlvblRpdGxlLAogICAgICAgICAgICAgICAgVGFibGUgICA9PiAndGltZV9hY2NvdW50aW5nX2FjdGlvbicsCiAgICAgICAgICAgICAgICBXaGVyZSAgID0+ICdhY3Rpb24nLAogICAgICAgICAgICAgICAgQmluZCAgICA9PiAnJywKICAgICAgICAgICAgICAgIE1lc3NhZ2UgPT4gIiRBY3Rpb25UaXRsZSBpcyBkZWxldGVkIiwKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgVGFibGUgICA9PiAndGltZV9hY2NvdW50aW5nX3VzZXInLAogICAgICAgICAgICAgICAgV2hlcmUgICA9PiAndXNlcl9pZCcsCiAgICAgICAgICAgICAgICBCaW5kICAgID0+ICRUZXN0VXNlcklELAogICAgICAgICAgICAgICAgTWVzc2FnZSA9PiAiVGVzdCB1c2VyICRUZXN0VXNlcklEIGlzIHJlbW92ZWQgZnJvbSBhY2NvdW50aW5nIHNldHRpbmciLAogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBUYWJsZSAgID0+ICd0aW1lX2FjY291bnRpbmdfdXNlcl9wZXJpb2QnLAogICAgICAgICAgICAgICAgV2hlcmUgICA9PiAndXNlcl9pZCcsCiAgICAgICAgICAgICAgICBCaW5kICAgID0+ICRUZXN0VXNlcklELAogICAgICAgICAgICAgICAgTWVzc2FnZSA9PiAiVGVzdCB1c2VyICRUZXN0VXNlcklEIGlzIHJlbW92ZWQgZnJvbSBhY2NvdW50aW5nIHBlcmlvZCIsCiAgICAgICAgICAgIH0sCiAgICAgICAgKTsKCiAgICAgICAgIyBDbGVhbiBzeXN0ZW0gZnJvbSB0ZXN0IGNyZWF0ZWQgZGF0YS4KICAgICAgICBmb3IgbXkgJERlbGV0ZSAoQERCQ2xlYW5EYXRhKSB7CiAgICAgICAgICAgIGlmICggJERlbGV0ZS0+e1F1b3RlZH0gKSB7CiAgICAgICAgICAgICAgICAkRGVsZXRlLT57QmluZH0gPSAkREJPYmplY3QtPlF1b3RlKCAkRGVsZXRlLT57UXVvdGVkfSApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIG15ICRTdWNjZXNzID0gJERCT2JqZWN0LT5EbygKICAgICAgICAgICAgICAgIFNRTCAgPT4gIkRFTEVURSBGUk9NICREZWxldGUtPntUYWJsZX0gV0hFUkUgJERlbGV0ZS0+e1doZXJlfSA9ID8iLAogICAgICAgICAgICAgICAgQmluZCA9PiBbIFwkRGVsZXRlLT57QmluZH0gXSwKICAgICAgICAgICAgKTsKICAgICAgICAgICAgJFNlbGYtPlRydWUoCiAgICAgICAgICAgICAgICAkU3VjY2VzcywKICAgICAgICAgICAgICAgICREZWxldGUtPntNZXNzYWdlfSwKICAgICAgICAgICAgKTsKICAgICAgICB9CiAgICB9Cik7CgoxOwo=</File>
        <File Location="scripts/test/Selenium/Agent/AgentTimeAccountingView.t" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgp1c2Ugc3RyaWN0Owp1c2Ugd2FybmluZ3M7CnVzZSB1dGY4OwoKb3VyICRTZWxmOwoKIyBnZXQgc2VsZW5pdW0gb2JqZWN0Cm15ICRTZWxlbml1bSA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpVbml0VGVzdDo6U2VsZW5pdW0nKTsKCiRTZWxlbml1bS0+UnVuVGVzdCgKICAgIHN1YiB7CgogICAgICAgICMgZ2V0IGhlbHBlciBvYmplY3QKICAgICAgICBteSAkSGVscGVyID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlVuaXRUZXN0OjpIZWxwZXInKTsKCiAgICAgICAgIyBnZXQgbmVlZGVkIG9iamVjdAogICAgICAgIG15ICRDb25maWdPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OkNvbmZpZycpOwoKICAgICAgICAjIHNldCBNYXhJbnRlcnZhbE9mSW5jb21wbGV0ZURheXMgU3lzQ29uZmlnIG9uIDUwIGRheXMgZm9yIHRlc3QgcHVycG9zZQogICAgICAgICRIZWxwZXItPkNvbmZpZ1NldHRpbmdDaGFuZ2UoCiAgICAgICAgICAgIFZhbGlkID0+IDEsCiAgICAgICAgICAgIEtleSAgID0+ICdUaW1lQWNjb3VudGluZzo6TWF4SW50ZXJ2YWxPZkluY29tcGxldGVEYXlzJywKICAgICAgICAgICAgVmFsdWUgPT4gNTAsCiAgICAgICAgKTsKCiAgICAgICAgIyB1c2UgYSBjYWxlbmRhciB3aXRoIHRoZSBzYW1lIGJ1c2luZXNzIGhvdXJzIGZvciBldmVyeSBkYXkgc28gdGhhdCB0aGUgVVQgcnVucyBjb3JyZWN0bHkKICAgICAgICAjIG9uIGV2ZXJ5IGRheSBvZiB0aGUgd2VlayBhbmQgb3V0c2lkZSB1c3VhbCBidXNpbmVzcyBob3Vycy4KICAgICAgICBteSAlV2VlazsKICAgICAgICBteSBARGF5cyA9IHF3KFN1biBNb24gVHVlIFdlZCBUaHUgRnJpIFNhdCk7CiAgICAgICAgZm9yIG15ICREYXkgKEBEYXlzKSB7CiAgICAgICAgICAgICRXZWVreyREYXl9ID0gWyAwIC4uIDIzIF07CiAgICAgICAgfQoKICAgICAgICAkSGVscGVyLT5Db25maWdTZXR0aW5nQ2hhbmdlKAogICAgICAgICAgICBLZXkgICA9PiAnVGltZVdvcmtpbmdIb3VycycsCiAgICAgICAgICAgIFZhbHVlID0+IFwlV2VlaywKICAgICAgICApOwoKICAgICAgICAjIERpc2FibGUgZGVmYXVsdCBWYWNhdGlvbiBkYXlzLgogICAgICAgICRIZWxwZXItPkNvbmZpZ1NldHRpbmdDaGFuZ2UoCiAgICAgICAgICAgIEtleSAgID0+ICdUaW1lVmFjYXRpb25EYXlzJywKICAgICAgICAgICAgVmFsdWUgPT4ge30sCiAgICAgICAgKTsKCiAgICAgICAgIyBjcmVhdGUgdGVzdCB1c2VyIGFuZCBsb2dpbgogICAgICAgIG15ICRUZXN0VXNlckxvZ2luID0gJEhlbHBlci0+VGVzdFVzZXJDcmVhdGUoCiAgICAgICAgICAgIEdyb3VwcyA9PiBbICdhZG1pbicsICd1c2VycycgXSwKICAgICAgICApIHx8IGRpZSAiRGlkIG5vdCBnZXQgdGVzdCB1c2VyIjsKCiAgICAgICAgIyBnZXQgdGVzdCB1c2VyIElECiAgICAgICAgbXkgJFRlc3RVc2VySUQgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VXNlcicpLT5Vc2VyTG9va3VwKAogICAgICAgICAgICBVc2VyTG9naW4gPT4gJFRlc3RVc2VyTG9naW4sCiAgICAgICAgKTsKCiAgICAgICAgIyBnZXQgdGltZSBhY2NvdW50aW5nIG9iamVjdAogICAgICAgIG15ICRUaW1lQWNjb3VudGluZ09iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycpOwoKICAgICAgICAjIGluc2VydCB0ZXN0IHVzZXIgaW50byBhY2NvdW50IHNldHRpbmcKICAgICAgICAkVGltZUFjY291bnRpbmdPYmplY3QtPlVzZXJTZXR0aW5nc0luc2VydCgKICAgICAgICAgICAgVXNlcklEID0+ICRUZXN0VXNlcklELAogICAgICAgICAgICBQZXJpb2QgPT4gJzEnLAogICAgICAgICk7CgogICAgICAgIG15ICREYXRlVGltZU9iamVjdCA9ICRLZXJuZWw6Ok9NLT5DcmVhdGUoJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScpOwoKICAgICAgICAkRGF0ZVRpbWVPYmplY3QtPlN1YnRyYWN0KCBEYXlzID0+IDQwICk7CiAgICAgICAgbXkgJERhdGVUaW1lU2V0dGluZ3NTdGFydCA9ICREYXRlVGltZU9iamVjdC0+R2V0KCk7CiAgICAgICAgbXkgJFllYXJTdGFydCAgICAgICAgICAgICA9ICREYXRlVGltZVNldHRpbmdzU3RhcnQtPntZZWFyfTsKICAgICAgICBteSAkTW9udGhTdGFydCAgICAgICAgICAgID0gJERhdGVUaW1lU2V0dGluZ3NTdGFydC0+e01vbnRofTsKICAgICAgICBteSAkRGF5U3RhcnQgICAgICAgICAgICAgID0gJERhdGVUaW1lU2V0dGluZ3NTdGFydC0+e0RheX07CgogICAgICAgICREYXRlVGltZU9iamVjdC0+QWRkKAogICAgICAgICAgICBEYXlzICAgID0+IDQwLAogICAgICAgICAgICBTZWNvbmRzID0+IDEKICAgICAgICApOwogICAgICAgIG15ICREYXRlVGltZVNldHRpbmdzID0gJERhdGVUaW1lT2JqZWN0LT5HZXQoKTsKCiAgICAgICAgbXkgJFllYXJDdXJyZW50ICA9ICREYXRlVGltZVNldHRpbmdzLT57WWVhcn07CiAgICAgICAgbXkgJE1vbnRoQ3VycmVudCA9ICREYXRlVGltZVNldHRpbmdzLT57TW9udGh9OwogICAgICAgIG15ICREYXlDdXJyZW50ICAgPSAkRGF0ZVRpbWVTZXR0aW5ncy0+e0RheX07CgogICAgICAgICREYXRlVGltZU9iamVjdC0+U3VidHJhY3QoIFNlY29uZHMgPT4gMSApOwogICAgICAgICREYXRlVGltZU9iamVjdC0+QWRkKCBEYXlzID0+IDEgKTsKICAgICAgICBteSAkRGF0ZVRpbWVTZXR0aW5nc0VuZCA9ICREYXRlVGltZU9iamVjdC0+R2V0KCk7CgogICAgICAgIG15ICRZZWFyRW5kICA9ICREYXRlVGltZVNldHRpbmdzRW5kLT57WWVhcn07CiAgICAgICAgbXkgJE1vbnRoRW5kID0gJERhdGVUaW1lU2V0dGluZ3NFbmQtPntNb250aH07CiAgICAgICAgbXkgJERheUVuZCAgID0gJERhdGVUaW1lU2V0dGluZ3NFbmQtPntEYXl9OwoKICAgICAgICAjIHVwZGF0ZSB1c2VyIHRpbWUgYWNjb3VudCBzZXR0aW5nCiAgICAgICAgJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyU2V0dGluZ3NVcGRhdGUoCiAgICAgICAgICAgIFVzZXJJRCAgICAgICAgPT4gJFRlc3RVc2VySUQsCiAgICAgICAgICAgIERlc2NyaXB0aW9uICAgPT4gJ1NlbGVuaXVtIHRlc3QgYWNjb3VudGluZyB1c2VyJywKICAgICAgICAgICAgQ3JlYXRlUHJvamVjdCA9PiAxLAogICAgICAgICAgICBTaG93T3ZlcnRpbWUgID0+IDEsCiAgICAgICAgICAgIFBlcmlvZCAgICAgICAgPT4gewogICAgICAgICAgICAgICAgMSA9PiB7CiAgICAgICAgICAgICAgICAgICAgRGF0ZVN0YXJ0ICAgPT4gIiRZZWFyU3RhcnQtJE1vbnRoU3RhcnQtJERheVN0YXJ0IiwKICAgICAgICAgICAgICAgICAgICBEYXRlRW5kICAgICA9PiAiJFllYXJFbmQtJE1vbnRoRW5kLSREYXlFbmQiLAogICAgICAgICAgICAgICAgICAgIFdlZWtseUhvdXJzID0+ICczOCcsCiAgICAgICAgICAgICAgICAgICAgTGVhdmVEYXlzICAgPT4gJzI1JywKICAgICAgICAgICAgICAgICAgICBPdmVydGltZSAgICA9PiAnMzgnLAogICAgICAgICAgICAgICAgICAgIFVzZXJTdGF0dXMgID0+IDEsCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICB9LAogICAgICAgICk7CgogICAgICAgICMgY3JlYXRlIHRlc3QgcHJvamVjdAogICAgICAgIG15ICRQcm9qZWN0VGl0bGUgPSAnUHJvamVjdCAnIC4gJEhlbHBlci0+R2V0UmFuZG9tSUQoKTsKICAgICAgICBteSAkUHJvamVjdElEICAgID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Qcm9qZWN0U2V0dGluZ3NJbnNlcnQoCiAgICAgICAgICAgIFByb2plY3QgICAgICAgICAgICA9PiAkUHJvamVjdFRpdGxlLAogICAgICAgICAgICBQcm9qZWN0RGVzY3JpcHRpb24gPT4gJ1NlbGVuaXVtIHRlc3QgcHJvamVjdCcsCiAgICAgICAgICAgIFByb2plY3RTdGF0dXMgICAgICA9PiAxLAogICAgICAgICk7CgogICAgICAgICMgY3JlYXRlIHRlc3QgYWN0aW9uCiAgICAgICAgbXkgJEFjdGlvblRpdGxlID0gJ0FjdGlvbiAnIC4gJEhlbHBlci0+R2V0UmFuZG9tSUQoKTsKICAgICAgICAkVGltZUFjY291bnRpbmdPYmplY3QtPkFjdGlvblNldHRpbmdzSW5zZXJ0KAogICAgICAgICAgICBBY3Rpb24gICAgICAgPT4gJEFjdGlvblRpdGxlLAogICAgICAgICAgICBBY3Rpb25TdGF0dXMgPT4gMSwKICAgICAgICApOwogICAgICAgIG15ICVBY3Rpb25EYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5BY3Rpb25HZXQoCiAgICAgICAgICAgIEFjdGlvbiA9PiAkQWN0aW9uVGl0bGUsCiAgICAgICAgKTsKICAgICAgICBteSAkQWN0aW9uSUQgPSAkQWN0aW9uRGF0YXtJRH07CgogICAgICAgICMgYWRkIHdvcmtpbmcgdW5pdHMgZm9yIHRlc3QgdXNlcgogICAgICAgICRUaW1lQWNjb3VudGluZ09iamVjdC0+V29ya2luZ1VuaXRzSW5zZXJ0KAogICAgICAgICAgICBZZWFyICAgICAgICAgPT4gJFllYXJDdXJyZW50LAogICAgICAgICAgICBNb250aCAgICAgICAgPT4gJE1vbnRoQ3VycmVudCwKICAgICAgICAgICAgRGF5ICAgICAgICAgID0+ICREYXlDdXJyZW50LAogICAgICAgICAgICBMZWF2ZURheSAgICAgPT4gMSwKICAgICAgICAgICAgU2ljayAgICAgICAgID0+IDEsCiAgICAgICAgICAgIE92ZXJ0aW1lICAgICA9PiAxLAogICAgICAgICAgICBXb3JraW5nVW5pdHMgPT4gWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFByb2plY3RJRCA9PiAkUHJvamVjdElELAogICAgICAgICAgICAgICAgICAgIEFjdGlvbklEICA9PiAkQWN0aW9uSUQsCiAgICAgICAgICAgICAgICAgICAgUmVtYXJrICAgID0+ICdTZWxlbml1bSB0ZXN0IHJlbWFyaycsCiAgICAgICAgICAgICAgICAgICAgUGVyaW9kICAgID0+ICc1JywKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgIFVzZXJJRCA9PiAkVGVzdFVzZXJJRCwKICAgICAgICApOwoKICAgICAgICAjIGxvZyBpbiB0ZXN0IHVzZXIKICAgICAgICAkU2VsZW5pdW0tPkxvZ2luKAogICAgICAgICAgICBUeXBlICAgICA9PiAnQWdlbnQnLAogICAgICAgICAgICBVc2VyICAgICA9PiAkVGVzdFVzZXJMb2dpbiwKICAgICAgICAgICAgUGFzc3dvcmQgPT4gJFRlc3RVc2VyTG9naW4sCiAgICAgICAgKTsKCiAgICAgICAgIyBnZXQgc2NyaXB0IGFsaWFzCiAgICAgICAgbXkgJFNjcmlwdEFsaWFzID0gJENvbmZpZ09iamVjdC0+R2V0KCdTY3JpcHRBbGlhcycpOwoKICAgICAgICAjIG5hdmlnYXRlIHRvIEFnZW50VGltZUFjY291bnRpbmdWaWV3IG9mIHRlc3QgY3JlYXRlZCB3b3JrIHVuaXQgZGF5CiAgICAgICAgJFNlbGVuaXVtLT5WZXJpZmllZEdldCgKICAgICAgICAgICAgIiR7U2NyaXB0QWxpYXN9aW5kZXgucGw/QWN0aW9uPUFnZW50VGltZUFjY291bnRpbmdWaWV3O1llYXI9JFllYXJDdXJyZW50O01vbnRoPSRNb250aEN1cnJlbnQ7RGF5PSREYXlDdXJyZW50O1VzZXJJRD0kVGVzdFVzZXJJRCIKICAgICAgICApOwoKICAgICAgICAjIGNoZWNrIHBhZ2UgbGF5b3V0CiAgICAgICAgJFNlbGVuaXVtLT5maW5kX2VsZW1lbnQoICJ0YWJsZSIsICAgICAgICAgICAgICdjc3MnICk7CiAgICAgICAgJFNlbGVuaXVtLT5maW5kX2VsZW1lbnQoICJ0YWJsZSB0aGVhZCB0ciB0aCIsICdjc3MnICk7CiAgICAgICAgJFNlbGVuaXVtLT5maW5kX2VsZW1lbnQoICJ0YWJsZSB0Ym9keSB0ciB0ZCIsICdjc3MnICk7CgogICAgICAgICMgY2hlY2sgdGltZSBhY2NvdW50aW5nIHZpZXcgcGFnZSBJRHMKICAgICAgICBmb3IgbXkgJElEIChxdyhNb250aCBEYXkgWWVhciBEYXlEYXRlcGlja2VySWNvbiBOYXZpZ2F0aW9uU2VsZWN0IExlYXZlRGF5IFNpY2sgT3ZlcnRpbWUpKQogICAgICAgIHsKICAgICAgICAgICAgbXkgJEVsZW1lbnQgPSAkU2VsZW5pdW0tPmZpbmRfZWxlbWVudCggIiMkSUQiLCAnY3NzJyApOwogICAgICAgICAgICAkRWxlbWVudC0+aXNfZW5hYmxlZCgpOwogICAgICAgICAgICAkRWxlbWVudC0+aXNfZGlzcGxheWVkKCk7CiAgICAgICAgfQoKICAgICAgICAjIGNoZWNrIGZvciB0ZXN0IHByb2plY3QgYW5kIGFjdGlvbgogICAgICAgIGZvciBteSAkQ2hlY2sgKCAkUHJvamVjdFRpdGxlLCAkQWN0aW9uVGl0bGUgKSB7CiAgICAgICAgICAgICRTZWxmLT5UcnVlKAogICAgICAgICAgICAgICAgaW5kZXgoICRTZWxlbml1bS0+Z2V0X3BhZ2Vfc291cmNlKCksICRDaGVjayApID4gLTEsCiAgICAgICAgICAgICAgICAiJENoZWNrIGlzIGZvdW5kIiwKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgICMgZ2V0IERCIG9iamVjdAogICAgICAgIG15ICREQk9iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpEQicpOwoKICAgICAgICAjIGdldCBEQiBjbGVhbi11cCBkYXRhCiAgICAgICAgbXkgQERCQ2xlYW5EYXRhID0gKAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBRdW90ZWQgID0+ICRQcm9qZWN0VGl0bGUsCiAgICAgICAgICAgICAgICBUYWJsZSAgID0+ICd0aW1lX2FjY291bnRpbmdfcHJvamVjdCcsCiAgICAgICAgICAgICAgICBXaGVyZSAgID0+ICdwcm9qZWN0JywKICAgICAgICAgICAgICAgIEJpbmQgICAgPT4gJycsCiAgICAgICAgICAgICAgICBNZXNzYWdlID0+ICIkUHJvamVjdFRpdGxlIGlzIGRlbGV0ZWQiLAogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBRdW90ZWQgID0+ICRBY3Rpb25UaXRsZSwKICAgICAgICAgICAgICAgIFRhYmxlICAgPT4gJ3RpbWVfYWNjb3VudGluZ19hY3Rpb24nLAogICAgICAgICAgICAgICAgV2hlcmUgICA9PiAnYWN0aW9uJywKICAgICAgICAgICAgICAgIEJpbmQgICAgPT4gJycsCiAgICAgICAgICAgICAgICBNZXNzYWdlID0+ICIkQWN0aW9uVGl0bGUgaXMgZGVsZXRlZCIsCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIFRhYmxlICAgPT4gJ3RpbWVfYWNjb3VudGluZ190YWJsZScsCiAgICAgICAgICAgICAgICBXaGVyZSAgID0+ICd1c2VyX2lkJywKICAgICAgICAgICAgICAgIEJpbmQgICAgPT4gJFRlc3RVc2VySUQsCiAgICAgICAgICAgICAgICBNZXNzYWdlID0+ICJUZXN0IHVzZXIgJFRlc3RVc2VySUQgaXMgcmVtb3ZlZCBmcm9tIGFjY291bnRpbmcgdGFibGUiLAogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBUYWJsZSAgID0+ICd0aW1lX2FjY291bnRpbmdfdXNlcicsCiAgICAgICAgICAgICAgICBXaGVyZSAgID0+ICd1c2VyX2lkJywKICAgICAgICAgICAgICAgIEJpbmQgICAgPT4gJFRlc3RVc2VySUQsCiAgICAgICAgICAgICAgICBNZXNzYWdlID0+ICJUZXN0IHVzZXIgJFRlc3RVc2VySUQgaXMgcmVtb3ZlZCBmcm9tIGFjY291bnRpbmcgc2V0dGluZyIsCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIFRhYmxlICAgPT4gJ3RpbWVfYWNjb3VudGluZ191c2VyX3BlcmlvZCcsCiAgICAgICAgICAgICAgICBXaGVyZSAgID0+ICd1c2VyX2lkJywKICAgICAgICAgICAgICAgIEJpbmQgICAgPT4gJFRlc3RVc2VySUQsCiAgICAgICAgICAgICAgICBNZXNzYWdlID0+ICJUZXN0IHVzZXIgJFRlc3RVc2VySUQgaXMgcmVtb3ZlZCBmcm9tIGFjY291bnRpbmcgcGVyaW9kIiwKICAgICAgICAgICAgfSwKICAgICAgICApOwoKICAgICAgICAjIGNsZWFuIHN5c3RlbSBmcm9tIHRlc3QgY3JlYXRlZCBkYXRhCiAgICAgICAgZm9yIG15ICREZWxldGUgKEBEQkNsZWFuRGF0YSkgewogICAgICAgICAgICBpZiAoICREZWxldGUtPntRdW90ZWR9ICkgewogICAgICAgICAgICAgICAgJERlbGV0ZS0+e0JpbmR9ID0gJERCT2JqZWN0LT5RdW90ZSggJERlbGV0ZS0+e1F1b3RlZH0gKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBteSAkU3VjY2VzcyA9ICREQk9iamVjdC0+RG8oCiAgICAgICAgICAgICAgICBTUUwgID0+ICJERUxFVEUgRlJPTSAkRGVsZXRlLT57VGFibGV9IFdIRVJFICREZWxldGUtPntXaGVyZX0gPSA/IiwKICAgICAgICAgICAgICAgIEJpbmQgPT4gWyBcJERlbGV0ZS0+e0JpbmR9IF0sCiAgICAgICAgICAgICk7CiAgICAgICAgICAgICRTZWxmLT5UcnVlKAogICAgICAgICAgICAgICAgJFN1Y2Nlc3MsCiAgICAgICAgICAgICAgICAkRGVsZXRlLT57TWVzc2FnZX0sCiAgICAgICAgICAgICk7CiAgICAgICAgfQogICAgfQopOwoKMTsK</File>
        <File Location="scripts/test/Selenium/Output/Notification/TimeAccounting.t" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgp1c2Ugc3RyaWN0Owp1c2Ugd2FybmluZ3M7CnVzZSB1dGY4OwoKb3VyICRTZWxmOwoKIyBnZXQgc2VsZW5pdW0gb2JqZWN0Cm15ICRTZWxlbml1bSA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpVbml0VGVzdDo6U2VsZW5pdW0nKTsKCiRTZWxlbml1bS0+UnVuVGVzdCgKICAgIHN1YiB7CgogICAgICAgICMgZ2V0IGhlbHBlciBvYmplY3QKICAgICAgICBteSAkSGVscGVyID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlVuaXRUZXN0OjpIZWxwZXInKTsKCiAgICAgICAgIyB1c2UgYSBjYWxlbmRhciB3aXRoIHRoZSBzYW1lIGJ1c2luZXNzIGhvdXJzIGZvciBldmVyeSBkYXkgc28gdGhhdCB0aGUgVVQgcnVucyBjb3JyZWN0bHkKICAgICAgICAjIG9uIGV2ZXJ5IGRheSBvZiB0aGUgd2VlayBhbmQgb3V0c2lkZSB1c3VhbCBidXNpbmVzcyBob3Vycy4KICAgICAgICBteSAlV2VlazsKICAgICAgICBteSBARGF5cyA9IHF3KFN1biBNb24gVHVlIFdlZCBUaHUgRnJpIFNhdCk7CiAgICAgICAgZm9yIG15ICREYXkgKEBEYXlzKSB7CiAgICAgICAgICAgICRXZWVreyREYXl9ID0gWyAwIC4uIDIzIF07CiAgICAgICAgfQoKICAgICAgICAkSGVscGVyLT5Db25maWdTZXR0aW5nQ2hhbmdlKAogICAgICAgICAgICBLZXkgICA9PiAnVGltZVdvcmtpbmdIb3VycycsCiAgICAgICAgICAgIFZhbHVlID0+IFwlV2VlaywKICAgICAgICApOwoKICAgICAgICAkSGVscGVyLT5Db25maWdTZXR0aW5nQ2hhbmdlKAogICAgICAgICAgICBLZXkgICA9PiAnVGltZVdvcmtpbmdIb3VycycsCiAgICAgICAgICAgIFZhbHVlID0+IFwlV2VlaywKICAgICAgICApOwoKICAgICAgICAjIGNyZWF0ZSB0ZXN0IHVzZXIgYW5kIGxvZ2luCiAgICAgICAgbXkgJFRlc3RVc2VyTG9naW4gPSAkSGVscGVyLT5UZXN0VXNlckNyZWF0ZSgKICAgICAgICAgICAgR3JvdXBzID0+IFsgJ2FkbWluJywgJ3VzZXJzJyBdLAogICAgICAgICkgfHwgZGllICJEaWQgbm90IGdldCB0ZXN0IHVzZXIiOwoKICAgICAgICAjIGdldCB0ZXN0IHVzZXIgSUQKICAgICAgICBteSAkVGVzdFVzZXJJRCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpVc2VyJyktPlVzZXJMb29rdXAoCiAgICAgICAgICAgIFVzZXJMb2dpbiA9PiAkVGVzdFVzZXJMb2dpbiwKICAgICAgICApOwoKICAgICAgICAjIGdldCB0aW1lIGFjY291bnRpbmcgb2JqZWN0CiAgICAgICAgbXkgJFRpbWVBY2NvdW50aW5nT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlRpbWVBY2NvdW50aW5nJyk7CgogICAgICAgICMgaW5zZXJ0IHRlc3QgdXNlciBpbnRvIGFjY291bnQgc2V0dGluZwogICAgICAgICRUaW1lQWNjb3VudGluZ09iamVjdC0+VXNlclNldHRpbmdzSW5zZXJ0KAogICAgICAgICAgICBVc2VySUQgPT4gJFRlc3RVc2VySUQsCiAgICAgICAgICAgIFBlcmlvZCA9PiAnMScsCiAgICAgICAgKTsKCiAgICAgICAgbXkgJERhdGVUaW1lT2JqZWN0ID0gJEtlcm5lbDo6T00tPkNyZWF0ZSgnS2VybmVsOjpTeXN0ZW06OkRhdGVUaW1lJyk7CgogICAgICAgICREYXRlVGltZU9iamVjdC0+U3VidHJhY3QoIERheXMgPT4gNDAgKTsKICAgICAgICBteSAkRGF0ZVRpbWVTZXR0aW5nc1N0YXJ0ID0gJERhdGVUaW1lT2JqZWN0LT5HZXQoKTsKICAgICAgICBteSAkWWVhclN0YXJ0ICAgICAgICAgICAgID0gJERhdGVUaW1lU2V0dGluZ3NTdGFydC0+e1llYXJ9OwogICAgICAgIG15ICRNb250aFN0YXJ0ICAgICAgICAgICAgPSAkRGF0ZVRpbWVTZXR0aW5nc1N0YXJ0LT57TW9udGh9OwogICAgICAgIG15ICREYXlTdGFydCAgICAgICAgICAgICAgPSAkRGF0ZVRpbWVTZXR0aW5nc1N0YXJ0LT57RGF5fTsKCiAgICAgICAgJERhdGVUaW1lT2JqZWN0LT5BZGQoCiAgICAgICAgICAgIERheXMgICAgPT4gNDAsCiAgICAgICAgICAgIFNlY29uZHMgPT4gMQogICAgICAgICk7CiAgICAgICAgbXkgJERhdGVUaW1lU2V0dGluZ3MgPSAkRGF0ZVRpbWVPYmplY3QtPkdldCgpOwoKICAgICAgICBteSAkWWVhckN1cnJlbnQgID0gJERhdGVUaW1lU2V0dGluZ3MtPntZZWFyfTsKICAgICAgICBteSAkTW9udGhDdXJyZW50ID0gJERhdGVUaW1lU2V0dGluZ3MtPntNb250aH07CiAgICAgICAgbXkgJERheUN1cnJlbnQgICA9ICREYXRlVGltZVNldHRpbmdzLT57RGF5fTsKCiAgICAgICAgJERhdGVUaW1lT2JqZWN0LT5TdWJ0cmFjdCggU2Vjb25kcyA9PiAxICk7CiAgICAgICAgJERhdGVUaW1lT2JqZWN0LT5BZGQoIERheXMgPT4gMSApOwogICAgICAgIG15ICREYXRlVGltZVNldHRpbmdzRW5kID0gJERhdGVUaW1lT2JqZWN0LT5HZXQoKTsKCiAgICAgICAgbXkgJFllYXJFbmQgID0gJERhdGVUaW1lU2V0dGluZ3NFbmQtPntZZWFyfTsKICAgICAgICBteSAkTW9udGhFbmQgPSAkRGF0ZVRpbWVTZXR0aW5nc0VuZC0+e01vbnRofTsKICAgICAgICBteSAkRGF5RW5kICAgPSAkRGF0ZVRpbWVTZXR0aW5nc0VuZC0+e0RheX07CgogICAgICAgICMgdXBkYXRlIHVzZXIgdGltZSBhY2NvdW50IHNldHRpbmcKICAgICAgICAkVGltZUFjY291bnRpbmdPYmplY3QtPlVzZXJTZXR0aW5nc1VwZGF0ZSgKICAgICAgICAgICAgVXNlcklEICAgICAgICA9PiAkVGVzdFVzZXJJRCwKICAgICAgICAgICAgRGVzY3JpcHRpb24gICA9PiAnU2VsZW5pdW0gdGVzdCBhY2NvdW50aW5nIHVzZXInLAogICAgICAgICAgICBDcmVhdGVQcm9qZWN0ID0+IDEsCiAgICAgICAgICAgIFNob3dPdmVydGltZSAgPT4gMSwKICAgICAgICAgICAgUGVyaW9kICAgICAgICA9PiB7CiAgICAgICAgICAgICAgICAxID0+IHsKICAgICAgICAgICAgICAgICAgICBEYXRlU3RhcnQgICA9PiAiJFllYXJTdGFydC0kTW9udGhTdGFydC0kRGF5U3RhcnQiLAogICAgICAgICAgICAgICAgICAgIERhdGVFbmQgICAgID0+ICIkWWVhckVuZC0kTW9udGhFbmQtJERheUVuZCIsCiAgICAgICAgICAgICAgICAgICAgV2Vla2x5SG91cnMgPT4gJzM4JywKICAgICAgICAgICAgICAgICAgICBMZWF2ZURheXMgICA9PiAnMjUnLAogICAgICAgICAgICAgICAgICAgIE92ZXJ0aW1lICAgID0+ICczOCcsCiAgICAgICAgICAgICAgICAgICAgVXNlclN0YXR1cyAgPT4gMSwKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgIH0sCiAgICAgICAgKTsKCiAgICAgICAgIyBjcmVhdGUgdGVzdCBwcm9qZWN0CiAgICAgICAgbXkgJFByb2plY3RUaXRsZSA9ICdQcm9qZWN0ICcgLiAkSGVscGVyLT5HZXRSYW5kb21JRCgpOwogICAgICAgIG15ICRQcm9qZWN0SUQgICAgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPlByb2plY3RTZXR0aW5nc0luc2VydCgKICAgICAgICAgICAgUHJvamVjdCAgICAgICAgICAgID0+ICRQcm9qZWN0VGl0bGUsCiAgICAgICAgICAgIFByb2plY3REZXNjcmlwdGlvbiA9PiAnU2VsZW5pdW0gdGVzdCBwcm9qZWN0JywKICAgICAgICAgICAgUHJvamVjdFN0YXR1cyAgICAgID0+IDEsCiAgICAgICAgKTsKCiAgICAgICAgIyBjcmVhdGUgdGVzdCBhY3Rpb24KICAgICAgICBteSAkQWN0aW9uVGl0bGUgPSAnQWN0aW9uICcgLiAkSGVscGVyLT5HZXRSYW5kb21JRCgpOwogICAgICAgICRUaW1lQWNjb3VudGluZ09iamVjdC0+QWN0aW9uU2V0dGluZ3NJbnNlcnQoCiAgICAgICAgICAgIEFjdGlvbiAgICAgICA9PiAkQWN0aW9uVGl0bGUsCiAgICAgICAgICAgIEFjdGlvblN0YXR1cyA9PiAxLAogICAgICAgICk7CiAgICAgICAgbXkgJUFjdGlvbkRhdGEgPSAkVGltZUFjY291bnRpbmdPYmplY3QtPkFjdGlvbkdldCgKICAgICAgICAgICAgQWN0aW9uID0+ICRBY3Rpb25UaXRsZSwKICAgICAgICApOwogICAgICAgIG15ICRBY3Rpb25JRCA9ICRBY3Rpb25EYXRhe0lEfTsKCiAgICAgICAgIyBhZGQgd29ya2luZyB1bml0cyBmb3IgdGVzdCB1c2VyCiAgICAgICAgJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Xb3JraW5nVW5pdHNJbnNlcnQoCiAgICAgICAgICAgIFllYXIgICAgICAgICA9PiAkWWVhckN1cnJlbnQsCiAgICAgICAgICAgIE1vbnRoICAgICAgICA9PiAkTW9udGhDdXJyZW50LAogICAgICAgICAgICBEYXkgICAgICAgICAgPT4gJERheUN1cnJlbnQsCiAgICAgICAgICAgIExlYXZlRGF5ICAgICA9PiAxLAogICAgICAgICAgICBTaWNrICAgICAgICAgPT4gMSwKICAgICAgICAgICAgT3ZlcnRpbWUgICAgID0+IDEsCiAgICAgICAgICAgIFdvcmtpbmdVbml0cyA9PiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgUHJvamVjdElEID0+ICRQcm9qZWN0SUQsCiAgICAgICAgICAgICAgICAgICAgQWN0aW9uSUQgID0+ICRBY3Rpb25JRCwKICAgICAgICAgICAgICAgICAgICBSZW1hcmsgICAgPT4gJ1NlbGVuaXVtIHRlc3QgcmVtYXJrJywKICAgICAgICAgICAgICAgICAgICBQZXJpb2QgICAgPT4gJzUnLAogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgXSwKICAgICAgICAgICAgVXNlcklEID0+ICRUZXN0VXNlcklELAogICAgICAgICk7CgogICAgICAgICMgbG9nIGluIHRlc3QgdXNlcgogICAgICAgICRTZWxlbml1bS0+TG9naW4oCiAgICAgICAgICAgIFR5cGUgICAgID0+ICdBZ2VudCcsCiAgICAgICAgICAgIFVzZXIgICAgID0+ICRUZXN0VXNlckxvZ2luLAogICAgICAgICAgICBQYXNzd29yZCA9PiAkVGVzdFVzZXJMb2dpbiwKICAgICAgICApOwoKICAgICAgICAjIHZlcmlmeSB0aGVyZSBpcyBub3RpZmljYXRpb24gbWVzc2FnZQogICAgICAgIG15ICROb3RpZmljYXRpb25NZXNzYWdlID0gJ1BsZWFzZSBpbnNlcnQgeW91ciB3b3JraW5nIGhvdXJzISc7CiAgICAgICAgJFNlbGYtPlRydWUoCiAgICAgICAgICAgIGluZGV4KCAkU2VsZW5pdW0tPmdldF9wYWdlX3NvdXJjZSgpLCAkTm90aWZpY2F0aW9uTWVzc2FnZSApID4gLTEsCiAgICAgICAgICAgICIkTm90aWZpY2F0aW9uTWVzc2FnZSBpcyBmb3VuZCIsCiAgICAgICAgKTsKCiAgICAgICAgIyBnZXQgREIgb2JqZWN0CiAgICAgICAgbXkgJERCT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkRCJyk7CgogICAgICAgICMgZ2V0IERCIGNsZWFuLXVwIGRhdGEKICAgICAgICBteSBAREJDbGVhbkRhdGEgPSAoCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIFF1b3RlZCAgPT4gJFByb2plY3RUaXRsZSwKICAgICAgICAgICAgICAgIFRhYmxlICAgPT4gJ3RpbWVfYWNjb3VudGluZ19wcm9qZWN0JywKICAgICAgICAgICAgICAgIFdoZXJlICAgPT4gJ3Byb2plY3QnLAogICAgICAgICAgICAgICAgQmluZCAgICA9PiAnJywKICAgICAgICAgICAgICAgIE1lc3NhZ2UgPT4gIiRQcm9qZWN0VGl0bGUgaXMgZGVsZXRlZCIsCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIFF1b3RlZCAgPT4gJEFjdGlvblRpdGxlLAogICAgICAgICAgICAgICAgVGFibGUgICA9PiAndGltZV9hY2NvdW50aW5nX2FjdGlvbicsCiAgICAgICAgICAgICAgICBXaGVyZSAgID0+ICdhY3Rpb24nLAogICAgICAgICAgICAgICAgQmluZCAgICA9PiAnJywKICAgICAgICAgICAgICAgIE1lc3NhZ2UgPT4gIiRBY3Rpb25UaXRsZSBpcyBkZWxldGVkIiwKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgVGFibGUgICA9PiAndGltZV9hY2NvdW50aW5nX3RhYmxlJywKICAgICAgICAgICAgICAgIFdoZXJlICAgPT4gJ3VzZXJfaWQnLAogICAgICAgICAgICAgICAgQmluZCAgICA9PiAkVGVzdFVzZXJJRCwKICAgICAgICAgICAgICAgIE1lc3NhZ2UgPT4gIlRlc3QgdXNlciAkVGVzdFVzZXJJRCBpcyByZW1vdmVkIGZyb20gYWNjb3VudGluZyB0YWJsZSIsCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIFRhYmxlICAgPT4gJ3RpbWVfYWNjb3VudGluZ191c2VyJywKICAgICAgICAgICAgICAgIFdoZXJlICAgPT4gJ3VzZXJfaWQnLAogICAgICAgICAgICAgICAgQmluZCAgICA9PiAkVGVzdFVzZXJJRCwKICAgICAgICAgICAgICAgIE1lc3NhZ2UgPT4gIlRlc3QgdXNlciAkVGVzdFVzZXJJRCBpcyByZW1vdmVkIGZyb20gYWNjb3VudGluZyBzZXR0aW5nIiwKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgVGFibGUgICA9PiAndGltZV9hY2NvdW50aW5nX3VzZXJfcGVyaW9kJywKICAgICAgICAgICAgICAgIFdoZXJlICAgPT4gJ3VzZXJfaWQnLAogICAgICAgICAgICAgICAgQmluZCAgICA9PiAkVGVzdFVzZXJJRCwKICAgICAgICAgICAgICAgIE1lc3NhZ2UgPT4gIlRlc3QgdXNlciAkVGVzdFVzZXJJRCBpcyByZW1vdmVkIGZyb20gYWNjb3VudGluZyBwZXJpb2QiLAogICAgICAgICAgICB9LAogICAgICAgICk7CgogICAgICAgICMgY2xlYW4gc3lzdGVtIGZyb20gdGVzdCBjcmVhdGVkIGRhdGEKICAgICAgICBmb3IgbXkgJERlbGV0ZSAoQERCQ2xlYW5EYXRhKSB7CiAgICAgICAgICAgIGlmICggJERlbGV0ZS0+e1F1b3RlZH0gKSB7CiAgICAgICAgICAgICAgICAkRGVsZXRlLT57QmluZH0gPSAkREJPYmplY3QtPlF1b3RlKCAkRGVsZXRlLT57UXVvdGVkfSApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIG15ICRTdWNjZXNzID0gJERCT2JqZWN0LT5EbygKICAgICAgICAgICAgICAgIFNRTCAgPT4gIkRFTEVURSBGUk9NICREZWxldGUtPntUYWJsZX0gV0hFUkUgJERlbGV0ZS0+e1doZXJlfSA9ID8iLAogICAgICAgICAgICAgICAgQmluZCA9PiBbIFwkRGVsZXRlLT57QmluZH0gXSwKICAgICAgICAgICAgKTsKICAgICAgICAgICAgJFNlbGYtPlRydWUoCiAgICAgICAgICAgICAgICAkU3VjY2VzcywKICAgICAgICAgICAgICAgICREZWxldGUtPntNZXNzYWdlfSwKICAgICAgICAgICAgKTsKICAgICAgICB9CiAgICB9Cik7CgoxOwo=</File>
        <File Location="scripts/test/Selenium/Output/ToolBar/IncompleteWorkingDays.t" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgp1c2Ugc3RyaWN0Owp1c2Ugd2FybmluZ3M7CnVzZSB1dGY4OwoKb3VyICRTZWxmOwoKbXkgJFNlbGVuaXVtID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlVuaXRUZXN0OjpTZWxlbml1bScpOwoKJFNlbGVuaXVtLT5SdW5UZXN0KAogICAgc3ViIHsKCiAgICAgICAgbXkgJEhlbHBlciA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpVbml0VGVzdDo6SGVscGVyJyk7CgogICAgICAgICMgdXNlIGEgY2FsZW5kYXIgd2l0aCB0aGUgc2FtZSBidXNpbmVzcyBob3VycyBmb3IgZXZlcnkgZGF5IHNvIHRoYXQgdGhlIFVUIHJ1bnMgY29ycmVjdGx5CiAgICAgICAgIyBvbiBldmVyeSBkYXkgb2YgdGhlIHdlZWsgYW5kIG91dHNpZGUgdXN1YWwgYnVzaW5lc3MgaG91cnMuCiAgICAgICAgbXkgJVdlZWs7CiAgICAgICAgbXkgQERheXMgPSBxdyhTdW4gTW9uIFR1ZSBXZWQgVGh1IEZyaSBTYXQpOwogICAgICAgIGZvciBteSAkRGF5IChARGF5cykgewogICAgICAgICAgICAkV2Vla3skRGF5fSA9IFsgMCAuLiAyMyBdOwogICAgICAgIH0KCiAgICAgICAgJEhlbHBlci0+Q29uZmlnU2V0dGluZ0NoYW5nZSgKICAgICAgICAgICAgS2V5ICAgPT4gJ1RpbWVXb3JraW5nSG91cnMnLAogICAgICAgICAgICBWYWx1ZSA9PiBcJVdlZWssCiAgICAgICAgKTsKCiAgICAgICAgIyBjcmVhdGUgdGVzdCB1c2VyIGFuZCBsb2dpbgogICAgICAgIG15ICRUZXN0VXNlckxvZ2luID0gJEhlbHBlci0+VGVzdFVzZXJDcmVhdGUoCiAgICAgICAgICAgIEdyb3VwcyA9PiBbICdhZG1pbicsICd1c2VycycgXSwKICAgICAgICApIHx8IGRpZSAiRGlkIG5vdCBnZXQgdGVzdCB1c2VyIjsKCiAgICAgICAgIyBnZXQgdGVzdCB1c2VyIElECiAgICAgICAgbXkgJFRlc3RVc2VySUQgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VXNlcicpLT5Vc2VyTG9va3VwKAogICAgICAgICAgICBVc2VyTG9naW4gPT4gJFRlc3RVc2VyTG9naW4sCiAgICAgICAgKTsKCiAgICAgICAgIyBnZXQgdGltZSBhY2NvdW50aW5nIG9iamVjdAogICAgICAgIG15ICRUaW1lQWNjb3VudGluZ09iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpUaW1lQWNjb3VudGluZycpOwoKICAgICAgICAjIGluc2VydCB0ZXN0IHVzZXIgaW50byBhY2NvdW50IHNldHRpbmcKICAgICAgICAkVGltZUFjY291bnRpbmdPYmplY3QtPlVzZXJTZXR0aW5nc0luc2VydCgKICAgICAgICAgICAgVXNlcklEID0+ICRUZXN0VXNlcklELAogICAgICAgICAgICBQZXJpb2QgPT4gJzEnLAogICAgICAgICk7CgogICAgICAgIG15ICREYXRlVGltZU9iamVjdCA9ICRLZXJuZWw6Ok9NLT5DcmVhdGUoJ0tlcm5lbDo6U3lzdGVtOjpEYXRlVGltZScpOwoKICAgICAgICAkRGF0ZVRpbWVPYmplY3QtPlN1YnRyYWN0KCBEYXlzID0+IDQwICk7CiAgICAgICAgbXkgJERhdGVUaW1lU2V0dGluZ3NTdGFydCA9ICREYXRlVGltZU9iamVjdC0+R2V0KCk7CiAgICAgICAgbXkgJFllYXJTdGFydCAgICAgICAgICAgICA9ICREYXRlVGltZVNldHRpbmdzU3RhcnQtPntZZWFyfTsKICAgICAgICBteSAkTW9udGhTdGFydCAgICAgICAgICAgID0gJERhdGVUaW1lU2V0dGluZ3NTdGFydC0+e01vbnRofTsKICAgICAgICBteSAkRGF5U3RhcnQgICAgICAgICAgICAgID0gJERhdGVUaW1lU2V0dGluZ3NTdGFydC0+e0RheX07CgogICAgICAgICREYXRlVGltZU9iamVjdC0+QWRkKAogICAgICAgICAgICBEYXlzICAgID0+IDQwLAogICAgICAgICAgICBTZWNvbmRzID0+IDEKICAgICAgICApOwogICAgICAgIG15ICREYXRlVGltZVNldHRpbmdzID0gJERhdGVUaW1lT2JqZWN0LT5HZXQoKTsKCiAgICAgICAgbXkgJFllYXJDdXJyZW50ICA9ICREYXRlVGltZVNldHRpbmdzLT57WWVhcn07CiAgICAgICAgbXkgJE1vbnRoQ3VycmVudCA9ICREYXRlVGltZVNldHRpbmdzLT57TW9udGh9OwogICAgICAgIG15ICREYXlDdXJyZW50ICAgPSAkRGF0ZVRpbWVTZXR0aW5ncy0+e0RheX07CgogICAgICAgICREYXRlVGltZU9iamVjdC0+U3VidHJhY3QoIFNlY29uZHMgPT4gMSApOwogICAgICAgICREYXRlVGltZU9iamVjdC0+QWRkKCBEYXlzID0+IDEgKTsKICAgICAgICBteSAkRGF0ZVRpbWVTZXR0aW5nc0VuZCA9ICREYXRlVGltZU9iamVjdC0+R2V0KCk7CgogICAgICAgIG15ICRZZWFyRW5kICA9ICREYXRlVGltZVNldHRpbmdzRW5kLT57WWVhcn07CiAgICAgICAgbXkgJE1vbnRoRW5kID0gJERhdGVUaW1lU2V0dGluZ3NFbmQtPntNb250aH07CiAgICAgICAgbXkgJERheUVuZCAgID0gJERhdGVUaW1lU2V0dGluZ3NFbmQtPntEYXl9OwoKICAgICAgICAjIHVwZGF0ZSB1c2VyIHRpbWUgYWNjb3VudCBzZXR0aW5nCiAgICAgICAgJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Vc2VyU2V0dGluZ3NVcGRhdGUoCiAgICAgICAgICAgIFVzZXJJRCAgICAgICAgPT4gJFRlc3RVc2VySUQsCiAgICAgICAgICAgIERlc2NyaXB0aW9uICAgPT4gJ1NlbGVuaXVtIHRlc3QgYWNjb3VudGluZyB1c2VyJywKICAgICAgICAgICAgQ3JlYXRlUHJvamVjdCA9PiAxLAogICAgICAgICAgICBTaG93T3ZlcnRpbWUgID0+IDEsCiAgICAgICAgICAgIFBlcmlvZCAgICAgICAgPT4gewogICAgICAgICAgICAgICAgMSA9PiB7CiAgICAgICAgICAgICAgICAgICAgRGF0ZVN0YXJ0ICAgPT4gIiRZZWFyU3RhcnQtJE1vbnRoU3RhcnQtJERheVN0YXJ0IiwKICAgICAgICAgICAgICAgICAgICBEYXRlRW5kICAgICA9PiAiJFllYXJFbmQtJE1vbnRoRW5kLSREYXlFbmQiLAogICAgICAgICAgICAgICAgICAgIFdlZWtseUhvdXJzID0+ICczOCcsCiAgICAgICAgICAgICAgICAgICAgTGVhdmVEYXlzICAgPT4gJzI1JywKICAgICAgICAgICAgICAgICAgICBPdmVydGltZSAgICA9PiAnMzgnLAogICAgICAgICAgICAgICAgICAgIFVzZXJTdGF0dXMgID0+IDEsCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICB9LAogICAgICAgICk7CgogICAgICAgICMgY3JlYXRlIHRlc3QgcHJvamVjdAogICAgICAgIG15ICRQcm9qZWN0VGl0bGUgPSAnUHJvamVjdCAnIC4gJEhlbHBlci0+R2V0UmFuZG9tSUQoKTsKICAgICAgICBteSAkUHJvamVjdElEICAgID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5Qcm9qZWN0U2V0dGluZ3NJbnNlcnQoCiAgICAgICAgICAgIFByb2plY3QgICAgICAgICAgICA9PiAkUHJvamVjdFRpdGxlLAogICAgICAgICAgICBQcm9qZWN0RGVzY3JpcHRpb24gPT4gJ1NlbGVuaXVtIHRlc3QgcHJvamVjdCcsCiAgICAgICAgICAgIFByb2plY3RTdGF0dXMgICAgICA9PiAxLAogICAgICAgICk7CgogICAgICAgICMgY3JlYXRlIHRlc3QgYWN0aW9uCiAgICAgICAgbXkgJEFjdGlvblRpdGxlID0gJ0FjdGlvbiAnIC4gJEhlbHBlci0+R2V0UmFuZG9tSUQoKTsKICAgICAgICAkVGltZUFjY291bnRpbmdPYmplY3QtPkFjdGlvblNldHRpbmdzSW5zZXJ0KAogICAgICAgICAgICBBY3Rpb24gICAgICAgPT4gJEFjdGlvblRpdGxlLAogICAgICAgICAgICBBY3Rpb25TdGF0dXMgPT4gMSwKICAgICAgICApOwogICAgICAgIG15ICVBY3Rpb25EYXRhID0gJFRpbWVBY2NvdW50aW5nT2JqZWN0LT5BY3Rpb25HZXQoCiAgICAgICAgICAgIEFjdGlvbiA9PiAkQWN0aW9uVGl0bGUsCiAgICAgICAgKTsKICAgICAgICBteSAkQWN0aW9uSUQgPSAkQWN0aW9uRGF0YXtJRH07CgogICAgICAgICMgYWRkIHdvcmtpbmcgdW5pdHMgZm9yIHRlc3QgdXNlcgogICAgICAgICRUaW1lQWNjb3VudGluZ09iamVjdC0+V29ya2luZ1VuaXRzSW5zZXJ0KAogICAgICAgICAgICBZZWFyICAgICAgICAgPT4gJFllYXJDdXJyZW50LAogICAgICAgICAgICBNb250aCAgICAgICAgPT4gJE1vbnRoQ3VycmVudCwKICAgICAgICAgICAgRGF5ICAgICAgICAgID0+ICREYXlDdXJyZW50LAogICAgICAgICAgICBMZWF2ZURheSAgICAgPT4gMSwKICAgICAgICAgICAgU2ljayAgICAgICAgID0+IDEsCiAgICAgICAgICAgIE92ZXJ0aW1lICAgICA9PiAxLAogICAgICAgICAgICBXb3JraW5nVW5pdHMgPT4gWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFByb2plY3RJRCA9PiAkUHJvamVjdElELAogICAgICAgICAgICAgICAgICAgIEFjdGlvbklEICA9PiAkQWN0aW9uSUQsCiAgICAgICAgICAgICAgICAgICAgUmVtYXJrICAgID0+ICdTZWxlbml1bSB0ZXN0IHJlbWFyaycsCiAgICAgICAgICAgICAgICAgICAgUGVyaW9kICAgID0+ICc1JywKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgIFVzZXJJRCA9PiAkVGVzdFVzZXJJRCwKICAgICAgICApOwoKICAgICAgICAjIGxvZyBpbiB0ZXN0IHVzZXIKICAgICAgICAkU2VsZW5pdW0tPkxvZ2luKAogICAgICAgICAgICBUeXBlICAgICA9PiAnQWdlbnQnLAogICAgICAgICAgICBVc2VyICAgICA9PiAkVGVzdFVzZXJMb2dpbiwKICAgICAgICAgICAgUGFzc3dvcmQgPT4gJFRlc3RVc2VyTG9naW4sCiAgICAgICAgKTsKCiAgICAgICAgIyB2ZXJpZnkgdGhlcmUgaXMgdG9vbCBiYXIgZm9yIGluY29tcGxldGUgZGF5cwogICAgICAgIG15ICRUb29sQmFySW5jb21wbGV0ZURheXMgPSAkU2VsZW5pdW0tPmZpbmRfZWxlbWVudCgiLy9hW2NvbnRhaW5zKFxAdGl0bGUsIFwnSW5jb21wbGV0ZSB3b3JraW5nIGRheXM6JyldIik7CiAgICAgICAgJFRvb2xCYXJJbmNvbXBsZXRlRGF5cy0+aXNfZW5hYmxlZCgpOwogICAgICAgICRUb29sQmFySW5jb21wbGV0ZURheXMtPmlzX2Rpc3BsYXllZCgpOwoKICAgICAgICAjIGdldCBEQiBvYmplY3QKICAgICAgICBteSAkREJPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6REInKTsKCiAgICAgICAgIyBnZXQgREIgY2xlYW4tdXAgZGF0YQogICAgICAgIG15IEBEQkNsZWFuRGF0YSA9ICgKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgUXVvdGVkICA9PiAkUHJvamVjdFRpdGxlLAogICAgICAgICAgICAgICAgVGFibGUgICA9PiAndGltZV9hY2NvdW50aW5nX3Byb2plY3QnLAogICAgICAgICAgICAgICAgV2hlcmUgICA9PiAncHJvamVjdCcsCiAgICAgICAgICAgICAgICBCaW5kICAgID0+ICcnLAogICAgICAgICAgICAgICAgTWVzc2FnZSA9PiAiJFByb2plY3RUaXRsZSBpcyBkZWxldGVkIiwKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgUXVvdGVkICA9PiAkQWN0aW9uVGl0bGUsCiAgICAgICAgICAgICAgICBUYWJsZSAgID0+ICd0aW1lX2FjY291bnRpbmdfYWN0aW9uJywKICAgICAgICAgICAgICAgIFdoZXJlICAgPT4gJ2FjdGlvbicsCiAgICAgICAgICAgICAgICBCaW5kICAgID0+ICcnLAogICAgICAgICAgICAgICAgTWVzc2FnZSA9PiAiJEFjdGlvblRpdGxlIGlzIGRlbGV0ZWQiLAogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBUYWJsZSAgID0+ICd0aW1lX2FjY291bnRpbmdfdGFibGUnLAogICAgICAgICAgICAgICAgV2hlcmUgICA9PiAndXNlcl9pZCcsCiAgICAgICAgICAgICAgICBCaW5kICAgID0+ICRUZXN0VXNlcklELAogICAgICAgICAgICAgICAgTWVzc2FnZSA9PiAiVGVzdCB1c2VyICRUZXN0VXNlcklEIGlzIHJlbW92ZWQgZnJvbSBhY2NvdW50aW5nIHRhYmxlIiwKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgVGFibGUgICA9PiAndGltZV9hY2NvdW50aW5nX3VzZXInLAogICAgICAgICAgICAgICAgV2hlcmUgICA9PiAndXNlcl9pZCcsCiAgICAgICAgICAgICAgICBCaW5kICAgID0+ICRUZXN0VXNlcklELAogICAgICAgICAgICAgICAgTWVzc2FnZSA9PiAiVGVzdCB1c2VyICRUZXN0VXNlcklEIGlzIHJlbW92ZWQgZnJvbSBhY2NvdW50aW5nIHNldHRpbmciLAogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBUYWJsZSAgID0+ICd0aW1lX2FjY291bnRpbmdfdXNlcl9wZXJpb2QnLAogICAgICAgICAgICAgICAgV2hlcmUgICA9PiAndXNlcl9pZCcsCiAgICAgICAgICAgICAgICBCaW5kICAgID0+ICRUZXN0VXNlcklELAogICAgICAgICAgICAgICAgTWVzc2FnZSA9PiAiVGVzdCB1c2VyICRUZXN0VXNlcklEIGlzIHJlbW92ZWQgZnJvbSBhY2NvdW50aW5nIHBlcmlvZCIsCiAgICAgICAgICAgIH0sCiAgICAgICAgKTsKCiAgICAgICAgIyBjbGVhbiBzeXN0ZW0gZnJvbSB0ZXN0IGNyZWF0ZWQgZGF0YQogICAgICAgIGZvciBteSAkRGVsZXRlIChAREJDbGVhbkRhdGEpIHsKICAgICAgICAgICAgaWYgKCAkRGVsZXRlLT57UXVvdGVkfSApIHsKICAgICAgICAgICAgICAgICREZWxldGUtPntCaW5kfSA9ICREQk9iamVjdC0+UXVvdGUoICREZWxldGUtPntRdW90ZWR9ICk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbXkgJFN1Y2Nlc3MgPSAkREJPYmplY3QtPkRvKAogICAgICAgICAgICAgICAgU1FMICA9PiAiREVMRVRFIEZST00gJERlbGV0ZS0+e1RhYmxlfSBXSEVSRSAkRGVsZXRlLT57V2hlcmV9ID0gPyIsCiAgICAgICAgICAgICAgICBCaW5kID0+IFsgXCREZWxldGUtPntCaW5kfSBdLAogICAgICAgICAgICApOwogICAgICAgICAgICAkU2VsZi0+VHJ1ZSgKICAgICAgICAgICAgICAgICRTdWNjZXNzLAogICAgICAgICAgICAgICAgJERlbGV0ZS0+e01lc3NhZ2V9LAogICAgICAgICAgICApOwogICAgICAgIH0KICAgIH0KKTsKCjE7Cg==</File>
        <File Location="var/httpd/htdocs/js/TimeAccounting.Agent.js" Permission="660" Encode="Base64">Ly8gLS0KLy8gT1RPQk8gaXMgYSB3ZWItYmFzZWQgdGlja2V0aW5nIHN5c3RlbSBmb3Igc2VydmljZSBvcmdhbmlzYXRpb25zLgovLyAtLQovLyBDb3B5cmlnaHQgKEMpIDIwMDEtMjAyMCBPVFJTIEFHLCBodHRwczovL290cnMuY29tLwovLyBDb3B5cmlnaHQgKEMpIDIwMTktMjAyNCBSb3RoZXIgT1NTIEdtYkgsIGh0dHBzOi8vb3RvYm8uZGUvCi8vIC0tCi8vIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5IGl0IHVuZGVyCi8vIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlCi8vIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCi8vIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLCBidXQgV0lUSE9VVAovLyBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUwovLyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KLy8gWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKLy8gYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uIElmIG5vdCwgc2VlIDxodHRwczovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCi8vIC0tCgoidXNlIHN0cmljdCI7Cgp2YXIgVGltZUFjY291bnRpbmcgPSBUaW1lQWNjb3VudGluZyB8fCB7fTsKCi8qKgogKiBAbmFtZXNwYWNlIFRpbWVBY2NvdW50aW5nLkFnZW50CiAqIEBhdXRob3IgUm90aGVyIE9TUyBHbWJICiAqIEBkZXNjcmlwdGlvbgogKiAgICAgIFRoaXMgbmFtZXNwYWNlIGNvbnRhaW5zIHRoZSBzcGVjaWFsIG1vZHVsZSBmdW5jdGlvbnMgZm9yIFRpbWVBY2NvdW50aW5nLgogKi8KVGltZUFjY291bnRpbmcuQWdlbnQgPSAoZnVuY3Rpb24gKFRhcmdldE5TKSB7CgogICAgVGFyZ2V0TlMuSW5pdCA9IGZ1bmN0aW9uICgpIHsKCiAgICAgICAgQ29yZS5VSS5UYWJsZS5Jbml0VGFibGVGaWx0ZXIoJCgnLkZpbHRlckJveCcpLCAkKCcuRGF0YVRhYmxlJykpOwoKICAgICAgICBUaW1lQWNjb3VudGluZy5BZ2VudC5FZGl0VGltZVJlY29yZHMuTWFzc0VudHJ5SW5pdCgpOwoKICAgICAgICAkKCcjTmV3VXNlcklEJykub24oJ2NoYW5nZScsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAkKHRoaXMpLmNsb3Nlc3QoJ2Zvcm0nKS5zdWJtaXQoKTsKICAgICAgICB9KTsKCiAgICAgICAgJCgnI0FkZFBlcmlvZCcpLm9mZignY2xpY2snKS5vbignY2xpY2snLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgdmFyICRGb3JtID0gJCh0aGlzKS5jbG9zZXN0KCdmb3JtJyk7CiAgICAgICAgICAgICQoJ2lucHV0W25hbWU9IkFkZFBlcmlvZCJdJywgJEZvcm0pLnZhbCgxKTsKICAgICAgICB9KTsKCiAgICAgICAgJCgnI1N1Ym1pdFVzZXJEYXRhJykub2ZmKCdjbGljaycpLm9uKCdjbGljaycsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICB2YXIgJEZvcm0gPSAkKHRoaXMpLmNsb3Nlc3QoJ2Zvcm0nKTsKICAgICAgICAgICAgJCgnaW5wdXRbbmFtZT0iU3VibWl0VXNlckRhdGEiXScsICRGb3JtKS52YWwoMSk7CiAgICAgICAgfSk7CgogICAgICAgICQoJyNOYXZpZ2F0aW9uU2VsZWN0JykuYmluZCgnY2xpY2snLCBmdW5jdGlvbigpewogICAgICAgICAgICAkKCcjRGF0ZVNlbGVjdGlvbkZvcm0nKS5zdWJtaXQoKTsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0pOwoKICAgICAgICAkKCcjSW5jb21wbGV0ZVdvcmtpbmdEYXlzTGlzdCcpLm9mZignY2hhbmdlLkluY29tcGxldGVXb3JraW5nRGF5cycpLm9uKCdjaGFuZ2UuSW5jb21wbGV0ZVdvcmtpbmdEYXlzJywgZnVuY3Rpb24gKCkgewogICAgICAgICAgICB2YXIgRGF0ZSA9ICQodGhpcykudmFsKCkuc3BsaXQoJy0nKTsKICAgICAgICAgICAgaWYgKERhdGVbMF0gJiYgRGF0ZVsxXSAmJiBEYXRlWzJdKSB7CiAgICAgICAgICAgICAgICBsb2NhdGlvbi5ocmVmID0gQ29yZS5Db25maWcuR2V0KCdCYXNlbGluaycpICsgIkFjdGlvbj0iICsgQ29yZS5Db25maWcuR2V0KCdBY3Rpb24nKSArICI7WWVhcj0iICsgRGF0ZVswXSArICI7TW9udGg9IiArIERhdGVbMV0gKyAiO0RheT0iICsgRGF0ZVsyXTsKICAgICAgICAgICAgfQogICAgICAgIH0pOwoKICAgICAgICBUaW1lQWNjb3VudGluZy5BZ2VudC5Db25maXJtYXRpb25EaWFsb2cuQmluZENvbmZpcm1hdGlvbkRpYWxvZyh7CiAgICAgICAgICAgIEVsZW1lbnRJRDogICAgICAgICAgICAgICAgICAnRGVsZXRlVGltZUFjY291bnRpbmdFbnRyeScsCiAgICAgICAgICAgIEVsZW1lbnRTZWxlY3RvcjogICAgICAgICAgICAnI0RlbGV0ZVRpbWVBY2NvdW50aW5nRW50cnknLAogICAgICAgICAgICBEaWFsb2dDb250ZW50UXVlcnlTdHJpbmc6ICAgJ0FjdGlvbj1BZ2VudFRpbWVBY2NvdW50aW5nRWRpdDtEZWxldGVEaWFsb2c9MTtZZWFyPScgKyBDb3JlLkNvbmZpZy5HZXQoJ1llYXInKSArICc7TW9udGg9JyArIENvcmUuQ29uZmlnLkdldCgnTW9udGgnKSArICc7RGF5PScgKyBDb3JlLkNvbmZpZy5HZXQoJ0RheScpLAogICAgICAgICAgICBDb25maXJtZWRBY3Rpb25RdWVyeVN0cmluZzogJ0FjdGlvbj1BZ2VudFRpbWVBY2NvdW50aW5nRWRpdDtTdWJhY3Rpb249RGVsZXRlO1llYXI9JyArIENvcmUuQ29uZmlnLkdldCgnWWVhcicpICsgJztNb250aD0nICsgQ29yZS5Db25maWcuR2V0KCdNb250aCcpICsgJztEYXk9JyArIENvcmUuQ29uZmlnLkdldCgnRGF5JyksCiAgICAgICAgICAgIERpYWxvZ1RpdGxlOiAgICAgICAgICAgICAgICBDb3JlLkxhbmd1YWdlLlRyYW5zbGF0ZSgiRGVsZXRlIFRpbWUgQWNjb3VudGluZyBFbnRyeSIpLAogICAgICAgICAgICBUcmFuc2xhdGVkVGV4dDogICAgICAgICAgICAgewogICAgICAgICAgICAgICAgWWVzOiBDb3JlLkxhbmd1YWdlLlRyYW5zbGF0ZSgnWWVzJyksCiAgICAgICAgICAgICAgICBObzogIENvcmUuTGFuZ3VhZ2UuVHJhbnNsYXRlKCdObycpCiAgICAgICAgICAgIH0KICAgICAgICB9KTsKCiAgICAgICAgLy8gc2hvdyB0aGUgY29uZmlybWF0aW9uIGRpYWxvZyB0byBjb25maXJtIHRoZSBhY3Rpb24KICAgICAgICBpZiAoQ29yZS5Db25maWcuR2V0KCdCbG9ja05hbWUnKSkgewogICAgICAgICAgICBDb3JlLlVJLkRpYWxvZy5TaG93Q29udGVudERpYWxvZygKICAgICAgICAgICAgICAgIENvcmUuQ29uZmlnLkdldCgnQmxvY2tOYW1lJyksCiAgICAgICAgICAgICAgICBDb3JlLkxhbmd1YWdlLlRyYW5zbGF0ZSgiQ29uZmlybSBpbnNlcnQiKSwKICAgICAgICAgICAgICAgICcyMCUnLAogICAgICAgICAgICAgICAgJ0NlbnRlcicsCiAgICAgICAgICAgICAgICB0cnVlLAogICAgICAgICAgICAgICAgWwogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgTGFiZWw6IENvcmUuTGFuZ3VhZ2UuVHJhbnNsYXRlKCdZZXMnKSwKICAgICAgICAgICAgICAgICAgICAgICAgQ2xhc3M6ICJQcmltYXJ5IiwKICAgICAgICAgICAgICAgICAgICAgICAgVHlwZTogIkNsb3NlIiwKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgTGFiZWw6IENvcmUuTGFuZ3VhZ2UuVHJhbnNsYXRlKCdObycpLAoKICAgICAgICAgICAgICAgICAgICAgICAgLy8gZGVmaW5lIHRoZSBmdW5jdGlvbiB0aGF0IGlzIGNhbGxlZCB3aGVuIHRoZSAnTm8nIGJ1dHRvbiBpcyBwcmVzc2VkCiAgICAgICAgICAgICAgICAgICAgICAgIEZ1bmN0aW9uOiBmdW5jdGlvbigpewoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGRpc2FibGUgWWVzIGFuZCBObyBidXR0b25zIHRvIHByZXZlbnQgbXVsdGlwbGUgc3VibWl0cwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgnZGl2LkRpYWxvZzp2aXNpYmxlIGRpdi5Db250ZW50Rm9vdGVyIGJ1dHRvbicpLmF0dHIoJ2Rpc2FibGVkJywgJ2Rpc2FibGVkJyk7CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gcmVkaXJlY3QgdG8gdGhlIG1vZHVsZSB0aGF0IGRlbGV0ZXMgdGhlIHNhdmVkIGVudHJ5IGFmdGVyIHByZXNzaW5nIHRoZSBObyBidXR0b24KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2F0aW9uLmhyZWYgPSBDb3JlLkNvbmZpZy5HZXQoJ0Jhc2VsaW5rJykgKyAnQWN0aW9uPUFnZW50VGltZUFjY291bnRpbmdFZGl0O1N1YmFjdGlvbj1EZWxldGU7WWVhcj0nICsgIENvcmUuQ29uZmlnLkdldCgnWWVhcicpICsgJztNb250aD0nICsgIENvcmUuQ29uZmlnLkdldCgnTW9udGgnKSArICc7RGF5PScgKyAgQ29yZS5Db25maWcuR2V0KCdEYXknKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgICQoJy5MZWF2ZURheXMnKS5vbignY2hhbmdlJywgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHZhciBGaWVsZFZhbHVlID0gJCh0aGlzKS52YWwoKTsKCiAgICAgICAgICAgLy8gcmVwbGFjZSAsIHdpdGggLgogICAgICAgICAgIEZpZWxkVmFsdWUgPSBGaWVsZFZhbHVlLnJlcGxhY2UoLywvZywgIi4iKTsKCiAgICAgICAgICAgLy8gY2hlY2sgaWYgdGhlIGVudGVyZWQgdmFsdWUgb25seSBjb25zaXN0cyBvZiBhbGxvd2VkIHZhbHVlcwogICAgICAgICAgIC8vIGlmIG5vdCwgd2UgZG8gbm90IGV2YWwgZm9yIHNlY3VyaXR5IHJlYXNvbnMKICAgICAgICAgICBpZiAoRmllbGRWYWx1ZS5tYXRjaCgvXlswLTkuK1wtIF0rJC8pKSB7CiAgICAgICAgICAgICAgIC8vIENhbGN1bGF0aW9uCiAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICBGaWVsZFZhbHVlID0gZXZhbChGaWVsZFZhbHVlKTsKICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICBjYXRjaCB7CiAgICAgICAgICAgICAgICAgICBGaWVsZFZhbHVlID0gMDsKICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgLy8gc2V0IG5ldyB2YWx1ZQogICAgICAgICAgICAgICAkKHRoaXMpLnZhbChGaWVsZFZhbHVlLnRvRml4ZWQoMikpOwogICAgICAgICAgIH0KICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgJCh0aGlzKS52YWwoJycpOwogICAgICAgICAgIH0KICAgICAgICB9KTsKICAgIH07CgogICAgQ29yZS5Jbml0LlJlZ2lzdGVyTmFtZXNwYWNlKFRhcmdldE5TLCAnQVBQX01PRFVMRScpOwoKICAgIHJldHVybiBUYXJnZXROUzsKCn0oVGltZUFjY291bnRpbmcuQWdlbnQgfHwge30pKTsK</File>
        <File Location="var/httpd/htdocs/js/TimeAccounting.Agent.ConfirmationDialog.js" Permission="660" Encode="Base64">Ly8gLS0KLy8gT1RPQk8gaXMgYSB3ZWItYmFzZWQgdGlja2V0aW5nIHN5c3RlbSBmb3Igc2VydmljZSBvcmdhbmlzYXRpb25zLgovLyAtLQovLyBDb3B5cmlnaHQgKEMpIDIwMDEtMjAyMCBPVFJTIEFHLCBodHRwczovL290cnMuY29tLwovLyBDb3B5cmlnaHQgKEMpIDIwMTktMjAyNCBSb3RoZXIgT1NTIEdtYkgsIGh0dHBzOi8vb3RvYm8uZGUvCi8vIC0tCi8vIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5IGl0IHVuZGVyCi8vIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlCi8vIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCi8vIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLCBidXQgV0lUSE9VVAovLyBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUwovLyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KLy8gWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKLy8gYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uIElmIG5vdCwgc2VlIDxodHRwczovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCi8vIC0tCgoidXNlIHN0cmljdCI7Cgp2YXIgVGltZUFjY291bnRpbmcgPSBUaW1lQWNjb3VudGluZyB8fCB7fTsKVGltZUFjY291bnRpbmcuQWdlbnQgPSBUaW1lQWNjb3VudGluZy5BZ2VudCB8fCB7fTsKCgovKioKICogQG5hbWVzcGFjZSBUaW1lQWNjb3VudGluZy5BZ2VudC5Db25maXJtYXRpb25EaWFsb2cKICogQG1lbWJlcm9mIFRpbWVBY2NvdW50aW5nLkFnZW50CiAqIEBhdXRob3IgUm90aGVyIE9TUyBHbWJICiAqIEBkZXNjcmlwdGlvbgogKiAgICAgIFRoaXMgbmFtZXNwYWNlIGNvbnRhaW5zIHRoZSBzcGVjaWFsIG1vZHVsZSBmdW5jdGlvbnMgZm9yIENvbmZpcm1hdGlvbkRpYWxvZy4KICovClRpbWVBY2NvdW50aW5nLkFnZW50LkNvbmZpcm1hdGlvbkRpYWxvZyA9IChmdW5jdGlvbiAoVGFyZ2V0TlMpIHsKCiAgICAvKioKICAgICAqIEBwcml2YXRlCiAgICAgKiBAbmFtZSBEaWFsb2dEYXRhCiAgICAgKiBAbWVtYmVyb2YgVGltZUFjY291bnRpbmcuQWdlbnQuQ29uZmlybWF0aW9uRGlhbG9nCiAgICAgKiBAbWVtYmVyIHtBcnJheX0KICAgICAqIEBkZXNjcmlwdGlvbgogICAgICogICAgICBUaGlzIHZhcmlhYmxlIHN0b3JlcyB0aGUgcGFyYW1ldGVycyB0aGF0IGFyZSBwYXNzZWQgZnJvbSB0aGUgRFRMIGFuZCBjb250YWluIGFsbCB0aGUgZGF0YSB0aGF0IHRoZSBkaWFsb2cgbmVlZHMuCiAgICAgKi8KICAgIHZhciBEaWFsb2dEYXRhID0gW107CgogICAgLyoqCiAgICAgKiBAcHJpdmF0ZQogICAgICogQG5hbWUgU2hvd1dhaXRpbmdEaWFsb2cKICAgICAqIEBtZW1iZXJvZiBUaW1lQWNjb3VudGluZy5BZ2VudC5Db25maXJtYXRpb25EaWFsb2cKICAgICAqIEBmdW5jdGlvbgogICAgICogQHBhcmFtIHtTdHJpbmd9IFBvc2l0aW9uVG9wIC0gdmVydGljYWwgcG9zaXRpb24gb2YgdGhlIGRpYWxvZy4KICAgICAqIEBkZXNjcmlwdGlvbiBTaG93cyB3YWl0aW5nIGRpYWxvZyB1bnRpbCBzZWFyY2ggc2NyZWVuIGlzIHJlYWR5LgogICAgICovCiAgICBmdW5jdGlvbiBTaG93V2FpdGluZ0RpYWxvZyhQb3NpdGlvblRvcCl7CiAgICAgICAgQ29yZS5VSS5EaWFsb2cuU2hvd0NvbnRlbnREaWFsb2coJzxkaXYgY2xhc3M9IlNwYWNpbmcgQ2VudGVyIj48c3BhbiBjbGFzcz0iQUpBWExvYWRlciIgdGl0bGU9IicgKyBDb3JlLkNvbmZpZy5HZXQoJ0xvYWRpbmdNc2cnKSArICciPjwvc3Bhbj48L2Rpdj4nLCAnJywgUG9zaXRpb25Ub3AsICdDZW50ZXInLCB0cnVlKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBuYW1lIFNob3dDb25maXJtYXRpb25EaWFsb2cKICAgICAqIEBtZW1iZXJvZiBUaW1lQWNjb3VudGluZy5BZ2VudC5Db25maXJtYXRpb25EaWFsb2cKICAgICAqIEBmdW5jdGlvbgogICAgICogQHJldHVybnMge0Jvb2xlYW59IGZhbHNlLgogICAgICogQHBhcmFtIHtFdmVudE9iamVjdH0gRXZlbnQgLSBldmVudCBvYmplY3Qgb2YgdGhlIGNsaWNrZWQgZWxlbWVudC4KICAgICAqIEBkZXNjcmlwdGlvbgogICAgICogICAgICBUaGlzIGZ1bmN0aW9uIHNob3dzIGEgY29uZmlybWF0aW9uIGRpYWxvZyB3aXRoIDIgYnV0dG9uczogWWVzIGFuZCBObyBvciBhIG1lc3NhZ2UgZGlhbG9nIHdpdGggb25lIGJ1dHRvbjogT2suCiAgICAgKi8KICAgIFRhcmdldE5TLlNob3dDb25maXJtYXRpb25EaWFsb2cgPSBmdW5jdGlvbiAoRXZlbnQpIHsKCiAgICAgICAgdmFyIExvY2FsRGlhbG9nRGF0YSwKICAgICAgICAgICAgUG9zaXRpb25Ub3AsCiAgICAgICAgICAgIERhdGEsCiAgICAgICAgICAgIEJ1dHRvbnM7CgogICAgICAgIC8vIGdldCBnbG9iYWwgc2F2ZWQgRGlhbG9nRGF0YSBmb3IgdGhpcyBmdW5jdGlvbgogICAgICAgIExvY2FsRGlhbG9nRGF0YSA9IERpYWxvZ0RhdGFbJChFdmVudC50YXJnZXQpLmF0dHIoJ2lkJyldOwoKICAgICAgICAvLyBkZWZpbmUgdGhlIHBvc2l0aW9uIG9mIHRoZSBkaWFsb2cKICAgICAgICBQb3NpdGlvblRvcCA9ICQod2luZG93KS5oZWlnaHQoKSAqIDAuMzsKCiAgICAgICAgLy8gc2hvdyB3YWl0aW5nIGRpYWxvZwogICAgICAgIFNob3dXYWl0aW5nRGlhbG9nKFBvc2l0aW9uVG9wKTsKCiAgICAgICAgLy8gYWpheCBjYWxsIHRvIHRoZSBtb2R1bGUgdGhhdCBleGVjdXRlcyB0aGUgYWN0aW9uIHdoZW4gcHJlc3NpbmcgdGhlIGNvbmZpcm1hdGlvbiBidXR0b24KICAgICAgICBEYXRhID0gTG9jYWxEaWFsb2dEYXRhLkRpYWxvZ0NvbnRlbnRRdWVyeVN0cmluZzsKICAgICAgICBDb3JlLkFKQVguRnVuY3Rpb25DYWxsKENvcmUuQ29uZmlnLkdldCgnQmFzZWxpbmsnKSwgRGF0YSwgZnVuY3Rpb24gKFJlc3BvbnNlKSB7CgogICAgICAgICAgICAvLyAnQ29uZmlybWF0aW9uJyBvcGVucyBhIGRpYWxvZyB3aXRoIDIgYnV0dG9uczogWWVzIGFuZCBObwogICAgICAgICAgICBpZiAoUmVzcG9uc2UuRGlhbG9nVHlwZSA9PT0gJ0NvbmZpcm1hdGlvbicpIHsKCiAgICAgICAgICAgICAgICAvLyBkZWZpbmUgeWVzIGFuZCBubyBidXR0b25zCiAgICAgICAgICAgICAgICBCdXR0b25zID0gW3sKICAgICAgICAgICAgICAgICAgICBMYWJlbDogTG9jYWxEaWFsb2dEYXRhLlRyYW5zbGF0ZWRUZXh0LlllcywKICAgICAgICAgICAgICAgICAgICBDbGFzczogIlByaW1hcnkiLAoKICAgICAgICAgICAgICAgICAgICAvLyBkZWZpbmUgdGhlIGZ1bmN0aW9uIHRoYXQgaXMgY2FsbGVkIHdoZW4gdGhlICdZZXMnIGJ1dHRvbiBpcyBwcmVzc2VkCiAgICAgICAgICAgICAgICAgICAgRnVuY3Rpb246IGZ1bmN0aW9uKCl7CgogICAgICAgICAgICAgICAgICAgICAgICAvLyBkaXNhYmxlIFllcyBhbmQgTm8gYnV0dG9ucyB0byBwcmV2ZW50IG11bHRpcGxlIHN1Ym1pdHMKICAgICAgICAgICAgICAgICAgICAgICAgJCgnZGl2LkRpYWxvZzp2aXNpYmxlIGRpdi5Db250ZW50Rm9vdGVyIGJ1dHRvbicpLmF0dHIoJ2Rpc2FibGVkJywgJ2Rpc2FibGVkJyk7CgogICAgICAgICAgICAgICAgICAgICAgICAvLyByZWRpcmVjdCB0byB0aGUgbW9kdWxlIHRoYXQgZG9lcyB0aGUgY29uZmlybWVkIGFjdGlvbiBhZnRlciBwcmVzc2luZyB0aGUgWWVzIGJ1dHRvbgogICAgICAgICAgICAgICAgICAgICAgICBsb2NhdGlvbi5ocmVmID0gQ29yZS5Db25maWcuR2V0KCdCYXNlbGluaycpICsgTG9jYWxEaWFsb2dEYXRhLkNvbmZpcm1lZEFjdGlvblF1ZXJ5U3RyaW5nOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICAgICBMYWJlbDogTG9jYWxEaWFsb2dEYXRhLlRyYW5zbGF0ZWRUZXh0Lk5vLAogICAgICAgICAgICAgICAgICAgIFR5cGU6ICJDbG9zZSIKICAgICAgICAgICAgICAgIH1dOwogICAgICAgICAgICB9CgogICAgICAgICAgICAvLyAnTWVzc2FnZScgb3BlbnMgYSBkaWFsb2cgd2l0aCAxIGJ1dHRvbjogT2sKICAgICAgICAgICAgZWxzZSBpZiAoUmVzcG9uc2UuRGlhbG9nVHlwZSA9PT0gJ01lc3NhZ2UnKSB7CgogICAgICAgICAgICAgICAgLy8gZGVmaW5lIE9rIGJ1dHRvbgogICAgICAgICAgICAgICAgQnV0dG9ucyA9IFt7CiAgICAgICAgICAgICAgICAgICAgTGFiZWw6IExvY2FsRGlhbG9nRGF0YS5UcmFuc2xhdGVkVGV4dC5PaywKICAgICAgICAgICAgICAgICAgICBDbGFzczogIlByaW1hcnkiLAogICAgICAgICAgICAgICAgICAgIFR5cGU6ICJDbG9zZSIKICAgICAgICAgICAgICAgIH1dOwogICAgICAgICAgICB9CgogICAgICAgICAgICAvLyBzaG93IHRoZSBjb25maXJtYXRpb24gZGlhbG9nIHRvIGNvbmZpcm0gdGhlIGFjdGlvbgogICAgICAgICAgICBDb3JlLlVJLkRpYWxvZy5TaG93Q29udGVudERpYWxvZyhSZXNwb25zZS5IVE1MLCBMb2NhbERpYWxvZ0RhdGEuRGlhbG9nVGl0bGUsIFBvc2l0aW9uVG9wLCAiQ2VudGVyIiwgdHJ1ZSwgQnV0dG9ucyk7CiAgICAgICAgfSwgJ2pzb24nKTsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9OwoKICAgIC8qKgogICAgICogQG5hbWUgQmluZENvbmZpcm1hdGlvbkRpYWxvZwogICAgICogQG1lbWJlcm9mIFRpbWVBY2NvdW50aW5nLkFnZW50LkNvbmZpcm1hdGlvbkRpYWxvZwogICAgICogQGZ1bmN0aW9uCiAgICAgKiBAcGFyYW0ge09iamVjdH0gRGF0YSAtIERpYWxvZ0RhdGEuCiAgICAgKiBAZGVzY3JpcHRpb24gIEJpbmRzIGNvbmZvcm1hdGlvbiBkaWFsb2cgdG8gYW4gZWxlbWVudAogICAgICovCiAgICBUYXJnZXROUy5CaW5kQ29uZmlybWF0aW9uRGlhbG9nID0gZnVuY3Rpb24gKERhdGEpIHsKICAgICAgICBEaWFsb2dEYXRhW0RhdGEuRWxlbWVudElEXSA9IERhdGE7CgogICAgICAgIC8vIGJpbmRpbmcgYSBjbGljayBldmVudCB0byB0aGUgZGVmaW5lZCBlbGVtZW50CiAgICAgICAgJChEaWFsb2dEYXRhW0RhdGEuRWxlbWVudElEXS5FbGVtZW50U2VsZWN0b3IpCiAgICAgICAgICAgIC5vZmYoJ2NsaWNrLlRpbWVBY2NvdW50aW5nLkJpbmRDb25maXJtYXRpb25EaWFsb2cnKQogICAgICAgICAgICAub24oJ2NsaWNrLlRpbWVBY2NvdW50aW5nLkJpbmRDb25maXJtYXRpb25EaWFsb2cnLCBUaW1lQWNjb3VudGluZy5BZ2VudC5Db25maXJtYXRpb25EaWFsb2cuU2hvd0NvbmZpcm1hdGlvbkRpYWxvZyk7CiAgICB9OwoKICAgIHJldHVybiBUYXJnZXROUzsKfShUaW1lQWNjb3VudGluZy5BZ2VudC5Db25maXJtYXRpb25EaWFsb2cgfHwge30pKTsK</File>
        <File Location="var/httpd/htdocs/js/TimeAccounting.Agent.EditTimeRecords.js" Permission="660" Encode="Base64">Ly8gLS0KLy8gT1RPQk8gaXMgYSB3ZWItYmFzZWQgdGlja2V0aW5nIHN5c3RlbSBmb3Igc2VydmljZSBvcmdhbmlzYXRpb25zLgovLyAtLQovLyBDb3B5cmlnaHQgKEMpIDIwMDEtMjAyMCBPVFJTIEFHLCBodHRwczovL290cnMuY29tLwovLyBDb3B5cmlnaHQgKEMpIDIwMTktMjAyNCBSb3RoZXIgT1NTIEdtYkgsIGh0dHBzOi8vb3RvYm8uZGUvCi8vIC0tCi8vIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5IGl0IHVuZGVyCi8vIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlCi8vIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCi8vIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLCBidXQgV0lUSE9VVAovLyBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUwovLyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KLy8gWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKLy8gYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uIElmIG5vdCwgc2VlIDxodHRwczovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCi8vIC0tCgoidXNlIHN0cmljdCI7Cgp2YXIgVGltZUFjY291bnRpbmcgPSBUaW1lQWNjb3VudGluZyB8fCB7fTsKVGltZUFjY291bnRpbmcuQWdlbnQgPSBUaW1lQWNjb3VudGluZy5BZ2VudCB8fCB7fTsKCi8qKgogKiBAbmFtZXNwYWNlIFRpbWVBY2NvdW50aW5nLkFnZW50LkVkaXRUaW1lUmVjb3JkcwogKiBAbWVtYmVyb2YgVGltZUFjY291bnRpbmcuQWdlbnQKICogQGF1dGhvciBSb3RoZXIgT1NTIEdtYkgKICogQGRlc2NyaXB0aW9uCiAqICAgICAgVGhpcyBuYW1lc3BhY2UgY29udGFpbnMgdGhlIHNwZWNpYWwgbW9kdWxlIGZ1bmN0aW9ucyBmb3IgdGhlIGVkaXQgc2NyZWVuLgogKi8KVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzID0gKGZ1bmN0aW9uIChUYXJnZXROUykgewoKICAgIC8vIEFkZHMgb3B0aW9uIHRvIGEgc2VsZWN0aW9uCiAgICBmdW5jdGlvbiBBZGRTZWxlY3Rpb25PcHRpb24oJFNlbGVjdGlvbkVsZW1lbnQsIE9wdGlvblRleHQsIE9wdGlvblZhbHVlLCBTZWxlY3RlZE9wdGlvbikgewogICAgICAgIHZhciBPcHRpb25IVE1MID0gQ29yZS5UZW1wbGF0ZS5SZW5kZXIoCiAgICAgICAgICAgICdBZ2VudC9UaW1lQWNjb3VudGluZy9PcHRpb24nLAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBWYWx1ZTogICAgT3B0aW9uVmFsdWUsCiAgICAgICAgICAgICAgICBUZXh0OiAgICAgT3B0aW9uVGV4dCwKICAgICAgICAgICAgICAgIFNlbGVjdGVkOiBPcHRpb25WYWx1ZSA9PT0gU2VsZWN0ZWRPcHRpb24KICAgICAgICAgICAgfQogICAgICAgICk7CgogICAgICAgICRTZWxlY3Rpb25FbGVtZW50LmFwcGVuZChPcHRpb25IVE1MKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBuYW1lIEluaXQKICAgICAqIEBtZW1iZXJvZiBUaW1lQWNjb3VudGluZy5BZ2VudC5FZGl0VGltZVJlY29yZHMKICAgICAqIEBmdW5jdGlvbgogICAgICogQHBhcmFtIHtTdHJpbmd9IFdvcmtpbmdVbml0SUQgLSBUaGUgSUQgb2YgdGhlIHdvcmtpbmcgdW5pdCB3ZSBhcmUgaW4KICAgICAqIEBkZXNjcmlwdGlvbgogICAgICogICAgICBGaWxscyBvcHRpb25zIG9mIGFjdGlvbiBzZWxlY3Rpb24gYWNjb3JkaW5nIHRvIHNlbGVjdGVkIHByb2plY3QKICAgICAqLwogICAgVGFyZ2V0TlMuRmlsbEFjdGlvbkxpc3QgPSBmdW5jdGlvbiAoV29ya2luZ1VuaXRJRCkgewogICAgICAgIHZhciBQcm9qZWN0TmFtZSA9ICQoJyNQcm9qZWN0SUQnICsgV29ya2luZ1VuaXRJRCArICcgb3B0aW9uOnNlbGVjdGVkJykudGV4dCgpLAogICAgICAgICAgICBBY3Rpb25MaXN0ID0gQ29yZS5Db25maWcuR2V0KCdBY3Rpb25MaXN0JyksCiAgICAgICAgICAgIEFjdGlvbkxpc3RDb25zdHJhaW50cyA9IENvcmUuQ29uZmlnLkdldCgnQWN0aW9uTGlzdENvbnN0cmFpbnRzJyksCiAgICAgICAgICAgICRBY3Rpb25TZWxlY3Rpb24gPSAkKCIjQWN0aW9uSUQiICsgV29ya2luZ1VuaXRJRCksCiAgICAgICAgICAgIFNlbGVjdGVkQWN0aW9uSUQgPSAkQWN0aW9uU2VsZWN0aW9uLnZhbCgpLAogICAgICAgICAgICBPcHRpb25Db3VudCA9IDA7CgogICAgICAgIC8vIHJlbW92ZSBwcmV2aW91cyBhY3Rpb25zLCBsZWF2ZSBmaXJzdCBlbGVtZW50IChlbXB0eSBlbGVtZW50KQogICAgICAgICRBY3Rpb25TZWxlY3Rpb24uZmluZCgnb3B0aW9uJykuZmlsdGVyKCc6bm90KDpmaXJzdCknKS5yZW1vdmUoKTsKCiAgICAgICAgJC5lYWNoKEFjdGlvbkxpc3QsIGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgdmFyIEFjdGlvbklEID0gdGhpc1swXSwKICAgICAgICAgICAgICAgIEFjdGlvbk5hbWUgPSB0aGlzWzFdOwoKICAgICAgICAgICAgJC5lYWNoKEFjdGlvbkxpc3RDb25zdHJhaW50cywgZnVuY3Rpb24gKCkgewogICAgICAgICAgICAgICAgdmFyIFByb2plY3ROYW1lUmVnRXhwID0gbmV3IFJlZ0V4cCh0aGlzWzBdKSwKICAgICAgICAgICAgICAgICAgICBBY3Rpb25OYW1lUmVnRXhwID0gbmV3IFJlZ0V4cCh0aGlzWzFdKTsKCiAgICAgICAgICAgICAgICAvLyBhZGQgYWN0aW9uIHRvIHNlbGVjdGlvbgogICAgICAgICAgICAgICAgaWYgKFByb2plY3ROYW1lUmVnRXhwLnRlc3QoUHJvamVjdE5hbWUpICYmIEFjdGlvbk5hbWVSZWdFeHAudGVzdChBY3Rpb25OYW1lKSkgewogICAgICAgICAgICAgICAgICAgIEFkZFNlbGVjdGlvbk9wdGlvbigkQWN0aW9uU2VsZWN0aW9uLCBBY3Rpb25OYW1lLCBBY3Rpb25JRCwgU2VsZWN0ZWRBY3Rpb25JRCk7CiAgICAgICAgICAgICAgICAgICAgT3B0aW9uQ291bnQrKzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgfSk7CgogICAgICAgIC8vIGFsbCBhY3Rpb25zIHdpbGwgYmUgYWRkZWQgaWYgbm8gYWN0aW9uIHdhcyBhZGRlZCBhYm92ZSAocG9zc2libGUgbWlzY29uZmlndXJhdGlvbikKICAgICAgICBpZiAoIU9wdGlvbkNvdW50KSB7CiAgICAgICAgICAgIC8vIGlnbm9yZSBmaXJzdCBlbGVtZW50IGJlY2F1c2UgaXQncyB0aGUgZW1wdHkgZWxlbWVudCB3aGljaCBpcyBhbHJlYWR5IHBhcnQgb2YgdGhlIGxpc3QKICAgICAgICAgICAgJC5lYWNoKEFjdGlvbkxpc3QsIGZ1bmN0aW9uIChJbmRleCkgewogICAgICAgICAgICAgICAgdmFyIEFjdGlvbklEID0gdGhpc1swXSwKICAgICAgICAgICAgICAgICAgICBBY3Rpb25OYW1lID0gdGhpc1sxXTsKICAgICAgICAgICAgICAgIGlmIChJbmRleCA+IDApIHsKICAgICAgICAgICAgICAgICAgICBBZGRTZWxlY3Rpb25PcHRpb24oJEFjdGlvblNlbGVjdGlvbiwgQWN0aW9uTmFtZSwgQWN0aW9uSUQsIFNlbGVjdGVkQWN0aW9uSUQpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKICAgICAgICB9CiAgICB9OwoKCiAgICBmdW5jdGlvbiBJbml0QWRkUm93KCkgewogICAgICAgICQoJ1tuYW1lPU1vcmVJbnB1dEZpZWxkc10nKS5vZmYoJ2NsaWNrLk1vcmVJbnB1dEZpZWxkcycpLm9uKCdjbGljay5Nb3JlSW5wdXRGaWVsZHMnLCBmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgIHZhciAkTGFzdFJvdyA9ICQodGhpcykuY2xvc2VzdCgnLkRhdGFUYWJsZScpLmZpbmQoJ3Rib2R5IHRyLldvcmtpbmdIb3VyczpsYXN0JyksCiAgICAgICAgICAgICAgICAkTmV3Um93LCBOZXdSb3dIVE1MLAogICAgICAgICAgICAgICAgUmVjb3JkTnVtYmVyID0gcGFyc2VJbnQoJCgnI1JlY29yZHNOdW1iZXInKS52YWwoKSwgMTApICsgMTsKCiAgICAgICAgICAgIENvcmUuVUkuSW5wdXRGaWVsZHMuRGVhY3RpdmF0ZSgkKCcuV29ya2luZ0hvdXJzJykpOwogICAgICAgICAgICAkTmV3Um93ID0gJExhc3RSb3cuY2xvbmUoKTsKICAgICAgICAgICAgTmV3Um93SFRNTCA9ICROZXdSb3cuaHRtbCgpOwoKICAgICAgICAgICAgLy8gTm93IHRha2UgdGhlIGxhc3Qgcm93IGFuZCByZXBsYWNlIGFsbCBudW1iZXJzIHdpdGggdGhlIG5ldyByZWNvcmQgbnVtYmVyCiAgICAgICAgICAgIE5ld1Jvd0hUTUwgPSBOZXdSb3dIVE1MLnJlcGxhY2UoL1Byb2plY3RJRFswLTldKy9nLCAnUHJvamVjdElEJyArIFJlY29yZE51bWJlcik7CiAgICAgICAgICAgIE5ld1Jvd0hUTUwgPSBOZXdSb3dIVE1MLnJlcGxhY2UoL1Byb2plY3RJRFxbWzAtOV0rL2csICdQcm9qZWN0SURbJyArIFJlY29yZE51bWJlcik7CiAgICAgICAgICAgIE5ld1Jvd0hUTUwgPSBOZXdSb3dIVE1MLnJlcGxhY2UoL0ZpbGxBY3Rpb25MaXN0XChbMC05XSsvZywgJ0ZpbGxBY3Rpb25MaXN0KCcgKyBSZWNvcmROdW1iZXIpOwogICAgICAgICAgICBOZXdSb3dIVE1MID0gTmV3Um93SFRNTC5yZXBsYWNlKC9BY3Rpb25JRFswLTldKy9nLCAnQWN0aW9uSUQnICsgUmVjb3JkTnVtYmVyKTsKICAgICAgICAgICAgTmV3Um93SFRNTCA9IE5ld1Jvd0hUTUwucmVwbGFjZSgvQWN0aW9uSURcW1swLTldKy9nLCAnQWN0aW9uSURbJyArIFJlY29yZE51bWJlcik7CiAgICAgICAgICAgIE5ld1Jvd0hUTUwgPSBOZXdSb3dIVE1MLnJlcGxhY2UoL1JlbWFya1swLTldKy9nLCAnUmVtYXJrJyArIFJlY29yZE51bWJlcik7CiAgICAgICAgICAgIE5ld1Jvd0hUTUwgPSBOZXdSb3dIVE1MLnJlcGxhY2UoL1JlbWFya1xbWzAtOV0rL2csICdSZW1hcmtbJyArIFJlY29yZE51bWJlcik7CiAgICAgICAgICAgIE5ld1Jvd0hUTUwgPSBOZXdSb3dIVE1MLnJlcGxhY2UoL1N0YXJ0VGltZVswLTldKy9nLCAnU3RhcnRUaW1lJyArIFJlY29yZE51bWJlcik7CiAgICAgICAgICAgIE5ld1Jvd0hUTUwgPSBOZXdSb3dIVE1MLnJlcGxhY2UoL1N0YXJ0VGltZVxbWzAtOV0rL2csICdTdGFydFRpbWVbJyArIFJlY29yZE51bWJlcik7CiAgICAgICAgICAgIE5ld1Jvd0hUTUwgPSBOZXdSb3dIVE1MLnJlcGxhY2UoL0VuZFRpbWVbMC05XSsvZywgJ0VuZFRpbWUnICsgUmVjb3JkTnVtYmVyKTsKICAgICAgICAgICAgTmV3Um93SFRNTCA9IE5ld1Jvd0hUTUwucmVwbGFjZSgvRW5kVGltZVxbWzAtOV0rL2csICdFbmRUaW1lWycgKyBSZWNvcmROdW1iZXIpOwogICAgICAgICAgICBOZXdSb3dIVE1MID0gTmV3Um93SFRNTC5yZXBsYWNlKC9QZXJpb2RbMC05XSsvZywgJ1BlcmlvZCcgKyBSZWNvcmROdW1iZXIpOwogICAgICAgICAgICBOZXdSb3dIVE1MID0gTmV3Um93SFRNTC5yZXBsYWNlKC9QZXJpb2RcW1swLTldKy9nLCAnUGVyaW9kWycgKyBSZWNvcmROdW1iZXIpOwoKICAgICAgICAgICAgLy8gTm93IHdyaXRlIHRoaXMgSFRNTCBiYWNrIHRvIHRoZSBqcXVlcnkgb2JqZWN0CiAgICAgICAgICAgICROZXdSb3cuaHRtbChOZXdSb3dIVE1MKTsKCiAgICAgICAgICAgIC8vIElmIGxhc3Qgcm93IGNvbnRhaW5lZCB2YWx1ZXMsIHRoZXNlIG11c3QgYmUgcmVtb3ZlZAogICAgICAgICAgICAkTmV3Um93CiAgICAgICAgICAgICAgICAuZmluZCgnaW5wdXQ6dGV4dCcpLnZhbCgnJykuZW5kKCkKICAgICAgICAgICAgICAgIC5maW5kKCdzZWxlY3Qgb3B0aW9uJykucHJvcCgnc2VsZWN0ZWQnLCBmYWxzZSk7CgogICAgICAgICAgICAvLyBOb3cgYWRkIHRoaXMgcm93IHRvIHRoZSB0YWJsZQogICAgICAgICAgICAkTGFzdFJvdy5hZnRlcigkTmV3Um93KTsKCiAgICAgICAgICAgIC8vIFNhdmUgbmV3IFJlY29yZE51bWJlcgogICAgICAgICAgICAkKCcjUmVjb3Jkc051bWJlcicpLnZhbChSZWNvcmROdW1iZXIpOwoKICAgICAgICAgICAgLy8gUmUtaW5pdGlhdGUgdGhlICdvZGQvZXZlbicgY29sb3VycyBvZiB0aGUgdGFibGUKICAgICAgICAgICAgJCgnI0luc2VydFdvcmtpbmdIb3VycyB0Ym9keSB0cicpCiAgICAgICAgICAgICAgICAucmVtb3ZlQ2xhc3MoJ0V2ZW4nKQogICAgICAgICAgICAgICAgLmZpbHRlcignOm9kZCcpLmFkZENsYXNzKCdFdmVuJyk7CgogICAgICAgICAgICBJbml0UGVyaW9kQ2FsY3VsYXRpb24oKTsKCiAgICAgICAgICAgIC8vIE1vZGVybml6ZSBmaWVsZHMKICAgICAgICAgICAgQ29yZS5VSS5JbnB1dEZpZWxkcy5BY3RpdmF0ZSgkKCcuV29ya2luZ0hvdXJzJykpOwogICAgICAgIH0pOwogICAgfQoKICAgIGZ1bmN0aW9uIFJlY2FsY3VsYXRlVG90YWxIb3VycygkRGF0YVRhYmxlKSB7CiAgICAgICAgdmFyIFRvdGFsID0gMDsKICAgICAgICAkRGF0YVRhYmxlLmZpbmQoJy5QZXJpb2QnKS5lYWNoKGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgdmFyIFZhbHVlID0gcGFyc2VGbG9hdCgkKHRoaXMpLnZhbCgpKTsKICAgICAgICAgICAgaWYgKCFpc05hTihWYWx1ZSkpIHsKICAgICAgICAgICAgICAgIFRvdGFsICs9IFZhbHVlOwogICAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgJERhdGFUYWJsZS5maW5kKCcuVG90YWxIb3VycycpLnRleHQoVG90YWwudG9GaXhlZCgyKSk7CiAgICB9CgogICAgZnVuY3Rpb24gSW5pdFBlcmlvZENhbGN1bGF0aW9uKCkgewogICAgICAgIC8vIGluaXQgY2FsY3VsYXRpb24gb2YgcGVyaW9kIGZpZWxkIGFmdGVyIHdvcmtpbmcgaG91cnMgd2hlcmUgYWRkZWQvc3VidHJhY3RlZC93aGF0ZXZlci4uLgogICAgICAgICQoJy5QZXJpb2QnKS5vZmYoJ2NoYW5nZS5QZXJpb2RDYWxjdWxhdGlvbicpLm9uKCdjaGFuZ2UuUGVyaW9kQ2FsY3VsYXRpb24nLCBmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgdmFyIEZpZWxkVmFsdWUgPSAkKHRoaXMpLnZhbCgpOwoKICAgICAgICAgICAvLyByZXBsYWNlICwgd2l0aCAuCiAgICAgICAgICAgRmllbGRWYWx1ZSA9IEZpZWxkVmFsdWUucmVwbGFjZSgvLC9nLCAiLiIpOwoKICAgICAgICAgICAvLyBjaGVjayBpZiB0aGUgZW50ZXJlZCB2YWx1ZSBvbmx5IGNvbnNpc3RzIG9mIGFsbG93ZWQgdmFsdWVzCiAgICAgICAgICAgLy8gaWYgbm90LCB3ZSBkbyBub3QgZXZhbCBmb3Igc2VjdXJpdHkgcmVhc29ucwogICAgICAgICAgIGlmIChGaWVsZFZhbHVlLm1hdGNoKC9eWzAtOS4rXC0gXSskLykpIHsKICAgICAgICAgICAgICAgLy8gQ2FsY3VsYXRpb24KICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgIEZpZWxkVmFsdWUgPSBldmFsKEZpZWxkVmFsdWUpOwogICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIGNhdGNoIHsKICAgICAgICAgICAgICAgICAgIEZpZWxkVmFsdWUgPSAwOwogICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAvLyBzZXQgbmV3IHZhbHVlCiAgICAgICAgICAgICAgICQodGhpcykudmFsKEZpZWxkVmFsdWUudG9GaXhlZCgyKSk7CgogICAgICAgICAgICAgICAvLyBub3cgU3RhcnRUaW1lIGFuZCBFbmRUaW1lIHdpbGwgbm90IG1hdGNoIHRoZSBwZXJpb2QgYW55bW9yZQogICAgICAgICAgICAgICAvLyBkZWxldGUgdGhlc2UgZW50cmllcwogICAgICAgICAgICAgICAkKHRoaXMpLmNsb3Nlc3QoJ3RyJykuZmluZCgnLlN0YXJ0VGltZSwgLkVuZFRpbWUnKS52YWwoJycpOwoKICAgICAgICAgICB9CiAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICQodGhpcykudmFsKCcnKTsKICAgICAgICAgICB9CgogICAgICAgICAgIC8vIG5vdyByZS1jYWxjdWxhdGUgdGhlIHRvdGFsIGhvdXJzIHN1bQogICAgICAgICAgIFJlY2FsY3VsYXRlVG90YWxIb3VycygkKHRoaXMpLmNsb3Nlc3QoJy5EYXRhVGFibGUnKSk7CiAgICAgICAgfSk7CgogICAgICAgIC8vIGluaXQgcGVyaW9kIGNhbGN1bGF0aW9uIG9uIHN0YXJ0IHRpbWUgYW5kIGVuZCB0aW1lIGZpZWxkcwogICAgICAgICQoJy5TdGFydFRpbWUsIC5FbmRUaW1lJykub2ZmKCdjaGFuZ2UuUGVyaW9kQ2FsY3VsYXRpb24nKS5vbignY2hhbmdlLlBlcmlvZENhbGN1bGF0aW9uJywgZnVuY3Rpb24gKCkgewogICAgICAgICAgICB2YXIgJFN0YXJ0VGltZSwgJEVuZFRpbWUsCiAgICAgICAgICAgICAgICBTdGFydFRpbWVIb3VyLCBTdGFydFRpbWVNaW51dGUsIEVuZFRpbWVIb3VyLCBFbmRUaW1lTWludXRlLAogICAgICAgICAgICAgICAgU3RhcnREYXRlLCBFbmREYXRlLCBUb2RheSwKICAgICAgICAgICAgICAgIFBlcmlvZDsKCiAgICAgICAgICAgIGlmICgkKHRoaXMpLmhhc0NsYXNzKCdTdGFydFRpbWUnKSkgewogICAgICAgICAgICAgICAgJFN0YXJ0VGltZSA9ICQodGhpcyk7CiAgICAgICAgICAgICAgICAkRW5kVGltZSA9ICRTdGFydFRpbWUuY2xvc2VzdCgndHInKS5maW5kKCcuRW5kVGltZScpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgJFN0YXJ0VGltZSA9ICQodGhpcykuY2xvc2VzdCgndHInKS5maW5kKCcuU3RhcnRUaW1lJyk7CiAgICAgICAgICAgICAgICAkRW5kVGltZSA9ICQodGhpcyk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIC8vIG9ubHkgY2FsY3VsYXRlIGlmIGJvdGggZmllbGRzIGFyZSBmaWxsZWQKICAgICAgICAgICAgaWYgKCRTdGFydFRpbWUudmFsKCkgJiYgJEVuZFRpbWUudmFsKCkpIHsKICAgICAgICAgICAgICAgIC8vIGV4dHJhY3QgaG91cnMgYW5kIG1pbnV0ZXMKICAgICAgICAgICAgICAgIFN0YXJ0VGltZUhvdXIgPSAkU3RhcnRUaW1lLnZhbCgpLnNwbGl0KC86LylbMF0gfHwgMDsKICAgICAgICAgICAgICAgIFN0YXJ0VGltZU1pbnV0ZSA9ICRTdGFydFRpbWUudmFsKCkuc3BsaXQoLzovKVsxXSB8fCAwOwogICAgICAgICAgICAgICAgRW5kVGltZUhvdXIgPSAkRW5kVGltZS52YWwoKS5zcGxpdCgvOi8pWzBdIHx8IDA7CiAgICAgICAgICAgICAgICBFbmRUaW1lTWludXRlID0gJEVuZFRpbWUudmFsKCkuc3BsaXQoLzovKVsxXSB8fCAwOwoKICAgICAgICAgICAgICAgIC8vIGRlZmluZSBkYXRlIG9iamVjdHMKICAgICAgICAgICAgICAgIFRvZGF5ID0gbmV3IERhdGUoKTsKICAgICAgICAgICAgICAgIFN0YXJ0RGF0ZSA9IG5ldyBEYXRlKFRvZGF5LmdldFllYXIoKSwgVG9kYXkuZ2V0TW9udGgoKSwgVG9kYXkuZ2V0RGF0ZSgpLCBTdGFydFRpbWVIb3VyLCBTdGFydFRpbWVNaW51dGUsIDApOwogICAgICAgICAgICAgICAgRW5kRGF0ZSA9IG5ldyBEYXRlKFRvZGF5LmdldFllYXIoKSwgVG9kYXkuZ2V0TW9udGgoKSwgVG9kYXkuZ2V0RGF0ZSgpLCBFbmRUaW1lSG91ciwgRW5kVGltZU1pbnV0ZSwgMCk7CgogICAgICAgICAgICAgICAgLy8gY2FsY3VsYXRlIGRpZmZlcmVuY2VzCiAgICAgICAgICAgICAgICBQZXJpb2QgPSBFbmREYXRlLmdldFRpbWUoKSAtIFN0YXJ0RGF0ZS5nZXRUaW1lKCk7CiAgICAgICAgICAgICAgICBQZXJpb2QgPSBQZXJpb2QgLyAoMTAwMCAqIDYwICogNjApOwoKICAgICAgICAgICAgICAgIC8vIHNldCBuZXcgdmFsdWUKICAgICAgICAgICAgICAgIGlmICghaXNOYU4oUGVyaW9kKSkgewogICAgICAgICAgICAgICAgICAgICRTdGFydFRpbWUuY2xvc2VzdCgndHInKS5maW5kKCcuUGVyaW9kJykudmFsKFBlcmlvZC50b0ZpeGVkKDIpKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgICAgICRTdGFydFRpbWUuY2xvc2VzdCgndHInKS5maW5kKCcuUGVyaW9kJykudmFsKCcnKTsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBSZWNhbGN1bGF0ZVRvdGFsSG91cnMoJCh0aGlzKS5jbG9zZXN0KCcuRGF0YVRhYmxlJykpOwogICAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICB9CgogICAgLyoqCiAgICAgKiBAbmFtZSBJbml0CiAgICAgKiBAbWVtYmVyb2YgVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzCiAgICAgKiBAZnVuY3Rpb24KICAgICAqIEBkZXNjcmlwdGlvbgogICAgICogICAgICBUaGlzIGZ1bmN0aW9uIGluaXRpYWxpemVzIGFsbCBuZWVkZWQgSlMgZm9yIHRoZSBFZGl0IHNjcmVlbgogICAgICovCiAgICBUYXJnZXROUy5Jbml0ID0gZnVuY3Rpb24gKCkgewoKICAgICAgICB2YXIgUmVtYXJrUmVnRXhwQ29udGVudCA9IENvcmUuQ29uZmlnLkdldCgnUmVtYXJrUmVnRXhwQ29udGVudCcpLAogICAgICAgICAgICAvLyBBZGQgc29tZSBzcGVjaWFsIHZhbGlkYXRpb24gbWV0aG9kcyBmb3IgdGhlIGVkaXQgc2NyZWVuCiAgICAgICAgICAgIC8vIERlZmluZSBhbGwgYXZhaWxhYmxlIGVsZW1lbnRzIChvbmx5IHRoZSBwcmVmaXhlcykgaW4gYSByb3cKICAgICAgICAgICAgRWxlbWVudFByZWZpeGVzID0gWydQcm9qZWN0SUQnLCAnQWN0aW9uSUQnLCAnUmVtYXJrJywgJ1N0YXJ0VGltZScsICdFbmRUaW1lJywgJ1BlcmlvZCddLAogICAgICAgICAgICBDaGVja2VkOwoKICAgICAgICAvLyBWYWxpZGF0ZXMgdGhlIHByb2plY3Q6IGlmIHNvbWUgb3RoZXIgZmllbGQgaW4gdGhpcyByb3cgaXMgZmlsbGVkLCB0aGUgcHJvamVjdCBzZWxlY3QgbXVzdCBiZSBmaWxsZWQsIHRvbwogICAgICAgIENvcmUuRm9ybS5WYWxpZGF0ZS5BZGRNZXRob2QoJ1ZhbGlkYXRlX1RpbWVBY2NvdW50aW5nX1Byb2plY3QnLCBmdW5jdGlvbiAoVmFsdWUsIEVsZW1lbnQpIHsKICAgICAgICAgICAgdmFyIElELAogICAgICAgICAgICAgICAgTW9kZSA9ICQoRWxlbWVudCkuYXR0cignaWQnKS5pbmRleE9mKCdBcHBlbmQnKSAhPSAtMSA/ICdBcHBlbmQnIDogJycsCiAgICAgICAgICAgICAgICBSZXN1bHQgPSB0cnVlOwoKICAgICAgICAgICAgLy8gR2V0IElECiAgICAgICAgICAgIC8vIE91ciBFbGVtZW50IGNhbiBiZSB0aGUgc2VsZWN0IGVsZW1lbnQgb3IgdGhlIGF1dG9jb21wbGV0aW9uIGlucHV0IGZpZWxkCiAgICAgICAgICAgIGlmICgkKEVsZW1lbnQpLmlzKCdzZWxlY3QnKSkgewogICAgICAgICAgICAgICAgSUQgPSAkKEVsZW1lbnQpLmF0dHIoJ2lkJykucmVwbGFjZShNb2RlICsgJ1Byb2plY3RJRCcsICcnKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgIElEID0gJChFbGVtZW50KS5wcmV2QWxsKCdzZWxlY3QnKS5hdHRyKCdpZCcpLnJlcGxhY2UoTW9kZSArICdQcm9qZWN0SUQnLCAnJyk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmICghVmFsdWUpIHsKICAgICAgICAgICAgICAgICQuZWFjaChFbGVtZW50UHJlZml4ZXMsIGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoIVJlc3VsdCkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBpZiAodGhpcyAhPT0gKE1vZGUgKyAnUHJvamVjdElEJykgJiYgJCgnIycgKyBNb2RlICsgdGhpcyArIElEKS52YWwoKSkgewogICAgICAgICAgICAgICAgICAgICAgICBSZXN1bHQgPSBmYWxzZTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgcmV0dXJuIFJlc3VsdDsKICAgICAgICB9KTsKCiAgICAgICAgQ29yZS5Gb3JtLlZhbGlkYXRlLkFkZFJ1bGUoJ1ZhbGlkYXRlX1RpbWVBY2NvdW50aW5nX1Byb2plY3QnLCB7CiAgICAgICAgICAgIC8qZXNsaW50LWRpc2FibGUgY2FtZWxjYXNlICovCiAgICAgICAgICAgIFZhbGlkYXRlX1RpbWVBY2NvdW50aW5nX1Byb2plY3Q6IHRydWUKICAgICAgICAgICAgLyplc2xpbnQtZW5hYmxlIGNhbWVsY2FzZSAqLwogICAgICAgIH0pOwoKICAgICAgICAvLyBWYWxpZGF0ZXMgdGhlIHJlbWFya3M6IGRlcGVuZGluZyBvbiB0aGUgcHJvamVjdCwgcmVtYXJrcyBtdXN0IGJlIGVudGVyZWQgb3Igbm90CiAgICAgICAgQ29yZS5Gb3JtLlZhbGlkYXRlLkFkZE1ldGhvZCgnVmFsaWRhdGVfVGltZUFjY291bnRpbmdfUmVtYXJrJywgZnVuY3Rpb24gKFZhbHVlLCBFbGVtZW50KSB7CiAgICAgICAgICAgIHZhciBNb2RlID0gJChFbGVtZW50KS5hdHRyKCdpZCcpLmluZGV4T2YoJ0FwcGVuZCcpICE9IC0xID8gJ0FwcGVuZCcgOiAnJywKICAgICAgICAgICAgICAgIElEID0gJChFbGVtZW50KS5hdHRyKCdpZCcpLnJlcGxhY2UoTW9kZSArICdSZW1hcmsnLCAnJyksCiAgICAgICAgICAgICAgICBSZW1hcmtSZWdFeHAgPSBuZXcgUmVnRXhwKCJeKCIgKyBSZW1hcmtSZWdFeHBDb250ZW50ICsgIikkIiksCiAgICAgICAgICAgICAgICBSZW1hcmtDaGVjayA9IFJlbWFya1JlZ0V4cC50ZXN0KCQoJyMnICsgTW9kZSArICdQcm9qZWN0SUQnICsgSUQpLnZhbCgpKTsKCgogICAgICAgICAgICBpZiAoJCgnIycgKyBNb2RlICsgJ1Byb2plY3RJRCcgKyBJRCkudmFsKCkpIHsKICAgICAgICAgICAgICAgIHJldHVybiAhKFJlbWFya0NoZWNrICYmIFZhbHVlLmxlbmd0aCA8IDgpOwogICAgICAgICAgICB9CgogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9KTsKCiAgICAgICAgQ29yZS5Gb3JtLlZhbGlkYXRlLkFkZFJ1bGUoJ1ZhbGlkYXRlX1RpbWVBY2NvdW50aW5nX1JlbWFyaycsIHsKICAgICAgICAgICAgLyplc2xpbnQtZGlzYWJsZSBjYW1lbGNhc2UgKi8KICAgICAgICAgICAgVmFsaWRhdGVfVGltZUFjY291bnRpbmdfUmVtYXJrOiB0cnVlCiAgICAgICAgICAgIC8qZXNsaW50LWVuYWJsZSBjYW1lbGNhc2UgKi8KICAgICAgICB9KTsKCiAgICAgICAgLy8gVmFsaWRhdGVzIHRoZSBzdGFydCB0aW1lOiBpZiBhIHByb2plY3QgaXMgZ2l2ZW4gYW5kIG5vIHRpbWUgcGVyaW9kIGlzIGdpdmVuLCB0aGlzIGZpZWxkIGlzIHJlcXVpcmVkCiAgICAgICAgQ29yZS5Gb3JtLlZhbGlkYXRlLkFkZE1ldGhvZCgnVmFsaWRhdGVfVGltZUFjY291bnRpbmdfU3RhcnRUaW1lJywgZnVuY3Rpb24gKFZhbHVlLCBFbGVtZW50KSB7CiAgICAgICAgICAgIHZhciBNb2RlID0gJChFbGVtZW50KS5hdHRyKCdpZCcpLmluZGV4T2YoJ0FwcGVuZCcpICE9IC0xID8gJ0FwcGVuZCcgOiAnJywKICAgICAgICAgICAgICAgIElEID0gJChFbGVtZW50KS5hdHRyKCdpZCcpLnJlcGxhY2UoTW9kZSArICdTdGFydFRpbWUnLCAnJyk7CgoKICAgICAgICAgICAgaWYgKCFWYWx1ZSAmJiAkKCcjJyArIE1vZGUgKyAnUHJvamVjdElEJyArIElEKS52YWwoKSAmJiAhJCgnIycgKyBNb2RlICsgJ1BlcmlvZCcgKyBJRCkudmFsKCkpIHsKICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfSk7CgogICAgICAgIENvcmUuRm9ybS5WYWxpZGF0ZS5BZGRSdWxlKCdWYWxpZGF0ZV9UaW1lQWNjb3VudGluZ19TdGFydFRpbWUnLCB7CiAgICAgICAgICAgIC8qZXNsaW50LWRpc2FibGUgY2FtZWxjYXNlICovCiAgICAgICAgICAgIFZhbGlkYXRlX1RpbWVBY2NvdW50aW5nX1N0YXJ0VGltZTogdHJ1ZQogICAgICAgICAgICAvKmVzbGludC1lbmFibGUgY2FtZWxjYXNlICovCiAgICAgICAgfSk7CgogICAgICAgIC8vIFZhbGlkYXRlcyB0aGUgdGltZSBwZXJpb2Q6IGlmIGEgcHJvamVjdCBpcyBnaXZlbiBhbmQgbm8gc3RhcnQgdGltZSBpcyBnaXZlbiwgdGhpcyBmaWVsZCBpcyByZXF1aXJlZAogICAgICAgIENvcmUuRm9ybS5WYWxpZGF0ZS5BZGRNZXRob2QoJ1ZhbGlkYXRlX1RpbWVBY2NvdW50aW5nX1BlcmlvZCcsIGZ1bmN0aW9uIChWYWx1ZSwgRWxlbWVudCkgewogICAgICAgICAgICB2YXIgTW9kZSA9ICQoRWxlbWVudCkuYXR0cignaWQnKS5pbmRleE9mKCdBcHBlbmQnKSAhPSAtMSA/ICdBcHBlbmQnIDogJycsCiAgICAgICAgICAgICAgICBJRCA9ICQoRWxlbWVudCkuYXR0cignaWQnKS5yZXBsYWNlKE1vZGUgKyAnUGVyaW9kJywgJycpOwoKICAgICAgICAgICAgaWYgKCFWYWx1ZSAmJiAkKCcjJyArIE1vZGUgKyAnUHJvamVjdElEJyArIElEKS52YWwoKSAmJiAhJCgnIycgKyBNb2RlICsgJ1N0YXJ0VGltZScgKyBJRCkudmFsKCkpIHsKICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfSk7CgogICAgICAgIENvcmUuRm9ybS5WYWxpZGF0ZS5BZGRSdWxlKCdWYWxpZGF0ZV9UaW1lQWNjb3VudGluZ19QZXJpb2QnLCB7CiAgICAgICAgICAgIC8qZXNsaW50LWRpc2FibGUgY2FtZWxjYXNlICovCiAgICAgICAgICAgIFZhbGlkYXRlX1RpbWVBY2NvdW50aW5nX1BlcmlvZDogdHJ1ZQogICAgICAgICAgICAvKmVzbGludC1lbmFibGUgY2FtZWxjYXNlICovCiAgICAgICAgfSk7CgogICAgICAgIC8vIGluaXRpYXRlICJtb3JlIGlucHV0IGZpZWxkcyIgZnVuY3Rpb25hbGl0eQogICAgICAgIEluaXRBZGRSb3coKTsKCiAgICAgICAgLy8gaW5pdGlhdGUgcGVyaW9kIGNhbGN1bGF0aW9uCiAgICAgICAgSW5pdFBlcmlvZENhbGN1bGF0aW9uKCk7CgogICAgICAgIC8vIFNlbGVjdCBvbmx5IG9uZSBjaGVja2JveCBpbiB0aGUgZ3JvdXAgJ0Fic2VuY2UnCiAgICAgICAgJCgiLkFic2VuY2UgaW5wdXQ6Y2hlY2tib3giKS5jbGljayhmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgIENoZWNrZWQgPSAkKHRoaXMpLnByb3AoImNoZWNrZWQiKTsKICAgICAgICAgICAgJCgiLkFic2VuY2UgaW5wdXQ6Y2hlY2tib3giKS5wcm9wKCJjaGVja2VkIiwgZmFsc2UpOwogICAgICAgICAgICAkKHRoaXMpLnByb3AoImNoZWNrZWQiLCBDaGVja2VkKTsKICAgICAgICB9KTsKICAgIH07CgoKICAgIC8qKgogICAgICogQG5hbWUgTWFzc0VudHJ5SW5pdAogICAgICogQG1lbWJlcm9mIFRpbWVBY2NvdW50aW5nLkFnZW50LkVkaXRUaW1lUmVjb3JkcwogICAgICogQGZ1bmN0aW9uCiAgICAgKiBAcGFyYW0ge09iamVjdH0gTGFuZ3VhZ2Ugb2JqZWN0IHdpdGggdGV4dCB0cmFuc2xhdGlvbnMKICAgICAqIEBkZXNjcmlwdGlvbgogICAgICogICAgICBUaGlzIGZ1bmN0aW9uIGluaXRpYWxpemVzIHRoZSBqYXZhc2NyaXB0IGZvciB0aGUgbWFzcyBlbnRyeSBmdW5jdGlvbmFsaXR5CiAgICAgKi8KICAgIFRhcmdldE5TLk1hc3NFbnRyeUluaXQgPSBmdW5jdGlvbigpIHsKICAgICAgICAkKCcjSW5jb21wbGV0ZVdvcmtpbmdEYXktQWxsJykub2ZmKCdjbGljay5TZWxlY3RBbGxEYXlzJykub24oJ2NsaWNrLlNlbGVjdEFsbERheXMnLCBmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgIHZhciBTdGF0ZSA9ICQodGhpcykucHJvcCgnY2hlY2tlZCcpOwogICAgICAgICAgICAkKCcuSW5jb21wbGV0ZVdvcmtpbmdEYXlzIHRib2R5IGlucHV0OmNoZWNrYm94JykucHJvcCgnY2hlY2tlZCcsIFN0YXRlKTsKICAgICAgICB9KTsKICAgICAgICAkKCcjTWFzc0VudHJ5U3VibWl0Jykub2ZmKCdjbGljay5NYXNzRW50cnlTdWJtaXQnKS5vbignY2xpY2suTWFzc0VudHJ5U3VibWl0JywgZnVuY3Rpb24gKCkgewogICAgICAgICAgICB2YXIgJFdvcmtpbmdEYXlDaGVja2JveGVzID0gJCgnLkluY29tcGxldGVXb3JraW5nRGF5cyB0Ym9keSBpbnB1dDpjaGVja2JveDpjaGVja2VkJykuZmlsdGVyKCdbbmFtZSE9SW5jb21wbGV0ZVdvcmtpbmdEYXktQWxsXScpOwoKICAgICAgICAgICAgaWYgKCEkV29ya2luZ0RheUNoZWNrYm94ZXMubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICBhbGVydChDb3JlLkxhbmd1YWdlLlRyYW5zbGF0ZSgnUGxlYXNlIGNob29zZSBhdCBsZWFzdCBvbmUgZGF5IScpKTsKICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgLy8gU2hvdyBvdmVybGF5CiAgICAgICAgICAgIENvcmUuVUkuRGlhbG9nLlNob3dDb250ZW50RGlhbG9nKCQoJyNNYXNzRW50cnlDb25maXJtRGlhbG9nJyksIENvcmUuTGFuZ3VhZ2UuVHJhbnNsYXRlKCdNYXNzIEVudHJ5JyksICcxNTBweCcsICdDZW50ZXInLCB0cnVlLCBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgTGFiZWw6IENvcmUuTGFuZ3VhZ2UuVHJhbnNsYXRlKCdTdWJtaXQnKSwKICAgICAgICAgICAgICAgICAgICBGdW5jdGlvbjogZnVuY3Rpb24gKCkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgJFNlbGVjdGVkUmFkaW8gPSAkKCcjTWFzc0VudHJ5Q29uZmlybVJhZGlvIGxpIGlucHV0OnJhZGlvOmNoZWNrZWQnKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFic2VuY2VSZWFzb24sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb2xsZWN0ZWREYXRlcyA9ICcnOwoKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCEkU2VsZWN0ZWRSYWRpby5sZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsZXJ0KENvcmUuTGFuZ3VhZ2UuVHJhbnNsYXRlKCdQbGVhc2UgY2hvb3NlIGEgcmVhc29uIGZvciBhYnNlbmNlIScpKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgLy8gc2V0IGFic2VuY2UgcmVhc29uCiAgICAgICAgICAgICAgICAgICAgICAgIEFic2VuY2VSZWFzb24gPSAkU2VsZWN0ZWRSYWRpby5kYXRhKCdhYnNlbmNlJyk7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChBYnNlbmNlUmVhc29uID09PSAnTGVhdmVEYXknKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCcjTWFzc0VudHJ5IGlucHV0W25hbWU9TGVhdmVEYXldJykudmFsKDEpOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKEFic2VuY2VSZWFzb24gPT09ICdTaWNrJykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgnI01hc3NFbnRyeSBpbnB1dFtuYW1lPVNpY2tdJykudmFsKDEpOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKEFic2VuY2VSZWFzb24gPT09ICdPdmVydGltZScpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoJyNNYXNzRW50cnkgaW5wdXRbbmFtZT1PdmVydGltZV0nKS52YWwoMSk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNvbGxlY3QgZGF0ZXMKICAgICAgICAgICAgICAgICAgICAgICAgJCgnLkluY29tcGxldGVXb3JraW5nRGF5cyB0Ym9keSBpbnB1dDpjaGVja2JveDpjaGVja2VkJykuZWFjaChmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgRGF0ZUl0ZW0gPSAkKHRoaXMpLmF0dHIoJ25hbWUnKS5yZXBsYWNlKC9JbmNvbXBsZXRlV29ya2luZ0RheS0vLCAiIik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoRGF0ZUl0ZW0gIT09ICdBbGwnKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29sbGVjdGVkRGF0ZXMgKz0gRGF0ZUl0ZW0gKyAnfCc7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgICAgICAkKCcjTWFzc0VudHJ5IGlucHV0W25hbWU9RGF0ZXNdJykudmFsKENvbGxlY3RlZERhdGVzKTsKCiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFNob3cgd2FpdGluZyBpY29uCiAgICAgICAgICAgICAgICAgICAgICAgICQoJy5EaWFsb2c6dmlzaWJsZScpCiAgICAgICAgICAgICAgICAgICAgICAgIC5maW5kKCcuQ29udGVudEZvb3RlcicpCiAgICAgICAgICAgICAgICAgICAgICAgIC5lbXB0eSgpCiAgICAgICAgICAgICAgICAgICAgICAgIC5lbmQoKQogICAgICAgICAgICAgICAgICAgICAgICAuZmluZCgnLklubmVyQ29udGVudCcpCiAgICAgICAgICAgICAgICAgICAgICAgIC53aWR0aCgkKCcuRGlhbG9nOnZpc2libGUnKS5maW5kKCcuSW5uZXJDb250ZW50Jykud2lkdGgoKSkKICAgICAgICAgICAgICAgICAgICAgICAgLmVtcHR5KCkKICAgICAgICAgICAgICAgICAgICAgICAgLmFwcGVuZChDb3JlLlRlbXBsYXRlLlJlbmRlcignQWdlbnQvVGltZUFjY291bnRpbmcvRGlhbG9nL0FqYXhMb2FkZXInKSk7CgogICAgICAgICAgICAgICAgICAgICAgICAvLyBTdWJtaXQgZm9ybQogICAgICAgICAgICAgICAgICAgICAgICAkKCcjTWFzc0VudHJ5Jykuc3VibWl0KCk7CiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICBDbGFzczogJ1ByaW1hcnknCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIExhYmVsOiBDb3JlLkxhbmd1YWdlLlRyYW5zbGF0ZSgnQ2FuY2VsJyksCiAgICAgICAgICAgICAgICAgICAgRnVuY3Rpb246IGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgQ29yZS5VSS5EaWFsb2cuQ2xvc2VEaWFsb2coJCgnLkRpYWxvZzp2aXNpYmxlJykpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXSk7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9KTsKICAgIH07CgogICAgQ29yZS5Jbml0LlJlZ2lzdGVyTmFtZXNwYWNlKFRhcmdldE5TLCAnQVBQX01PRFVMRScpOwoKICAgIHJldHVybiBUYXJnZXROUzsKfShUaW1lQWNjb3VudGluZy5BZ2VudC5FZGl0VGltZVJlY29yZHMgfHwge30pKTsK</File>
        <File Location="var/httpd/htdocs/js/TimeAccounting.Agent.Overview.js" Permission="660" Encode="Base64">Ly8gLS0KLy8gT1RPQk8gaXMgYSB3ZWItYmFzZWQgdGlja2V0aW5nIHN5c3RlbSBmb3Igc2VydmljZSBvcmdhbmlzYXRpb25zLgovLyAtLQovLyBDb3B5cmlnaHQgKEMpIDIwMDEtMjAyMCBPVFJTIEFHLCBodHRwczovL290cnMuY29tLwovLyBDb3B5cmlnaHQgKEMpIDIwMTktMjAyNCBSb3RoZXIgT1NTIEdtYkgsIGh0dHBzOi8vb3RvYm8uZGUvCi8vIC0tCi8vIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5IGl0IHVuZGVyCi8vIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlCi8vIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCi8vIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLCBidXQgV0lUSE9VVAovLyBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUwovLyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KLy8gWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKLy8gYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uIElmIG5vdCwgc2VlIDxodHRwczovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCi8vIC0tCgoidXNlIHN0cmljdCI7Cgp2YXIgVGltZUFjY291bnRpbmcgPSBUaW1lQWNjb3VudGluZyB8fCB7fTsKCi8qKgogKiBAbmFtZXNwYWNlIFRpbWVBY2NvdW50aW5nLkFnZW50Lk92ZXJ2aWV3CiAqIEBhdXRob3IgUm90aGVyIE9TUyBHbWJICiAqIEBkZXNjcmlwdGlvbgogKiAgICAgIFRoaXMgbmFtZXNwYWNlIGNvbnRhaW5zIHRoZSBzcGVjaWFsIG1vZHVsZSBmdW5jdGlvbnMgZm9yIFRpbWVBY2NvdW50aW5nLgogKi8KVGltZUFjY291bnRpbmcuQWdlbnQuT3ZlcnZpZXcgPSAoZnVuY3Rpb24gKFRhcmdldE5TKSB7CgogICAgVGFyZ2V0TlMuSW5pdCA9IGZ1bmN0aW9uICgpIHsKCiAgICAgICAgJCgnLk1hc3RlckFjdGlvbicpLmJpbmQoJ2NsaWNrJywgZnVuY3Rpb24gKEV2ZW50KSB7CiAgICAgICAgICAgIHZhciAkTWFzdGVyQWN0aW9uTGluayA9ICQodGhpcykuZmluZCgnLk1hc3RlckFjdGlvbkxpbmsnKTsKICAgICAgICAgICAgLy8gb25seSBhY3QgaWYgdGhlIGxpbmsgd2FzIG5vdCBjbGlja2VkIGRpcmVjdGx5CiAgICAgICAgICAgIGlmIChFdmVudC50YXJnZXQgIT09ICRNYXN0ZXJBY3Rpb25MaW5rLmdldCgwKSkgewogICAgICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uID0gJE1hc3RlckFjdGlvbkxpbmsuYXR0cignaHJlZicpOwogICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICB9OwoKICAgIENvcmUuSW5pdC5SZWdpc3Rlck5hbWVzcGFjZShUYXJnZXROUywgJ0FQUF9NT0RVTEUnKTsKCiAgICByZXR1cm4gVGFyZ2V0TlM7Cgp9KFRpbWVBY2NvdW50aW5nLkFnZW50Lk92ZXJ2aWV3IHx8IHt9KSk7Cg==</File>
        <File Location="var/httpd/htdocs/js/TimeAccounting.Agent.Reporting.js" Permission="660" Encode="Base64">Ly8gLS0KLy8gT1RPQk8gaXMgYSB3ZWItYmFzZWQgdGlja2V0aW5nIHN5c3RlbSBmb3Igc2VydmljZSBvcmdhbmlzYXRpb25zLgovLyAtLQovLyBDb3B5cmlnaHQgKEMpIDIwMDEtMjAyMCBPVFJTIEFHLCBodHRwczovL290cnMuY29tLwovLyBDb3B5cmlnaHQgKEMpIDIwMTktMjAyNCBSb3RoZXIgT1NTIEdtYkgsIGh0dHBzOi8vb3RvYm8uZGUvCi8vIC0tCi8vIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5IGl0IHVuZGVyCi8vIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlCi8vIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCi8vIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLCBidXQgV0lUSE9VVAovLyBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUwovLyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KLy8gWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKLy8gYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uIElmIG5vdCwgc2VlIDxodHRwczovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCi8vIC0tCgoidXNlIHN0cmljdCI7Cgp2YXIgVGltZUFjY291bnRpbmcgPSBUaW1lQWNjb3VudGluZyB8fCB7fTsKVGltZUFjY291bnRpbmcuQWdlbnQgPSBUaW1lQWNjb3VudGluZy5BZ2VudCB8fCB7fTsKCi8qKgogKiBAbmFtZXNwYWNlIFRpbWVBY2NvdW50aW5nLkFnZW50LlJlcG9ydGluZwogKiBAYXV0aG9yIFJvdGhlciBPU1MgR21iSAogKiBAZGVzY3JpcHRpb24KICogICAgICBUaGlzIG5hbWVzcGFjZSBjb250YWlucyB0aGUgc3BlY2lhbCBtb2R1bGUgZnVuY3Rpb25zIGZvciBUaW1lQWNjb3VudGluZy4KICovClRpbWVBY2NvdW50aW5nLkFnZW50LlJlcG9ydGluZyA9IChmdW5jdGlvbiAoVGFyZ2V0TlMpIHsKCiAgICBUYXJnZXROUy5Jbml0ID0gZnVuY3Rpb24gKCkgewoKICAgICAgICAkKCcjTmF2aWdhdGlvblNlbGVjdCcpLm9uKCdjbGljaycsIGZ1bmN0aW9uKCl7CiAgICAgICAgICAgICQoJyNEYXRlU2VsZWN0aW9uRm9ybScpLnN1Ym1pdCgpOwogICAgICAgIH0pOwogICAgfTsKCiAgICBDb3JlLkluaXQuUmVnaXN0ZXJOYW1lc3BhY2UoVGFyZ2V0TlMsICdBUFBfTU9EVUxFJyk7CgogICAgcmV0dXJuIFRhcmdldE5TOwoKfShUaW1lQWNjb3VudGluZy5BZ2VudC5SZXBvcnRpbmcgfHwge30pKTsK</File>
        <File Location="var/httpd/htdocs/js/TimeAccounting.Agent.TicketTimeAccount.js" Permission="660" Encode="Base64">Ly8gLS0KLy8gT1RPQk8gaXMgYSB3ZWItYmFzZWQgdGlja2V0aW5nIHN5c3RlbSBmb3Igc2VydmljZSBvcmdhbmlzYXRpb25zLgovLyAtLQovLyBDb3B5cmlnaHQgKEMpIDIwMDEtMjAyMCBPVFJTIEFHLCBodHRwczovL290cnMuY29tLwovLyBDb3B5cmlnaHQgKEMpIDIwMTktMjAyNCBSb3RoZXIgT1NTIEdtYkgsIGh0dHBzOi8vb3RvYm8uZGUvCi8vIC0tCi8vIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5IGl0IHVuZGVyCi8vIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlCi8vIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCi8vIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLCBidXQgV0lUSE9VVAovLyBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUwovLyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KLy8gWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKLy8gYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uIElmIG5vdCwgc2VlIDxodHRwczovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCi8vIC0tCgoidXNlIHN0cmljdCI7Cgp2YXIgVGltZUFjY291bnRpbmcgPSBUaW1lQWNjb3VudGluZyB8fCB7fTsKdmFyIFRpbWVBY2NvdW50aW5nQWdlbnQgPSBUaW1lQWNjb3VudGluZ0FnZW50IHx8IHt9OwoKLyoqCiAqIEBuYW1lc3BhY2UgVGltZUFjY291bnRpbmcuQWdlbnQuVGlja2V0VGltZUFjY291bnQKICogQGF1dGhvciBSb3RoZXIgT1NTIEdtYkgKICogQGRlc2NyaXB0aW9uCiAqICAgICAgVGhpcyBuYW1lc3BhY2UgY29udGFpbnMgdGhlIHNwZWNpYWwgbW9kdWxlIGZ1bmN0aW9ucyBmb3IgVGltZUFjY291bnRpbmcuCiAqLwpUaW1lQWNjb3VudGluZy5BZ2VudC5UaWNrZXRUaW1lQWNjb3VudCA9IChmdW5jdGlvbiAoVGFyZ2V0TlMpIHsKCiAgICBmdW5jdGlvbiBJbml0UGVyaW9kQ2FsY3VsYXRpb24oKSB7CiAgICAgICAgLy8gaW5pdCBjYWxjdWxhdGlvbiBvZiBwZXJpb2QgZmllbGQgYWZ0ZXIgd29ya2luZyBob3VycyB3aGVyZSBhZGRlZC9zdWJ0cmFjdGVkL3doYXRldmVyLi4uCiAgICAgICAgJCgnI1BlcmlvZCcpLm9mZignY2hhbmdlLlBlcmlvZENhbGN1bGF0aW9uJykub24oJ2NoYW5nZS5QZXJpb2RDYWxjdWxhdGlvbicsIGZ1bmN0aW9uICgpIHsKICAgICAgICAgICB2YXIgRmllbGRWYWx1ZSA9ICQodGhpcykudmFsKCk7CgogICAgICAgICAgIC8vIHJlcGxhY2UgLCB3aXRoIC4KICAgICAgICAgICBGaWVsZFZhbHVlID0gRmllbGRWYWx1ZS5yZXBsYWNlKC8sL2csICIuIik7CgogICAgICAgICAgIC8vIGNoZWNrIGlmIHRoZSBlbnRlcmVkIHZhbHVlIG9ubHkgY29uc2lzdHMgb2YgYWxsb3dlZCB2YWx1ZXMKICAgICAgICAgICAvLyBpZiBub3QsIHdlIGRvIG5vdCBldmFsIGZvciBzZWN1cml0eSByZWFzb25zCiAgICAgICAgICAgaWYgKEZpZWxkVmFsdWUubWF0Y2goL15bMC05LitcLSBdKyQvKSkgewogICAgICAgICAgICAgICAvLyBDYWxjdWxhdGlvbgogICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgRmllbGRWYWx1ZSA9IGV2YWwoRmllbGRWYWx1ZSk7CiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgY2F0Y2ggewogICAgICAgICAgICAgICAgICAgRmllbGRWYWx1ZSA9IDA7CiAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgIC8vIHNldCBuZXcgdmFsdWUKICAgICAgICAgICAgICAgJCh0aGlzKS52YWwoRmllbGRWYWx1ZS50b0ZpeGVkKDIpKTsKCiAgICAgICAgICAgICAgIC8vIG5vdyBTdGFydFRpbWUgYW5kIEVuZFRpbWUgd2lsbCBub3QgbWF0Y2ggdGhlIHBlcmlvZCBhbnltb3JlCiAgICAgICAgICAgICAgIC8vIGRlbGV0ZSB0aGVzZSBlbnRyaWVzCiAgICAgICAgICAgICAgICQoJyNTdGFydFRpbWUnLCAnI0VuZFRpbWUnKS52YWwoJycpOwogICAgICAgICAgIH0KICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgJCh0aGlzKS52YWwoJycpOwogICAgICAgICAgIH0KICAgICAgICB9KTsKCiAgICAgICAgLy8gaW5pdCBwZXJpb2QgY2FsY3VsYXRpb24gb24gc3RhcnQgdGltZSBhbmQgZW5kIHRpbWUgZmllbGRzCiAgICAgICAgJCgnI1N0YXJ0VGltZSwgI0VuZFRpbWUnKS5vZmYoJ2NoYW5nZS5QZXJpb2RDYWxjdWxhdGlvbicpLm9uKCdjaGFuZ2UuUGVyaW9kQ2FsY3VsYXRpb24nLCBmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgIHZhciAkU3RhcnRUaW1lLCAkRW5kVGltZSwKICAgICAgICAgICAgICAgIFN0YXJ0VGltZUhvdXIsIFN0YXJ0VGltZU1pbnV0ZSwgRW5kVGltZUhvdXIsIEVuZFRpbWVNaW51dGUsCiAgICAgICAgICAgICAgICBTdGFydERhdGUsIEVuZERhdGUsIFRvZGF5LAogICAgICAgICAgICAgICAgUGVyaW9kOwoKICAgICAgICAgICAgaWYgKCQodGhpcykuYXR0cignaWQnKSA9PSAnU3RhcnRUaW1lJykgewogICAgICAgICAgICAgICAgJFN0YXJ0VGltZSA9ICQodGhpcyk7CiAgICAgICAgICAgICAgICAkRW5kVGltZSA9ICQoJyNFbmRUaW1lJyk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAkU3RhcnRUaW1lID0gJCgnI1N0YXJ0VGltZScpOwogICAgICAgICAgICAgICAgJEVuZFRpbWUgPSAkKHRoaXMpOwogICAgICAgICAgICB9CgogICAgICAgICAgICAvLyBvbmx5IGNhbGN1bGF0ZSBpZiBib3RoIGZpZWxkcyBhcmUgZmlsbGVkCiAgICAgICAgICAgIGlmICgkU3RhcnRUaW1lLnZhbCgpICYmICRFbmRUaW1lLnZhbCgpKSB7CiAgICAgICAgICAgICAgICAvLyBleHRyYWN0IGhvdXJzIGFuZCBtaW51dGVzCiAgICAgICAgICAgICAgICBTdGFydFRpbWVIb3VyID0gJFN0YXJ0VGltZS52YWwoKS5zcGxpdCgvOi8pWzBdIHx8IDA7CiAgICAgICAgICAgICAgICBTdGFydFRpbWVNaW51dGUgPSAkU3RhcnRUaW1lLnZhbCgpLnNwbGl0KC86LylbMV0gfHwgMDsKICAgICAgICAgICAgICAgIEVuZFRpbWVIb3VyID0gJEVuZFRpbWUudmFsKCkuc3BsaXQoLzovKVswXSB8fCAwOwogICAgICAgICAgICAgICAgRW5kVGltZU1pbnV0ZSA9ICRFbmRUaW1lLnZhbCgpLnNwbGl0KC86LylbMV0gfHwgMDsKCiAgICAgICAgICAgICAgICAvLyBkZWZpbmUgZGF0ZSBvYmplY3RzCiAgICAgICAgICAgICAgICBUb2RheSA9IG5ldyBEYXRlKCk7CiAgICAgICAgICAgICAgICBTdGFydERhdGUgPSBuZXcgRGF0ZShUb2RheS5nZXRZZWFyKCksIFRvZGF5LmdldE1vbnRoKCksIFRvZGF5LmdldERhdGUoKSwgU3RhcnRUaW1lSG91ciwgU3RhcnRUaW1lTWludXRlLCAwKTsKICAgICAgICAgICAgICAgIEVuZERhdGUgPSBuZXcgRGF0ZShUb2RheS5nZXRZZWFyKCksIFRvZGF5LmdldE1vbnRoKCksIFRvZGF5LmdldERhdGUoKSwgRW5kVGltZUhvdXIsIEVuZFRpbWVNaW51dGUsIDApOwoKICAgICAgICAgICAgICAgIC8vIGNhbGN1bGF0ZSBkaWZmZXJlbmNlcwogICAgICAgICAgICAgICAgUGVyaW9kID0gRW5kRGF0ZS5nZXRUaW1lKCkgLSBTdGFydERhdGUuZ2V0VGltZSgpOwogICAgICAgICAgICAgICAgUGVyaW9kID0gUGVyaW9kIC8gKDEwMDAgKiA2MCAqIDYwKTsKCiAgICAgICAgICAgICAgICAvLyBzZXQgbmV3IHZhbHVlCiAgICAgICAgICAgICAgICBpZiAoIWlzTmFOKFBlcmlvZCkpIHsKICAgICAgICAgICAgICAgICAgICAkKCcjUGVyaW9kJykudmFsKFBlcmlvZC50b0ZpeGVkKDIpKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgICAgICQoJyNQZXJpb2QnKS52YWwoJycpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICB9CgogICAgVGFyZ2V0TlMuSW5pdCA9IGZ1bmN0aW9uICgpIHsKICAgIAogICAgICAgIC8vIGluaXRpYXRlIHBlcmlvZCBjYWxjdWxhdGlvbgogICAgICAgIEluaXRQZXJpb2RDYWxjdWxhdGlvbigpOwogICAgICAgIAogICAgfTsKCiAgICBDb3JlLkluaXQuUmVnaXN0ZXJOYW1lc3BhY2UoVGFyZ2V0TlMsICdBUFBfTU9EVUxFJyk7CgogICAgcmV0dXJuIFRhcmdldE5TOwoKfShUaW1lQWNjb3VudGluZ0FnZW50LlRpY2tldFRpbWVBY2NvdW50IHx8IHt9KSk7Cg==</File>
        <File Location="var/httpd/htdocs/js/TimeAccounting.Agent.View.js" Permission="660" Encode="Base64">Ly8gLS0KLy8gT1RPQk8gaXMgYSB3ZWItYmFzZWQgdGlja2V0aW5nIHN5c3RlbSBmb3Igc2VydmljZSBvcmdhbmlzYXRpb25zLgovLyAtLQovLyBDb3B5cmlnaHQgKEMpIDIwMDEtMjAyMCBPVFJTIEFHLCBodHRwczovL290cnMuY29tLwovLyBDb3B5cmlnaHQgKEMpIDIwMTktMjAyNCBSb3RoZXIgT1NTIEdtYkgsIGh0dHBzOi8vb3RvYm8uZGUvCi8vIC0tCi8vIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5IGl0IHVuZGVyCi8vIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlCi8vIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCi8vIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLCBidXQgV0lUSE9VVAovLyBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUwovLyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KLy8gWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKLy8gYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uIElmIG5vdCwgc2VlIDxodHRwczovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCi8vIC0tCgoidXNlIHN0cmljdCI7Cgp2YXIgVGltZUFjY291bnRpbmcgPSBUaW1lQWNjb3VudGluZyB8fCB7fTsKCi8qKgogKiBAbmFtZXNwYWNlIFRpbWVBY2NvdW50aW5nLkFnZW50LlZpZXcKICogQGF1dGhvciBSb3RoZXIgT1NTIEdtYkgKICogQGRlc2NyaXB0aW9uCiAqICAgICAgVGhpcyBuYW1lc3BhY2UgY29udGFpbnMgdGhlIHNwZWNpYWwgbW9kdWxlIGZ1bmN0aW9ucyBmb3IgVGltZUFjY291bnRpbmcuCiAqLwpUaW1lQWNjb3VudGluZy5BZ2VudC5WaWV3ID0gKGZ1bmN0aW9uIChUYXJnZXROUykgewoKICAgIFRhcmdldE5TLkluaXQgPSBmdW5jdGlvbiAoKSB7CgogICAgICAgICQoJyNOYXZpZ2F0aW9uU2VsZWN0JykuYmluZCgnY2xpY2snLCBmdW5jdGlvbigpewogICAgICAgICAgICAkKCcjRGF0ZVNlbGVjdGlvbkZvcm0nKS5zdWJtaXQoKTsKICAgICAgICB9KTsKICAgIH07CgogICAgQ29yZS5Jbml0LlJlZ2lzdGVyTmFtZXNwYWNlKFRhcmdldE5TLCAnQVBQX01PRFVMRScpOwoKICAgIHJldHVybiBUYXJnZXROUzsKCn0oVGltZUFjY291bnRpbmcuQWdlbnQuVmlldyB8fCB7fSkpOwo=</File>
        <File Location="var/httpd/htdocs/js/test/TimeAccounting.Agent.EditTimeRecords.UnitTest.html" Permission="660" Encode="Base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgo8aGVhZD4KICAgIDxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtdHlwZSIgY29udGVudD0idGV4dC9odG1sO2NoYXJzZXQ9dXRmLTgiIC8+CiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3RoaXJkcGFydHkvcXVuaXQtMi4zLjMvcXVuaXQuY3NzIiB0eXBlPSJ0ZXh0L2NzcyIvPgoKICAgIDx0aXRsZT5UaW1lQWNjb3VudGluZyBmb3IgT1RPQk8gJm5kYXNoOyBVbml0VGVzdCBSZXN1bHRzPC90aXRsZT4KPC9oZWFkPgo8Ym9keT4KICAgIDxoMSBpZD0icXVuaXQtaGVhZGVyIj5UaW1lQWNjb3VudGluZyBmb3IgT1RPQk8gJm5kYXNoOyBVbml0VGVzdCBSZXN1bHRzPC9oMT4KICAgIDxoMiBpZD0icXVuaXQtYmFubmVyIj48L2gyPgogICAgPGgyIGlkPSJxdW5pdC11c2VyQWdlbnQiPjwvaDI+CiAgICA8b2wgaWQ9InF1bml0LXRlc3RzIj48L29sPgoKCiAgICA8IS0tIFVuaXRUZXN0IGNvZGUgZ29lcyBoZXJlIC0tPgogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iLi4vdGhpcmRwYXJ0eS9xdW5pdC0yLjMuMy9xdW5pdC5qcyI+PC9zY3JpcHQ+CiAgICA8IS0tCiAgICAgICAgTm93IGFsd2F5cyBsb2FkIGxpYnJhcnkgZmlyc3QgYW5kIHRoZW4gdGhlIFVuaXRUZXN0IGZpbGUgZm9yIGl0LgogICAgICAgIFRoZSBVbml0VGVzdCBmaWxlIGlzIHJlc3BvbnNpYmxlIGZvciBydW5uaW50IHRoZSB0ZXN0cy4KICAgIC0tPgoKICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii4uL3RoaXJkcGFydHkvanF1ZXJ5LTMuNC4xL2pxdWVyeS5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIuLi90aGlyZHBhcnR5L2pxdWVyeS11aS0xLjEyLjEvanF1ZXJ5LXVpLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii4uL3RoaXJkcGFydHkvanF1ZXJ5LXB1YnN1Yi9wdWJzdWIuanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iLi4vdGhpcmRwYXJ0eS9qcXVlcnktdmFsaWRhdGUtMS4xNi4wL2pxdWVyeS52YWxpZGF0ZS5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIuLi90aGlyZHBhcnR5L2pxdWVyeS1qc3RyZWUtMy4zLjcvanF1ZXJ5LmpzdHJlZS5qcyI+PC9zY3JpcHQ+CgogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iLi4vQ29yZS5MYW5ndWFnZS5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIuLi9Db3JlLkluaXQuanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iLi4vQ29yZS5KYXZhU2NyaXB0RW5oYW5jZW1lbnRzLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii4uL0NvcmUuRGVidWcuanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iLi4vQ29yZS5FeGNlcHRpb24uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iLi4vQ29yZS5EYXRhLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii4uL0NvcmUuSlNPTi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIuLi9Db3JlLkNvbmZpZy5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIuLi9Db3JlLkFwcC5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIuLi9Db3JlLlVJLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii4uL0NvcmUuVUkuQWNjZXNzaWJpbGl0eS5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIuLi9Db3JlLlVJLlJpY2hUZXh0RWRpdG9yLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii4uL0NvcmUuVUkuVHJlZVNlbGVjdGlvbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIuLi9Db3JlLlVJLklucHV0RmllbGRzLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii4uL0NvcmUuVUkuRGlhbG9nLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii4uL0NvcmUuRm9ybS5FcnJvclRvb2x0aXBzLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii4uL0NvcmUuRm9ybS5WYWxpZGF0ZS5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIuLi9UaW1lQWNjb3VudGluZy5BZ2VudC5FZGl0VGltZVJlY29yZHMuanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iQ29yZS5Vbml0VGVzdC5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJUaW1lQWNjb3VudGluZy5BZ2VudC5FZGl0VGltZVJlY29yZHMuVW5pdFRlc3QuanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogICAgICAgIFRpbWVBY2NvdW50aW5nLkFnZW50LkVkaXRUaW1lUmVjb3Jkcy5SdW5Vbml0VGVzdHMoKTsKICAgIDwvc2NyaXB0PgoKPC9ib2R5Pgo8L2h0bWw+Cg==</File>
        <File Location="var/httpd/htdocs/js/test/TimeAccounting.Agent.EditTimeRecords.UnitTest.js" Permission="660" Encode="Base64">Ly8gLS0KLy8gT1RPQk8gaXMgYSB3ZWItYmFzZWQgdGlja2V0aW5nIHN5c3RlbSBmb3Igc2VydmljZSBvcmdhbmlzYXRpb25zLgovLyAtLQovLyBDb3B5cmlnaHQgKEMpIDIwMDEtMjAyMCBPVFJTIEFHLCBodHRwczovL290cnMuY29tLwovLyBDb3B5cmlnaHQgKEMpIDIwMTktMjAyNiBSb3RoZXIgT1NTIEdtYkgsIGh0dHBzOi8vb3RvYm8uaW8vCi8vIC0tCi8vIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5IGl0IHVuZGVyCi8vIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlCi8vIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCi8vIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLCBidXQgV0lUSE9VVAovLyBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUwovLyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KLy8gWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKLy8gYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uIElmIG5vdCwgc2VlIDxodHRwczovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCi8vIC0tCgoidXNlIHN0cmljdCI7Cgp2YXIgVGltZUFjY291bnRpbmcgPSBUaW1lQWNjb3VudGluZyB8fCB7fTsKVGltZUFjY291bnRpbmcuQWdlbnQgPSBUaW1lQWNjb3VudGluZy5BZ2VudCB8fCB7fTsKClRpbWVBY2NvdW50aW5nLkFnZW50LkVkaXRUaW1lUmVjb3JkcyA9IChmdW5jdGlvbiAoTmFtZXNwYWNlKSB7CiAgICBOYW1lc3BhY2UuUnVuVW5pdFRlc3RzID0gZnVuY3Rpb24oKXsKCiAgICAgICAgLyoKICAgICAgICAgKiBDcmVhdGUgYSBmb3JtIGNvbnRhaW5lciBmb3IgdGhlIHRlc3RzCiAgICAgICAgICovCiAgICAgICAgdmFyICRUZXN0Rm9ybSA9ICQoJzxmb3JtIGlkPSJUZXN0Rm9ybSI+PC9mb3JtPicpLAogICAgICAgICAgICAkVGFibGU7CgogICAgICAgIFFVbml0Lm1vZHVsZSgnVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzJyk7CiAgICAgICAgUVVuaXQudGVzdCgnY2xpZW50LXNpZGUgdGltZSBwZXJpb2QgY2FsY3VsYXRpb25zJywgZnVuY3Rpb24oQXNzZXJ0KXsKCiAgICAgICAgICAgIEFzc2VydC5leHBlY3QoMjApOwoKICAgICAgICAgICAgJFRlc3RGb3JtLmFwcGVuZCgnPHRhYmxlPjx0cj48dGQ+PC90ZD48L3RyPjx0cj48dGQ+PC90ZD48L3RyPjx0cj48dGQ+PC90ZD48L3RyPjwvdGFibGU+Jyk7CiAgICAgICAgICAgICRUYWJsZSA9ICRUZXN0Rm9ybS5maW5kKCd0cjplcSgwKSB0ZCcpOwogICAgICAgICAgICAkVGFibGUuYXBwZW5kKCc8aW5wdXQgdHlwZT0idGV4dCIgdmFsdWU9IiIgaWQ9IlN0YXJ0VGltZTEiIG5hbWU9IlN0YXJ0VGltZTEiIGNsYXNzPSJTdGFydFRpbWUiIC8+Jyk7CiAgICAgICAgICAgICRUYWJsZS5hcHBlbmQoJzxpbnB1dCB0eXBlPSJ0ZXh0IiB2YWx1ZT0iIiBpZD0iRW5kVGltZTEiIG5hbWU9IkVuZFRpbWUxIiBjbGFzcz0iRW5kVGltZSIgLz4nKTsKICAgICAgICAgICAgJFRhYmxlLmFwcGVuZCgnPGlucHV0IHR5cGU9InRleHQiIHZhbHVlPSIiIGlkPSJQZXJpb2QxIiBuYW1lPSJQZXJpb2QxIiBjbGFzcz0iUGVyaW9kIiAvPicpOwogICAgICAgICAgICAkVGFibGUgPSAkVGVzdEZvcm0uZmluZCgndHI6ZXEoMSkgdGQnKTsKICAgICAgICAgICAgJFRhYmxlLmFwcGVuZCgnPGlucHV0IHR5cGU9InRleHQiIHZhbHVlPSIiIGlkPSJTdGFydFRpbWUyIiBuYW1lPSJTdGFydFRpbWUyIiBjbGFzcz0iU3RhcnRUaW1lIiAvPicpOwogICAgICAgICAgICAkVGFibGUuYXBwZW5kKCc8aW5wdXQgdHlwZT0idGV4dCIgdmFsdWU9IiIgaWQ9IkVuZFRpbWUyIiBuYW1lPSJFbmRUaW1lMiIgY2xhc3M9IkVuZFRpbWUiIC8+Jyk7CiAgICAgICAgICAgICRUYWJsZS5hcHBlbmQoJzxpbnB1dCB0eXBlPSJ0ZXh0IiB2YWx1ZT0iIiBpZD0iUGVyaW9kMiIgbmFtZT0iUGVyaW9kMiIgY2xhc3M9IlBlcmlvZCIgLz4nKTsKICAgICAgICAgICAgJFRhYmxlID0gJFRlc3RGb3JtLmZpbmQoJ3RyOmVxKDIpIHRkJyk7CiAgICAgICAgICAgICRUYWJsZS5hcHBlbmQoJzxpbnB1dCB0eXBlPSJ0ZXh0IiB2YWx1ZT0iIiBpZD0iU3RhcnRUaW1lMyIgbmFtZT0iU3RhcnRUaW1lMyIgY2xhc3M9IlN0YXJ0VGltZSIgLz4nKTsKICAgICAgICAgICAgJFRhYmxlLmFwcGVuZCgnPGlucHV0IHR5cGU9InRleHQiIHZhbHVlPSIiIGlkPSJFbmRUaW1lMyIgbmFtZT0iRW5kVGltZTMiIGNsYXNzPSJFbmRUaW1lIiAvPicpOwogICAgICAgICAgICAkVGFibGUuYXBwZW5kKCc8aW5wdXQgdHlwZT0idGV4dCIgdmFsdWU9IiIgaWQ9IlBlcmlvZDMiIG5hbWU9IlBlcmlvZDMiIGNsYXNzPSJQZXJpb2QiIC8+Jyk7CiAgICAgICAgICAgICRUYWJsZS5hcHBlbmQoJzxzcGFuIGlkPSJUb3RhbEhvdXJzIiBuYW1lPSJUb3RhbEhvdXJzIiBjbGFzcz0iVG90YWxIb3VycyI+PC9zcGFuPicpOwogICAgICAgICAgICAkKCdib2R5JykuYXBwZW5kKCRUZXN0Rm9ybSk7CgogICAgICAgICAgICAvKgogICAgICAgICAgICAgKiBSdW4gdGhlIHRlc3RzCiAgICAgICAgICAgICAqLwoKICAgICAgICAgICAgVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzLkluaXQoKTsKCiAgICAgICAgICAgIC8vIFRlc3Q6IHRpbWUgY2FsY3VsYXRpb24gb24gdGltZSBwZXJpb2QgZmllbGQKICAgICAgICAgICAgJCgnI1BlcmlvZDEnKS52YWwoJzInKTsKICAgICAgICAgICAgJCgnI1BlcmlvZDEnKS50cmlnZ2VyKCdjaGFuZ2UnKTsKICAgICAgICAgICAgQXNzZXJ0LmVxdWFsKCQoJyNQZXJpb2QxJykudmFsKCksICcyLjAwJywgJ05vcm1hbCBudW1iZXIgZW50cnknKTsKCiAgICAgICAgICAgICQoJyNQZXJpb2QxJykudmFsKCdmb29iYXInKTsKICAgICAgICAgICAgJCgnI1BlcmlvZDEnKS50cmlnZ2VyKCdjaGFuZ2UnKTsKICAgICAgICAgICAgQXNzZXJ0LmVxdWFsKCQoJyNQZXJpb2QxJykudmFsKCksICcnLCAnTm90IGEgbnVtYmVyICg9ImZvb2JhciIpJyk7CgogICAgICAgICAgICAkKCcjUGVyaW9kMScpLnZhbCgnMiArIDMnKTsKICAgICAgICAgICAgJCgnI1BlcmlvZDEnKS50cmlnZ2VyKCdjaGFuZ2UnKTsKICAgICAgICAgICAgQXNzZXJ0LmVxdWFsKCQoJyNQZXJpb2QxJykudmFsKCksICc1LjAwJywgJ0Vhc3kgY2FsY3VsYXRpb24nKTsKCiAgICAgICAgICAgICQoJyNQZXJpb2QxJykudmFsKCdhbGVydCgiaHVodSIpOycpOwogICAgICAgICAgICAkKCcjUGVyaW9kMScpLnRyaWdnZXIoJ2NoYW5nZScpOwogICAgICAgICAgICBBc3NlcnQuZXF1YWwoJCgnI1BlcmlvZDEnKS52YWwoKSwgJycsICdFdmlsIGphdmFzY3JpcHQgY29kZScpOwoKICAgICAgICAgICAgJCgnI1BlcmlvZDEnKS52YWwoJzIuMjMgKyAxLjA5Jyk7CiAgICAgICAgICAgICQoJyNQZXJpb2QxJykudHJpZ2dlcignY2hhbmdlJyk7CiAgICAgICAgICAgIEFzc2VydC5lcXVhbCgkKCcjUGVyaW9kMScpLnZhbCgpLCAnMy4zMicsICdDYWxjdWxhdGlvbiB3aXRoIG5vbi1pbnRlZ2VycycpOwoKICAgICAgICAgICAgJCgnI1BlcmlvZDEnKS52YWwoJzIuMDAwMSArIDEuNScpOwogICAgICAgICAgICAkKCcjUGVyaW9kMScpLnRyaWdnZXIoJ2NoYW5nZScpOwogICAgICAgICAgICBBc3NlcnQuZXF1YWwoJCgnI1BlcmlvZDEnKS52YWwoKSwgJzMuNTAnLCAnQ2FsY3VsYXRpb24gd2l0aCBhIG51bWJlciB3aXRoIG1vcmUgdGhhbiAyIGRlY2ltYWxzJyk7CgogICAgICAgICAgICAkKCcjUGVyaW9kMScpLnZhbCgnMSwyICsgMSwzJyk7CiAgICAgICAgICAgICQoJyNQZXJpb2QxJykudHJpZ2dlcignY2hhbmdlJyk7CiAgICAgICAgICAgIEFzc2VydC5lcXVhbCgkKCcjUGVyaW9kMScpLnZhbCgpLCAnMi41MCcsICdOdW1iZXJzIHdpdGggLCBpbnN0ZWFkIG9mIC4nKTsKCiAgICAgICAgICAgICQoJyNQZXJpb2QxJykudmFsKCc1LjggLSAxLjInKTsKICAgICAgICAgICAgJCgnI1BlcmlvZDEnKS50cmlnZ2VyKCdjaGFuZ2UnKTsKICAgICAgICAgICAgQXNzZXJ0LmVxdWFsKCQoJyNQZXJpb2QxJykudmFsKCksICc0LjYwJywgJ1N1YnN0cmFjdGlvbicpOwoKICAgICAgICAgICAgJCgnI1BlcmlvZDEnKS52YWwoJycpOwoKICAgICAgICAgICAgLy8gVGVzdDogY2FsY3VsYXRlIHBlcmlvZCBmcm9tIGVudGVyZWQgc3RhcnQgYW5kIGVuZCB0aW1lCiAgICAgICAgICAgICQoJyNTdGFydFRpbWUxJykudmFsKCcxJyk7CiAgICAgICAgICAgICQoJyNTdGFydFRpbWUxJykudHJpZ2dlcignY2hhbmdlJyk7CiAgICAgICAgICAgICQoJyNFbmRUaW1lMScpLnZhbCgnJyk7CiAgICAgICAgICAgICQoJyNFbmRUaW1lMScpLnRyaWdnZXIoJ2NoYW5nZScpOwogICAgICAgICAgICBBc3NlcnQuZXF1YWwoJCgnI1BlcmlvZDEnKS52YWwoKSwgJycsICdPbmx5IHN0YXJ0IHRpbWUgZW50ZXJlZCcpOwoKICAgICAgICAgICAgJCgnI1N0YXJ0VGltZTEnKS52YWwoJycpOwogICAgICAgICAgICAkKCcjU3RhcnRUaW1lMScpLnRyaWdnZXIoJ2NoYW5nZScpOwogICAgICAgICAgICAkKCcjRW5kVGltZTEnKS52YWwoJzInKTsKICAgICAgICAgICAgJCgnI0VuZFRpbWUxJykudHJpZ2dlcignY2hhbmdlJyk7CiAgICAgICAgICAgIEFzc2VydC5lcXVhbCgkKCcjUGVyaW9kMScpLnZhbCgpLCAnJywgJ09ubHkgZW5kIHRpbWUgZW50ZXJlZCcpOwoKICAgICAgICAgICAgJCgnI1N0YXJ0VGltZTEnKS52YWwoJzEnKTsKICAgICAgICAgICAgJCgnI1N0YXJ0VGltZTEnKS50cmlnZ2VyKCdjaGFuZ2UnKTsKICAgICAgICAgICAgJCgnI0VuZFRpbWUxJykudmFsKCcyJyk7CiAgICAgICAgICAgICQoJyNFbmRUaW1lMScpLnRyaWdnZXIoJ2NoYW5nZScpOwogICAgICAgICAgICBBc3NlcnQuZXF1YWwoJCgnI1BlcmlvZDEnKS52YWwoKSwgJzEuMDAnLCAnQm90aCB0aW1lcyBlbnRlcmVkJyk7CgogICAgICAgICAgICAkKCcjU3RhcnRUaW1lMScpLnZhbCgnOTowNicpOwogICAgICAgICAgICAkKCcjU3RhcnRUaW1lMScpLnRyaWdnZXIoJ2NoYW5nZScpOwogICAgICAgICAgICAkKCcjRW5kVGltZTEnKS52YWwoJzEwOjAwJyk7CiAgICAgICAgICAgICQoJyNFbmRUaW1lMScpLnRyaWdnZXIoJ2NoYW5nZScpOwogICAgICAgICAgICBBc3NlcnQuZXF1YWwoJCgnI1BlcmlvZDEnKS52YWwoKSwgJzAuOTAnLCAnRWFzeSBjYWxjdWxhdGlvbiB3aXRoIHR3byB0aW1lcyBvZiB0aGUgZm9ybWF0IEhIOk1NJyk7CgogICAgICAgICAgICAkKCcjU3RhcnRUaW1lMScpLnZhbCgnOTowMCcpOwogICAgICAgICAgICAkKCcjU3RhcnRUaW1lMScpLnRyaWdnZXIoJ2NoYW5nZScpOwogICAgICAgICAgICAkKCcjRW5kVGltZTEnKS52YWwoJzExOjMwJyk7CiAgICAgICAgICAgICQoJyNFbmRUaW1lMScpLnRyaWdnZXIoJ2NoYW5nZScpOwogICAgICAgICAgICBBc3NlcnQuZXF1YWwoJCgnI1BlcmlvZDEnKS52YWwoKSwgJzIuNTAnLCAnRWFzeSBjYWxjdWxhdGlvbiB3aXRoIHR3byB0aW1lcyBvZiB0aGUgZm9ybWF0IEhIOk1NJyk7CgogICAgICAgICAgICAkKCcjU3RhcnRUaW1lMScpLnZhbCgnOSw1Jyk7CiAgICAgICAgICAgICQoJyNTdGFydFRpbWUxJykudHJpZ2dlcignY2hhbmdlJyk7CiAgICAgICAgICAgICQoJyNFbmRUaW1lMScpLnZhbCgnMTAsNScpOwogICAgICAgICAgICAkKCcjRW5kVGltZTEnKS50cmlnZ2VyKCdjaGFuZ2UnKTsKICAgICAgICAgICAgQXNzZXJ0LmVxdWFsKCQoJyNQZXJpb2QxJykudmFsKCksICcnLCAnU3RhcnRUaW1lIGFuZCBFbmRUaW1lIGZvcm1hdCBhcmUgd3JvbmcnKTsKCiAgICAgICAgICAgICQoJyNTdGFydFRpbWUxJykudmFsKCc5OjUnKTsKICAgICAgICAgICAgJCgnI1N0YXJ0VGltZTEnKS50cmlnZ2VyKCdjaGFuZ2UnKTsKICAgICAgICAgICAgJCgnI0VuZFRpbWUxJykudmFsKCcxMDo1Jyk7CiAgICAgICAgICAgICQoJyNFbmRUaW1lMScpLnRyaWdnZXIoJ2NoYW5nZScpOwogICAgICAgICAgICBBc3NlcnQuZXF1YWwoJCgnI1BlcmlvZDEnKS52YWwoKSwgJzEuMDAnLCAnU3RhcnRUaW1lIGFuZCBFbmRUaW1lIGZvcm1hdCBhcmUgc2xpZ2h0bHkgd3JvbmcnKTsKCiAgICAgICAgICAgIC8vIFRlc3Q6IENhbGN1bGF0aW9uIG9mIHRvdGFsIGhvdXJzCiAgICAgICAgICAgICQoJyNTdGFydFRpbWUxJykudmFsKCc5OjUnKTsKICAgICAgICAgICAgJCgnI1N0YXJ0VGltZTEnKS50cmlnZ2VyKCdjaGFuZ2UnKTsKICAgICAgICAgICAgJCgnI0VuZFRpbWUxJykudmFsKCcxMDo1Jyk7CiAgICAgICAgICAgICQoJyNFbmRUaW1lMScpLnRyaWdnZXIoJ2NoYW5nZScpOwogICAgICAgICAgICBBc3NlcnQuZXF1YWwoJCgnI1RvdGFsSG91cnMnKS50ZXh0KCksICcxLjAwJywgJ0Vhc3kgc3RhcnQnKTsKCiAgICAgICAgICAgICQoJyNQZXJpb2QyJykudmFsKCcyLjUnKTsKICAgICAgICAgICAgJCgnI1BlcmlvZDInKS50cmlnZ2VyKCdjaGFuZ2UnKTsKICAgICAgICAgICAgQXNzZXJ0LmVxdWFsKCQoJyNUb3RhbEhvdXJzJykudGV4dCgpLCAnMy41MCcsICdTZWNvbmQgcGVyaW9kIGZpZWxkJyk7CgogICAgICAgICAgICAkKCcjUGVyaW9kMicpLnZhbCgnMS41ICsgOSw1Jyk7CiAgICAgICAgICAgICQoJyNQZXJpb2QyJykudHJpZ2dlcignY2hhbmdlJyk7CiAgICAgICAgICAgIEFzc2VydC5lcXVhbCgkKCcjVG90YWxIb3VycycpLnRleHQoKSwgJzEyLjAwJywgJ1NlY29uZCBwZXJpb2QgZmllbGQgZ2V0cyBhbiBhZGRpdGlvbmFsIGNhbGN1bGF0aW9uIHdpdGggb25lIHdyb25nIGNvbW1hJyk7CgogICAgICAgICAgICAkKCcjUGVyaW9kMycpLnZhbCgnNC4zNScpOwogICAgICAgICAgICAkKCcjUGVyaW9kMycpLnRyaWdnZXIoJ2NoYW5nZScpOwogICAgICAgICAgICBBc3NlcnQuZXF1YWwoJCgnI1RvdGFsSG91cnMnKS50ZXh0KCksICcxNi4zNScsICdUaGlyZCBmaWVsZCcpOwoKICAgICAgICAgICAgJCgnI1N0YXJ0VGltZTEnKS52YWwoJzE0OjAwJyk7CiAgICAgICAgICAgICQoJyNTdGFydFRpbWUxJykudHJpZ2dlcignY2hhbmdlJyk7CiAgICAgICAgICAgICQoJyNFbmRUaW1lMScpLnZhbCgnb3BlbmVuZCcpOwogICAgICAgICAgICAkKCcjRW5kVGltZTEnKS50cmlnZ2VyKCdjaGFuZ2UnKTsKICAgICAgICAgICAgQXNzZXJ0LmVxdWFsKCQoJyNUb3RhbEhvdXJzJykudGV4dCgpLCAnMTUuMzUnLCAnRmlyc3Qgcm93OiBzdGFydHRpbWUgYW5kIGVuZHRpbWUgZmllbGRzIGhhdmUgd3JvbmcgaW5wdXQnKTsKCgogICAgICAgICAgICAvKgogICAgICAgICAgICAgKiBDbGVhbnVwIGRpdiBjb250YWluZXIgYW5kIGNvbnRlbnRzCiAgICAgICAgICAgICAqLwogICAgICAgICAgICAkKCcjVGVzdEZvcm0nKS5yZW1vdmUoKTsKICAgICAgICB9KTsKCiAgICB9OwoKICAgIHJldHVybiBOYW1lc3BhY2U7Cn0oVGltZUFjY291bnRpbmcuQWdlbnQuRWRpdFRpbWVSZWNvcmRzIHx8IHt9KSk7Cg==</File>
        <File Location="var/httpd/htdocs/skins/Agent/default/css/TimeAccounting.Defaults.css" Permission="660" Encode="Base64">LyogT1RPQk8gaXMgYSB3ZWItYmFzZWQgdGlja2V0aW5nIHN5c3RlbSBmb3Igc2VydmljZSBvcmdhbmlzYXRpb25zLgoKQ29weXJpZ2h0IChDKSAyMDAxLTIwMjAgT1RSUyBBRywgaHR0cHM6Ly9vdHJzLmNvbS8KQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwoKVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUKRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCkFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTCkZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gU2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgpZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQphbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gSWYgbm90LCBzZWUgPGh0dHBzOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKi8KCi8qKgogKiBAcGFja2FnZSAgICAgU2tpbiAiRGVmYXVsdCIKICogQHNlY3Rpb24gICAgIFRpbWUgQWNjb3VudGluZyBEZWZhdWx0IENTUwogKi8KCkBtZWRpYSBzY3JlZW4scHJvamVjdGlvbix0dixoYW5kaGVsZCB7CgovKioKICogQHN1YnNlY3Rpb24gIGxlZnQgYW5kIHJpZ2h0IGFycm93cwogKi8KCi5BcnJvdyB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHdpZHRoOiAxMHB4OwogICAgaGVpZ2h0OiAxMnB4OwogICAgZmxvYXQ6IGxlZnQ7CiAgICBtYXJnaW4tdG9wOiAtMnB4OwogICAgbWFyZ2luLXJpZ2h0OiA0cHg7Cn0KCi5BcnJvdyBpIHsKICAgIGZvbnQtc2l6ZTogMTZweDsKICAgIGNvbG9yOiAjNTU1Owp9CgovKioKICogQHN1YnNlY3Rpb24gIHNwZWNpYWwgc2V0dGluZ3M6IHJlcG9ydGluZwogKi8KCmRpdi5Nb250aFNlbGVjdGlvbiB7CiAgICBsaW5lLWhlaWdodDogMjRweDsKICAgIG1hcmdpbi1ib3R0b206IDEwcHg7Cn0KCi5Nb250aFNlbGVjdGlvbiAuQXJyb3cgewogICAgbWFyZ2luLXRvcDogMXB4Owp9CgovKioKICogQHN1YnNlY3Rpb24gIEluY29tcGxldGVXb3JraW5nRGF5cyBzZWxlY3QKICovCiNJbmNvbXBsZXRlV29ya2luZ0RheXNMaXN0IG9wdGlvbltzZWxlY3RlZD1zZWxlY3RlZF0gewogICAgZm9udC13ZWlnaHQ6IGJvbGQ7Cn0KCi8qKgogKiBAc3Vic2VjdGlvbiAgcHJvamVjdCBhbmQgYWN0aW9uIGRyb3Bkb3ducwogKi8KLlByb2plY3RTZWxlY3Rpb24gewogICAgd2lkdGg6IDMwMHB4Owp9CgouQWN0aW9uU2VsZWN0aW9uIHsKICAgIHdpZHRoOiAzMDBweDsKfQoKLlNpZGViYXJDb2x1bW4gLkRhdGVwaWNrZXJJY29uIHsKICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7Cn0KCi5TaWRlYmFyQ29sdW1uIHRoIGlucHV0W3R5cGU9Y2hlY2tib3hdIHsKICAgIG1hcmdpbjogMHB4Owp9Cgp9IC8qIGVuZCBAbWVkaWEgKi8K</File>
        <File Location="var/httpd/htdocs/skins/Agent/default/css/TimeAccounting.Table.css" Permission="660" Encode="Base64">LyogT1RPQk8gaXMgYSB3ZWItYmFzZWQgdGlja2V0aW5nIHN5c3RlbSBmb3Igc2VydmljZSBvcmdhbmlzYXRpb25zLgoKQ29weXJpZ2h0IChDKSAyMDAxLTIwMjAgT1RSUyBBRywgaHR0cHM6Ly9vdHJzLmNvbS8KQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwoKVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUKRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCkFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTCkZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gU2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgpZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQphbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gSWYgbm90LCBzZWUgPGh0dHBzOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKi8KCi8qKgogKiBAcGFja2FnZSAgICAgU2tpbiAiRGVmYXVsdCIKICogQHNlY3Rpb24gICAgIFRpbWUgQWNjb3VudGluZyBBZGRpdGlvbmFsIFRhYmxlIFNldHRpbmdzCiAqLwoKQG1lZGlhIHNjcmVlbixwcm9qZWN0aW9uLHR2LGhhbmRoZWxkIHsKCi8qKgogKiBAc3Vic2VjdGlvbiAgZGF0YSB0YWJsZSBlbGVtZW50cyB3aXRob3V0IGhvdmVyCiAqLwoKLk5vSG92ZXIgdGJvZHkgdHI6aG92ZXIgdGQgewogICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7CiAgICBib3gtc2hhZG93OiBub25lOwp9CgouTm9Ib3ZlciB0ci5FdmVuOmhvdmVyIHRkIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNGNUY1RjU7Cn0KCi5Ob0hvdmVyIHRyLkdyYW5kVG90YWw6aG92ZXIgdGQgewogICAgYmFja2dyb3VuZC1jb2xvcjogI0NGQ0ZDRjsKfQoKLlRpbWVBY2NvdW50aW5nVGFibGUgaW5wdXRbdHlwZT10ZXh0XSB7CiAgICB3aWR0aDogMTAwJTsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7Cn0KCi5UaW1lQWNjb3VudGluZ1RhYmxlIHRkIHsKICAgIHBhZGRpbmc6IDEwcHggIWltcG9ydGFudDsKfQoKLyoqCiAqIEBzdWJzZWN0aW9uICBzcGVjaWFsIHRhYmxlIGhlaWdodAogKi8KCi5IaWdoQ2VsbHMgdGJvZHkgdGQgewogICAgaGVpZ2h0OiAzMHB4Owp9CgovKioKICogQHN1YnNlY3Rpb24gIGZpeGVkIGRhdGEgdGFibGUgd2lkdGhzCiAqLwoKLkRhdGFUYWJsZSB0ZC5GaXhlZC5EYXkgewogICAgd2lkdGg6IDUwcHg7Cn0KCi5EYXRhVGFibGUgdGQuRml4ZWQuV2Vla2RheSB7CiAgICB3aWR0aDogODBweDsKfQoKLyoqCiAqIEBzdWJzZWN0aW9uICB0YWJsZSBjb2xvdXJzIGZvciBvdmVydmlldwogKi8KCi5EYXRhVGFibGUgdHIuVmFjYXRpb24gdGQgewogICAgYmFja2dyb3VuZC1jb2xvcjogI0VCQ0NDQzsKfQoKLkRhdGFUYWJsZSB0ci5Ob25Xb3JraW5nRGF5IHRkIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkUwRTA7Cn0KCi5EYXRhVGFibGUgdHIuQWN0aXZlIHRkIHsKICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDAwMDAwOwogICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMwMDAwMDA7CiAgICBjb2xvcjogIzFBMUExQTsKfQoKLkRhdGFUYWJsZSB0ci5BY3RpdmUgdGQ6Zmlyc3QtY2hpbGQgewogICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjMDAwMDAwOwp9CgouRGF0YVRhYmxlIHRyLkFjdGl2ZSB0ZDpsYXN0LWNoaWxkLAouRGF0YVRhYmxlIHRyLkFjdGl2ZSB0ZC5MYXN0IHsKICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICMwMDAwMDA7Cn0KCi5EYXRhVGFibGUgdHIuR3JhbmRUb3RhbCB0ZCB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQ0ZDRkNGOwp9CgovKioKICogQHN1YnNlY3Rpb24gIGRhdGEgdGFibGUgd2l0aCB0d28gaGVhZGVyIHJvd3MKICovCgouRGF0YVRhYmxlIHRoZWFkLlR3b1Jvd3MgewogICAgYmFja2dyb3VuZDogbm9uZTsKfQoKLkRhdGFUYWJsZSB0aGVhZC5Ud29Sb3dzIHRyIHsKICAgIGJhY2tncm91bmQ6ICNlZWVlZWU7Cn0KCi5EYXRhVGFibGUgdGhlYWQuVHdvUm93cyB0cjpmaXJzdC1jaGlsZCB0aCB7CiAgICBib3JkZXItYm90dG9tOiBub25lOwogICAgcGFkZGluZy1ib3R0b206IDJweDsKfQoKLkRhdGFUYWJsZSB0aGVhZC5Ud29Sb3dzIHRyOmxhc3QtY2hpbGQgdGgsCi5EYXRhVGFibGUgdGhlYWQuVHdvUm93cyB0ci5MYXN0IHRoIHsKICAgIGJvcmRlci10b3A6IG5vbmU7CiAgICBwYWRkaW5nLXRvcDogM3B4Owp9Cgp0ci5NYXN0ZXJBY3Rpb24gdGQuUm93U3BhbiB7CiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOwp9Cgp0ZC5Sb3dTcGFuewogICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjY2NjOwogICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGUgIWltcG9ydGFudDsKfQoKI1RpbWVBY2NvdW50aW5nRW1wdHlNZXNzYWdlU21hbGwgewogICAgYm9yZGVyLWNvbG9yOiAjZGRkOwogICAgYm9yZGVyLWltYWdlOiBub25lOwogICAgYm9yZGVyLXN0eWxlOiBzb2xpZDsKICAgIGJvcmRlci13aWR0aDogMXB4OwogICAgcGFkZGluZzogN3B4OwogICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7Cn0KLyogZW5kIEBtZWRpYSAqLwo=</File>
        <File Location="var/packagesetup/TimeAccounting.pm" Permission="660" Encode="Base64">IyAtLQojIE9UT0JPIGlzIGEgd2ViLWJhc2VkIHRpY2tldGluZyBzeXN0ZW0gZm9yIHNlcnZpY2Ugb3JnYW5pc2F0aW9ucy4KIyAtLQojIENvcHlyaWdodCAoQykgMjAwMS0yMDIwIE9UUlMgQUcsIGh0dHBzOi8vb3Rycy5jb20vCiMgQ29weXJpZ2h0IChDKSAyMDE5LTIwMjYgUm90aGVyIE9TUyBHbWJILCBodHRwczovL290b2JvLmlvLwojIC0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIKIyB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUCiMgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MKIyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojIC0tCgpwYWNrYWdlIHZhcjo6cGFja2FnZXNldHVwOjpUaW1lQWNjb3VudGluZzsKCnVzZSBzdHJpY3Q7CnVzZSB3YXJuaW5nczsKCnVzZSBMaXN0OjpVdGlsIHF3KCk7CgpvdXIgQE9iamVjdERlcGVuZGVuY2llcyA9ICgKICAgICdLZXJuZWw6OkNvbmZpZycsCiAgICAnS2VybmVsOjpTeXN0ZW06OkNhY2hlJywKICAgICdLZXJuZWw6OlN5c3RlbTo6REInLAogICAgJ0tlcm5lbDo6U3lzdGVtOjpEeW5hbWljRmllbGQnLAogICAgJ0tlcm5lbDo6U3lzdGVtOjpEeW5hbWljRmllbGRWYWx1ZScsCiAgICAnS2VybmVsOjpTeXN0ZW06Okdyb3VwJywKICAgICdLZXJuZWw6OlN5c3RlbTo6U3lzQ29uZmlnJywKICAgICdLZXJuZWw6OlN5c3RlbTo6VmFsaWQnLAogICAgJ0tlcm5lbDo6U3lzdGVtOjpMb2cnLAogICAgJ0tlcm5lbDo6U3lzdGVtOjpNYWluJywKKTsKCj1oZWFkMSBOQU1FCgp2YXI6OnBhY2thZ2VzZXR1cDo6VGltZUFjY291bnRpbmcgLSBjb2RlIHRvIGV4ZWN1dGUgZHVyaW5nIHBhY2thZ2UgaW5zdGFsbGF0aW9uCgo9aGVhZDEgREVTQ1JJUFRJT04KCkFsbCBmdW5jdGlvbnMKCj1oZWFkMSBQVUJMSUMgSU5URVJGQUNFCgo9aGVhZDIgbmV3KCkKCmNyZWF0ZSBhbiBvYmplY3QKCiAgICB1c2UgS2VybmVsOjpTeXN0ZW06Ok9iamVjdE1hbmFnZXI7CiAgICBsb2NhbCAkS2VybmVsOjpPTSA9IEtlcm5lbDo6U3lzdGVtOjpPYmplY3RNYW5hZ2VyLT5uZXcoKTsKICAgIG15ICRDb2RlT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgndmFyOjpwYWNrYWdlc2V0dXA6OlRpbWVBY2NvdW50aW5nJyk7Cgo9Y3V0CgpzdWIgbmV3IHsKICAgIG15ICggJFR5cGUsICVQYXJhbSApID0gQF87CgogICAgIyBhbGxvY2F0ZSBuZXcgaGFzaCBmb3Igb2JqZWN0CiAgICBteSAkU2VsZiA9IHt9OwogICAgYmxlc3MoICRTZWxmLCAkVHlwZSApOwoKICAgICMgRm9yY2UgYSByZWxvYWQgb2YgWlpaQXV0by5wbSB0byBnZXQgdGhlIGZyZXNoIGNvbmZpZ3VyYXRpb24gdmFsdWVzLgogICAgZm9yIG15ICRNb2R1bGUgKCBzb3J0IGtleXMgJUlOQyApIHsKICAgICAgICBpZiAoICRNb2R1bGUgPX4gbS9aWlpBQT91dG9cLnBtJC8gKSB7CiAgICAgICAgICAgIGRlbGV0ZSAkSU5DeyRNb2R1bGV9OwogICAgICAgIH0KICAgIH0KCiAgICAjIENyZWF0ZSBjb21tb24gb2JqZWN0cyB3aXRoIGZyZXNoIGRlZmF1bHQgY29uZmlnLgogICAgJEtlcm5lbDo6T00tPk9iamVjdHNEaXNjYXJkKCk7CgogICAgcmV0dXJuICRTZWxmOwp9Cgo9aGVhZDIgQ29kZUluc3RhbGwoKQoKcnVuIHRoZSBjb2RlIGluc3RhbGwgcGFydAoKICAgIG15ICRSZXN1bHQgPSAkQ29kZU9iamVjdC0+Q29kZUluc3RhbGwoKTsKCj1jdXQKCnN1YiBDb2RlSW5zdGFsbCB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgICMgQ3JlYXRlIER5bmFtaWNGaWVsZCBBcnRpY2xlLgogICAgJFNlbGYtPl9DcmVhdGVEeW5hbWljRmllbGRBcnRpY2xlVGltZVVuaXQoKTsKCiAgICByZXR1cm4gMTsKfQoKPWhlYWQyIENvZGVVbmluc3RhbGwoKQoKcnVuIHRoZSBjb2RlIHVuaW5zdGFsbCBwYXJ0CgogICAgbXkgJFJlc3VsdCA9ICRDb2RlT2JqZWN0LT5Db2RlVW5pbnN0YWxsKCk7Cgo9Y3V0CgpzdWIgQ29kZVVuaW5zdGFsbCB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgICMgRGVhY3RpdmF0ZSB0aGUgZ3JvdXAgJ3RpbWVfYWNjb3VudGluZycgaWYgZXhpc3RzLgogICAgJFNlbGYtPl9Hcm91cERlYWN0aXZhdGUoCiAgICAgICAgTmFtZSA9PiAndGltZV9hY2NvdW50aW5nJywKICAgICk7CgogICAgIyBEZWxldGUgQXJ0aWNsZVRpbWVVbml0IER5bmFtaWNGaWVsZAogICAgJFNlbGYtPl9EZWxldGVEeW5hbWljRmllbGRBcnRpY2xlVGltZVVuaXQoKTsKCiAgICByZXR1cm4gMTsKfQoKPWhlYWQyIENvZGVVcGdyYWRlRnJvbUxvd2VyVGhhbl80XzBfOTEoKQoKVGhpcyBmdW5jdGlvbiBpcyBvbmx5IGV4ZWN1dGVkIGlmIHRoZSBpbnN0YWxsZWQgbW9kdWxlIHZlcnNpb24gaXMgc21hbGxlciB0aGFuIDQuMC45MS4KCm15ICRSZXN1bHQgPSAkQ29kZU9iamVjdC0+Q29kZVVwZ3JhZGVGcm9tTG93ZXJUaGFuXzRfMF85MSgpOwoKPWN1dAoKc3ViIENvZGVVcGdyYWRlRnJvbUxvd2VyVGhhbl80XzBfOTEgeyAgICAjIyBubyBjcml0aWMgcXcoT1RPQk86OlJlcXVpcmVDYW1lbENhc2UpCiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgICMgY2hhbmdlIGNvbmZpZ3VyYXRpb25zIHRvIG1hdGNoIHRoZSBuZXcgbW9kdWxlIGxvY2F0aW9uLgogICAgJFNlbGYtPl9NaWdyYXRlQ29uZmlncygpOwoKICAgIHJldHVybiAxOwp9Cgo9aGVhZDIgQ29kZVVwZ3JhZGVGcm9tTG93ZXJUaGFuXzVfMF85MigpCgpUaGlzIGZ1bmN0aW9uIGlzIG9ubHkgZXhlY3V0ZWQgaWYgdGhlIGluc3RhbGxlZCBtb2R1bGUgdmVyc2lvbiBpcyBzbWFsbGVyIHRoYW4gNS4wLjkyLgoKICAgIG15ICRSZXN1bHQgPSAkQ29kZU9iamVjdC0+Q29kZVVwZ3JhZGVGcm9tTG93ZXJUaGFuXzVfMF85MigpOwoKPWN1dAoKc3ViIENvZGVVcGdyYWRlRnJvbUxvd2VyVGhhbl81XzBfOTIgeyAgICAjIyBubyBjcml0aWMgcXcoT1RPQk86OlJlcXVpcmVDYW1lbENhc2UpCiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgICMgUmVjb3ZlciB0aGUgb2xkIHBlcm1pc3Npb25zCiAgICAkU2VsZi0+X01pZ3JhdGVQZXJtaXNzaW9ucygpOwoKICAgIHJldHVybiAxOwp9Cgo9aGVhZDIgQ29kZVVwZ3JhZGVGcm9tTG93ZXJUaGFuXzEwXzFfMigpCgpUaGlzIGZ1bmN0aW9uIGlzIG9ubHkgZXhlY3V0ZWQgaWYgdGhlIGluc3RhbGxlZCBtb2R1bGUgdmVyc2lvbiBpcyBzbWFsbGVyIHRoYW4gMTAuMS4yLgoKICAgIG15ICRSZXN1bHQgPSAkQ29kZU9iamVjdC0+Q29kZVVwZ3JhZGVGcm9tTG93ZXJUaGFuXzEwXzFfMigpOwoKPWN1dAoKc3ViIENvZGVVcGdyYWRlRnJvbUxvd2VyVGhhbl8xMF8xXzIgeyAgICAjIyBubyBjcml0aWMgcXcoT1RPQk86OlJlcXVpcmVDYW1lbENhc2UpCiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgICMgQ3JlYXRlIER5bmFtaWNGaWVsZCBBcnRpY2xlVGltZVVuaXQKICAgICRTZWxmLT5fQ3JlYXRlRHluYW1pY0ZpZWxkQXJ0aWNsZVRpbWVVbml0KCk7CgogICAgcmV0dXJuIDE7Cn0KCj1oZWFkMSBQUklWQVRFIElOVEVSRkFDRQoKPWhlYWQyIF9DcmVhdGVEeW5hbWljRmllbGRBcnRpY2xlVGltZVVuaXQoKQoKY3JlYXRlIGR5bmFtaWMgZmllbGQgQXJ0aWNsZVRpbWVVbml0CgogICAgbXkgJFJlc3VsdCA9ICRDb2RlT2JqZWN0LT5fQ3JlYXRlRHluYW1pY0ZpZWxkQXJ0aWNsZVRpbWVVbml0KCk7Cgo9Y3V0CgpzdWIgX0NyZWF0ZUR5bmFtaWNGaWVsZEFydGljbGVUaW1lVW5pdCB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgICMgZ2V0IGdyb3VwIG9iamVjdAogICAgbXkgJENvbmZpZ09iamVjdCAgICAgICA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6Q29uZmlnJyk7CiAgICBteSAkRHluYW1pY0ZpZWxkT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkR5bmFtaWNGaWVsZCcpOwoKICAgIG15ICRMaXN0ID0gJER5bmFtaWNGaWVsZE9iamVjdC0+RHluYW1pY0ZpZWxkTGlzdCgKICAgICAgICBWYWxpZCA9PiAwLAogICAgKTsKCiAgICBteSAkT3JkZXJDb3VudCAgPSAkTGlzdC0+QCogKyAxOwogICAgbXkgJEZpZWxkQ29uZmlnID0gewogICAgICAgIFRvb2x0aXAgPT4gJ0FydGljbGUgVGltZSBVbml0cycsCiAgICB9OwogICAgbXkgJER5bk5hbWUgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OkNvbmZpZycpLT5HZXQoJ1RpbWVBY2NvdW50aW5nOjpUaWNrZXRTeW5jOjpTYXZlVGltZVVuaXRUb0FydGljbGVGaWVsZCcpIHx8ICdBcnRpY2xlVGltZVVuaXRzJzsKICAgIG15ICRJRCAgICAgID0gJER5bmFtaWNGaWVsZE9iamVjdC0+RHluYW1pY0ZpZWxkQWRkKAogICAgICAgIEludGVybmFsRmllbGQgPT4gMSwKICAgICAgICBOYW1lICAgICAgICAgID0+ICREeW5OYW1lLAogICAgICAgIExhYmVsICAgICAgICAgPT4gJ0FydGljbGUgVGltZVVuaXQnLAogICAgICAgIEZpZWxkT3JkZXIgICAgPT4gJE9yZGVyQ291bnQsCiAgICAgICAgRmllbGRUeXBlICAgICA9PiAnVGV4dCcsCiAgICAgICAgT2JqZWN0VHlwZSAgICA9PiAnQXJ0aWNsZScsCiAgICAgICAgQ29uZmlnICAgICAgICA9PiAkRmllbGRDb25maWcsCiAgICAgICAgUmVvcmRlciAgICAgICA9PiAxLAogICAgICAgIFZhbGlkSUQgICAgICAgPT4gMSwKICAgICAgICBVc2VySUQgICAgICAgID0+IDEsCiAgICApOwoKICAgIGlmICggISRJRCApIHsKCiAgICAgICAgJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkxvZycpLT5Mb2coCiAgICAgICAgICAgIFByaW9yaXR5ID0+ICdlcnJvcicsCiAgICAgICAgICAgIE1lc3NhZ2UgID0+CiAgICAgICAgICAgICAgICAiQ2FuJ3QgYWRkIER5bmFtaWNGaWVsZCB3aXRoIHRoZSBuYW1lICREeW5OYW1lISBQbGVhc2UgYWRkIHRoZSBmaWVsZCBtYW51YWxseSBhbmQgY2hhbmdlIHRoZSBzeXNjb25maWcgb3B0aW9uIFRpbWVBY2NvdW50aW5nOjpUaWNrZXRTeW5jOjpTYXZlVGltZVVuaXRUb0FydGljbGVGaWVsZCB0byB0aGUgbmV3IG5hbWUuIiwKICAgICAgICApOwogICAgfQogICAgcmV0dXJuIDE7Cn0KCj1oZWFkMiBfRGVsZXRlRHluYW1pY0ZpZWxkQXJ0aWNsZVRpbWVVbml0KCkKCmRlbGV0ZSBkeW5hbWljIGZpbGVkIEFydGljbGVUaW1lVW5pdAoKICAgIG15ICRSZXN1bHQgPSAkQ29kZU9iamVjdC0+X0RlbGV0ZUR5bmFtaWNGaWVsZEFydGljbGVUaW1lVW5pdCgpOwoKPWN1dAoKc3ViIF9EZWxldGVEeW5hbWljRmllbGRBcnRpY2xlVGltZVVuaXQgewoKICAgICMgZ2V0IGdyb3VwIG9iamVjdAogICAgbXkgJENvbmZpZ09iamVjdCAgICAgICA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6Q29uZmlnJyk7CiAgICBteSAkRHluYW1pY0ZpZWxkT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OkR5bmFtaWNGaWVsZCcpOwoKICAgIG15ICREeW5OYW1lICAgICAgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OkNvbmZpZycpLT5HZXQoJ1RpbWVBY2NvdW50aW5nOjpUaWNrZXRTeW5jOjpTYXZlVGltZVVuaXRUb0FydGljbGVGaWVsZCcpIHx8ICdBcnRpY2xlVGltZVVuaXQnOwogICAgbXkgJER5bmFtaWNGaWVsZCA9ICREeW5hbWljRmllbGRPYmplY3QtPkR5bmFtaWNGaWVsZEdldCgKICAgICAgICBOYW1lID0+ICREeW5OYW1lLAogICAgKTsKICAgIG15ICRWYWx1ZURlbGV0ZVN1Y2Nlc3MgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6RHluYW1pY0ZpZWxkVmFsdWUnKS0+QWxsVmFsdWVzRGVsZXRlKAogICAgICAgIEZpZWxkSUQgPT4gJER5bmFtaWNGaWVsZC0+e0lEfSwKICAgICAgICBVc2VySUQgID0+IDEsCiAgICApOwoKICAgIGlmICggISRWYWx1ZURlbGV0ZVN1Y2Nlc3MgKSB7CgogICAgICAgICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpMb2cnKS0+TG9nKAogICAgICAgICAgICBQcmlvcml0eSA9PiAnZXJyb3InLAogICAgICAgICAgICBNZXNzYWdlICA9PiAiQ2FuJ3QgZGVsZXRlIER5bmFtaWNGaWVsZCB2YWx1ZXMgZm9yIGZpZWxkIHdpdGggdGhlIG5hbWUgJER5bk5hbWUhIFBsZWFzZSBkZWxldGUgdGhlIGZpZWxkIG1hbnVhbGx5LiIsCiAgICAgICAgKTsKICAgIH0KCiAgICBteSAkRmllbGREZWxldGVTdWNjZXNzID0gJER5bmFtaWNGaWVsZE9iamVjdC0+RHluYW1pY0ZpZWxkRGVsZXRlKAogICAgICAgIElEICAgICA9PiAkRHluYW1pY0ZpZWxkLT57SUR9LAogICAgICAgIFVzZXJJRCA9PiAxLAogICAgKTsKCiAgICBpZiAoICEkRmllbGREZWxldGVTdWNjZXNzICkgewoKICAgICAgICAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6TG9nJyktPkxvZygKICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICAgICAgTWVzc2FnZSAgPT4gIkNhbid0IGRlbGV0ZSBEeW5hbWljRmllbGQgd2l0aCB0aGUgbmFtZSAkRHluTmFtZSEgUGxlYXNlIGRlbGV0ZSB0aGUgZmllbGQgbWFudWFsbHkuIiwKICAgICAgICApOwogICAgfQogICAgcmV0dXJuIDE7Cgp9Cgo9aGVhZDIgX0dyb3VwRGVhY3RpdmF0ZSgpCgpkZWFjdGl2YXRlIGEgZ3JvdXAKCiAgICBteSAkUmVzdWx0ID0gJENvZGVPYmplY3QtPl9Hcm91cERlYWN0aXZhdGUoCiAgICAgICAgTmFtZSA9PiAndGhlLWdyb3VwLW5hbWUnLAogICAgKTsKCj1jdXQKCnN1YiBfR3JvdXBEZWFjdGl2YXRlIHsKICAgIG15ICggJFNlbGYsICVQYXJhbSApID0gQF87CgogICAgIyBjaGVjayBuZWVkZWQgc3R1ZmYKICAgIGlmICggISRQYXJhbXtOYW1lfSApIHsKICAgICAgICBLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpMb2cnKS0+TG9nKAogICAgICAgICAgICBQcmlvcml0eSA9PiAnZXJyb3InLAogICAgICAgICAgICBNZXNzYWdlICA9PiAnTmVlZCBOYW1lIScsCiAgICAgICAgKTsKICAgICAgICByZXR1cm47CiAgICB9CgogICAgIyBnZXQgZ3JvdXAgb2JqZWN0CiAgICBteSAkR3JvdXBPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6R3JvdXAnKTsKCiAgICAjIGxvb2t1cCBncm91cCBpZAogICAgbXkgJEdyb3VwSUQgPSAkR3JvdXBPYmplY3QtPkdyb3VwTG9va3VwKAogICAgICAgIEdyb3VwID0+ICRQYXJhbXtOYW1lfSwKICAgICk7CgogICAgcmV0dXJuIGlmICEkR3JvdXBJRDsKCiAgICAjIGdldCB2YWxpZCBsaXN0CiAgICBteSAlVmFsaWRMaXN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlZhbGlkJyktPlZhbGlkTGlzdCgKICAgICAgICBVc2VySUQgPT4gMSwKICAgICk7CiAgICBteSAlVmFsaWRMaXN0UmV2ZXJzZSA9IHJldmVyc2UgJVZhbGlkTGlzdDsKCiAgICAjIGdldCBjdXJyZW50IGdyb3VwIGRhdGEKICAgIG15ICVHcm91cERhdGEgPSAkR3JvdXBPYmplY3QtPkdyb3VwR2V0KAogICAgICAgIElEICAgICA9PiAkR3JvdXBJRCwKICAgICAgICBVc2VySUQgPT4gMSwKICAgICk7CgogICAgIyBkZWFjdGl2YXRlIGdyb3VwCiAgICAkR3JvdXBPYmplY3QtPkdyb3VwVXBkYXRlKAogICAgICAgICVHcm91cERhdGEsCiAgICAgICAgVmFsaWRJRCA9PiAkVmFsaWRMaXN0UmV2ZXJzZXtpbnZhbGlkfSwKICAgICAgICBVc2VySUQgID0+IDEsCiAgICApOwoKICAgIHJldHVybiAxOwp9Cgo9aGVhZDIgX01pZ3JhdGVDb25maWdzKCkKCmNoYW5nZSBjb25maWd1cmF0aW9ucyB0byBtYXRjaCB0aGUgbmV3IG1vZHVsZSBsb2NhdGlvbi4KCiAgICBteSAkUmVzdWx0ID0gJENvZGVPYmplY3QtPl9NaWdyYXRlQ29uZmlncygpOwoKPWN1dAoKc3ViIF9NaWdyYXRlQ29uZmlncyB7CgogICAgbXkgJFN5c0NvbmZpZ09iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpTeXNDb25maWcnKTsKICAgIG15ICRDb25maWdPYmplY3QgICAgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OkNvbmZpZycpOwoKICAgICMgTWlncmF0ZSB0aW1lIGFjY291bnRpbmcgbm90aWZpY2F0aW9uIFN5c0NvbmZpZwogICAgIyAgIGdldCBzZXR0aW5nIGNvbnRlbnQgZm9yIHRpbWUgYWNjb3VudGluZyBTeXNDb25maWcuCiAgICBteSAkU2V0dGluZyA9ICRDb25maWdPYmplY3QtPkdldCgnRnJvbnRlbmQ6Ok5vdGlmeU1vZHVsZScpOwoKICAgIG15IEBOZXdTZXR0aW5nczsKCiAgICBpZiAoICRTZXR0aW5nLT57Jzg4OC1UaW1lQWNjb3VudGluZyd9LT57TW9kdWxlfSApIHsKCiAgICAgICAgIyB1cGRhdGUgbW9kdWxlIGxvY2F0aW9uCiAgICAgICAgJFNldHRpbmctPnsnODg4LVRpbWVBY2NvdW50aW5nJ30tPntNb2R1bGV9ID0gIktlcm5lbDo6T3V0cHV0OjpIVE1MOjpOb3RpZmljYXRpb246OlRpbWVBY2NvdW50aW5nIjsKCiAgICAgICAgIyBzZXQgbmV3IHNldHRpbmcKICAgICAgICBwdXNoIEBOZXdTZXR0aW5ncywgewogICAgICAgICAgICBOYW1lICAgICAgICAgICA9PiAnRnJvbnRlbmQ6Ok5vdGlmeU1vZHVsZSMjIzg4OC1UaW1lQWNjb3VudGluZycsCiAgICAgICAgICAgIEVmZmVjdGl2ZVZhbHVlID0+ICRTZXR0aW5nLT57J1RpbWVBY2NvdW50aW5nJ30sCiAgICAgICAgfTsKICAgIH0KCiAgICAjIE1pZ3JhdGUgdGltZSBhY2NvdW50aW5nIHRvb2wgYmFyIFN5c0NvbmZpZwogICAgIyAgIGdldCBzZXR0aW5nIGNvbnRlbnQgZm9yIHRpbWUgYWNjb3VudGluZyBTeXNDb25maWcuCiAgICAkU2V0dGluZyA9ICRDb25maWdPYmplY3QtPkdldCgnRnJvbnRlbmQ6OlRvb2xCYXJNb2R1bGUnKTsKCiAgICBpZiAoICRTZXR0aW5nLT57JzIwMS1UaW1lQWNjb3VudGluZzo6SW5jb21wbGV0ZVdvcmtpbmdEYXlzJ30tPntNb2R1bGV9ICkgewoKICAgICAgICAjIHVwZGF0ZSBtb2R1bGUgbG9jYXRpb24KICAgICAgICAkU2V0dGluZy0+eycyMDEtVGltZUFjY291bnRpbmc6OkluY29tcGxldGVXb3JraW5nRGF5cyd9LT57TW9kdWxlfQogICAgICAgICAgICA9ICJLZXJuZWw6Ok91dHB1dDo6SFRNTDo6VG9vbEJhcjo6SW5jb21wbGV0ZVdvcmtpbmdEYXlzIjsKCiAgICAgICAgIyBzZXQgbmV3IHNldHRpbmcKICAgICAgICBwdXNoIEBOZXdTZXR0aW5ncywgewogICAgICAgICAgICBOYW1lICAgICAgICAgICA9PiAnRnJvbnRlbmQ6OlRvb2xCYXJNb2R1bGUjIyMyMDEtVGltZUFjY291bnRpbmc6OkluY29tcGxldGVXb3JraW5nRGF5cycsCiAgICAgICAgICAgIEVmZmVjdGl2ZVZhbHVlID0+ICRTZXR0aW5nLT57JzIwMS1UaW1lQWNjb3VudGluZzo6SW5jb21wbGV0ZVdvcmtpbmdEYXlzJ30sCiAgICAgICAgfTsKICAgIH0KCiAgICByZXR1cm4gMSBpZiAhQE5ld1NldHRpbmdzOwoKICAgIG15ICRTdWNjZXNzID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlN5c0NvbmZpZycpLT5TZXR0aW5nc1NldCgKICAgICAgICBVc2VySUQgICA9PiAxLAogICAgICAgIENvbW1lbnRzID0+ICdUaW1lQWNjb3VudGluZyAtIHBhY2thZ2Ugc2V0dXAgZnVuY3Rpb246IE1pZ3JhdGVDb25maWdzJywKICAgICAgICBTZXR0aW5ncyA9PiBcQE5ld1NldHRpbmdzCiAgICApOwoKICAgIHJldHVybiAxOwp9Cgo9aGVhZDIgX0dldE9UT0JPNUNvbmZpZ0JhY2t1cCgpCgpHZXQgdGhlIGN1c3RvbSBjb25maWd1cmF0aW9ucyBtYWRlIGluIHRoZSBwcmV2aW91cyB2ZXJzaW9uLCBPVE9CTyA1LgoKICAgIG15ICRSZXN1bHQgPSAkQ29kZU9iamVjdC0+X0dldE9UT0JPNUNvbmZpZ0JhY2t1cCgpOwoKPWN1dAoKc3ViIF9HZXRPVE9CTzVDb25maWdCYWNrdXAgewogICAgbXkgJENvbmZpZyA9IHt9OwoKICAgIG15ICRGaWxlQ2xhc3MgPSAnS2VybmVsOjpDb25maWc6OkJhY2t1cHM6OlpaWkF1dG9PVE9CTzUnOwogICAgZGVsZXRlICRJTkN7JEZpbGVDbGFzc307CgogICAgaWYgKAogICAgICAgICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6U3lzdGVtOjpNYWluJyktPlJlcXVpcmUoCiAgICAgICAgICAgICRGaWxlQ2xhc3MsCiAgICAgICAgICAgIFNpbGVudCA9PiAxLAogICAgICAgICkKICAgICAgICApCiAgICB7CiAgICAgICAgJEZpbGVDbGFzcy0+TG9hZCgkQ29uZmlnKTsKICAgIH0KCiAgICByZXR1cm4gJENvbmZpZzsKfQoKPWhlYWQyIF9NaWdyYXRlUGVybWlzc2lvbnMoKQoKY2hhbmdlIHBlcm1pc3Npb25zIHRvIG1hdGNoIHRoZSBvbGQgb25lcyBiZWZvcmUgdGhlIHVwZ3JhZGUuCgogICAgbXkgJFJlc3VsdCA9ICRDb2RlT2JqZWN0LT5fTWlncmF0ZVBlcm1pc3Npb25zKCk7Cgo9Y3V0CgpzdWIgX01pZ3JhdGVQZXJtaXNzaW9ucyB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgIG15ICRPbGRDb25maWcgPSAkU2VsZi0+X0dldE9UT0JPNUNvbmZpZ0JhY2t1cCgpOwogICAgbXkgJE5ld0NvbmZpZyA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6Q29uZmlnJyk7CgogICAgbXkgJEdldENvbmZpZyA9IHN1YiB7CiAgICAgICAgbXkgJFNvdXJjZSAgICAgID0gc2hpZnQ7CiAgICAgICAgbXkgJFNldHRpbmdOYW1lID0gc2hpZnQ7CgogICAgICAgIG15ICRDb25maWcgPSAkU291cmNlOwogICAgICAgIG15IEBLZXlzICAgPSBzcGxpdCAvIyMjLywgJFNldHRpbmdOYW1lOwogICAgICAgIHdoaWxlICggbXkgJEtleSA9IHNoaWZ0IEBLZXlzICkgewogICAgICAgICAgICAkQ29uZmlnID0gJENvbmZpZy0+eyRLZXl9OwogICAgICAgIH0KCiAgICAgICAgcmV0dXJuICRDb25maWc7CiAgICB9OwoKICAgIG15IEBOZXdTZXR0aW5ncyAgICAgICA9ICgpOwogICAgbXkgQFNldHRpbmdzVG9NaWdyYXRlID0gKAogICAgICAgIHsKICAgICAgICAgICAgTmFtZSAgICAgPT4gJ0Zyb250ZW5kOjpNb2R1bGUjIyNBZ2VudFRpbWVBY2NvdW50aW5nRWRpdCcsCiAgICAgICAgICAgIERlZmF1bHRzID0+IHsKICAgICAgICAgICAgICAgIEdyb3VwID0+IFsKICAgICAgICAgICAgICAgICAgICAndGltZV9hY2NvdW50aW5nJwogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgIEdyb3VwUm8gPT4gWwogICAgICAgICAgICAgICAgICAgICd0aW1lX2FjY291bnRpbmcnCiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgTmF2QmFyID0+IFsKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIEJsb2NrICAgPT4gJycsCiAgICAgICAgICAgICAgICAgICAgICAgIEdyb3VwUm8gPT4gWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RpbWVfYWNjb3VudGluZycKICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgTmFtZSA9PiAnRWRpdCcsCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgIH0sCiAgICAgICAgfSwKCiAgICAgICAgewogICAgICAgICAgICBOYW1lICAgICA9PiAnRnJvbnRlbmQ6Ok1vZHVsZSMjI0FnZW50VGltZUFjY291bnRpbmdPdmVydmlldycsCiAgICAgICAgICAgIERlZmF1bHRzID0+IHsKICAgICAgICAgICAgICAgIEdyb3VwID0+IFsKICAgICAgICAgICAgICAgICAgICAndGltZV9hY2NvdW50aW5nJwogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgIEdyb3VwUm8gPT4gWwogICAgICAgICAgICAgICAgICAgICd0aW1lX2FjY291bnRpbmcnCiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgTmF2QmFyID0+IFsKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIEJsb2NrICAgPT4gJycsCiAgICAgICAgICAgICAgICAgICAgICAgIEdyb3VwUm8gPT4gWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RpbWVfYWNjb3VudGluZycKICAgICAgICAgICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAgICAgICAgTmFtZSA9PiAnT3ZlcnZpZXcnLAogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgIH0sCiAgICAgICAgfSwKCiAgICAgICAgewogICAgICAgICAgICBOYW1lICAgICA9PiAnRnJvbnRlbmQ6Ok1vZHVsZSMjI0FnZW50VGltZUFjY291bnRpbmdTZXR0aW5nJywKICAgICAgICAgICAgRGVmYXVsdHMgPT4gewogICAgICAgICAgICAgICAgRGVzY3JpcHRpb24gPT4gJ1RpbWUgYWNjb3VudGluZyBzZXR0aW5ncy4nLAogICAgICAgICAgICAgICAgR3JvdXAgICAgICAgPT4gWwogICAgICAgICAgICAgICAgICAgICd0aW1lX2FjY291bnRpbmcnCiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgR3JvdXBSbyA9PiBbCiAgICAgICAgICAgICAgICAgICAgJ3RpbWVfYWNjb3VudGluZycKICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICBOYXZCYXIgPT4gWwogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgQmxvY2sgPT4gJycsCiAgICAgICAgICAgICAgICAgICAgICAgIEdyb3VwID0+IFsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0aW1lX2FjY291bnRpbmcnCiAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUgPT4gJ1NldHRpbmdzJywKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgfSwKICAgICAgICB9LAoKICAgICAgICB7CiAgICAgICAgICAgIE5hbWUgICAgID0+ICdGcm9udGVuZDo6TW9kdWxlIyMjQWdlbnRUaW1lQWNjb3VudGluZ1JlcG9ydGluZycsCiAgICAgICAgICAgIERlZmF1bHRzID0+IHsKICAgICAgICAgICAgICAgIEdyb3VwID0+IFsKICAgICAgICAgICAgICAgICAgICAndGltZV9hY2NvdW50aW5nJwogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgIEdyb3VwUm8gPT4gWwogICAgICAgICAgICAgICAgICAgICd0aW1lX2FjY291bnRpbmcnCiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgTmF2QmFyID0+IFsKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIEJsb2NrID0+ICcnLAogICAgICAgICAgICAgICAgICAgICAgICBHcm91cCA9PiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndGltZV9hY2NvdW50aW5nJwogICAgICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAgICAgICBOYW1lID0+ICdSZXBvcnRpbmcnLAogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICB9LAogICAgICAgIH0sCgogICAgICAgIHsKICAgICAgICAgICAgTmFtZSAgICAgPT4gJ0Zyb250ZW5kOjpNb2R1bGUjIyNBZ2VudFRpbWVBY2NvdW50aW5nVmlldycsCiAgICAgICAgICAgIERlZmF1bHRzID0+IHsKICAgICAgICAgICAgICAgIEdyb3VwID0+IFsKICAgICAgICAgICAgICAgICAgICAndGltZV9hY2NvdW50aW5nJwogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgIEdyb3VwUm8gPT4gWwogICAgICAgICAgICAgICAgICAgICd0aW1lX2FjY291bnRpbmcnCiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICB9LAogICAgICAgIH0sCiAgICApOwoKICAgIG15ICRTeXNDb25maWdPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6U3lzQ29uZmlnJyk7CgogICAgU0VUVElORzoKICAgIGZvciBteSAkU2V0dGluZyAoQFNldHRpbmdzVG9NaWdyYXRlKSB7CiAgICAgICAgbXkgJFNldHRpbmdPbGRDb25maWcgPSAkR2V0Q29uZmlnLT4oICRPbGRDb25maWcsICRTZXR0aW5nLT57TmFtZX0sICk7CiAgICAgICAgbXkgJFNldHRpbmdEZWZhdWx0cyAgPSAkU2V0dGluZy0+e0RlZmF1bHRzfTsKCiAgICAgICAgbXkgQEdyb3VwR3JvdXBSbyA9IHF3KCBHcm91cCBHcm91cFJvICk7CgogICAgICAgIHsKICAgICAgICAgICAgbXkgJE5ld1NldHRpbmcgPSAkR2V0Q29uZmlnLT4oICROZXdDb25maWcsICRTZXR0aW5nLT57TmFtZX0gKTsKCiAgICAgICAgICAgICMgQ2hlY2sgZm9yIEdyb3VwIGFuZCBHcm91cFJvLgogICAgICAgICAgICBmb3IgbXkgJEtleSAoQEdyb3VwR3JvdXBSbykgewogICAgICAgICAgICAgICAgaWYgKCBkZWZpbmVkICRTZXR0aW5nT2xkQ29uZmlnLT57JEtleX0gfHwgZGVmaW5lZCAkU2V0dGluZ0RlZmF1bHRzLT57JEtleX0gKSB7CiAgICAgICAgICAgICAgICAgICAgJE5ld1NldHRpbmctPnskS2V5fSA9ICRTZXR0aW5nT2xkQ29uZmlnLT57JEtleX0gLy8gJFNldHRpbmdEZWZhdWx0cy0+eyRLZXl9OwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICBwdXNoIEBOZXdTZXR0aW5ncywgewogICAgICAgICAgICAgICAgTmFtZSAgICAgICAgICAgPT4gJFNldHRpbmctPntOYW1lfSwKICAgICAgICAgICAgICAgIEVmZmVjdGl2ZVZhbHVlID0+ICROZXdTZXR0aW5nLAogICAgICAgICAgICAgICAgSXNWYWxpZCAgICAgICAgPT4gMSwKICAgICAgICAgICAgfTsKICAgICAgICB9CgogICAgICAgICMgQ2hlY2sgZm9yIE5hdkJhciA9PiBOYXZpZ2F0aW9uLgogICAgICAgIGlmICggJFNldHRpbmdPbGRDb25maWctPntOYXZCYXJ9IHx8ICRTZXR0aW5nRGVmYXVsdHMtPntOYXZCYXJ9ICkgewogICAgICAgICAgICBteSAoIHVuZGVmLCAkRnJvbnRlbmQgKSA9IHNwbGl0IC8jIyMvLCAkU2V0dGluZy0+e05hbWV9OwogICAgICAgICAgICBteSAkTmV3U2V0dGluZyA9ICRHZXRDb25maWctPiggJE5ld0NvbmZpZywgIkZyb250ZW5kOjpOYXZpZ2F0aW9uIyMjJHsgRnJvbnRlbmQgfSIgKTsKCiAgICAgICAgICAgIGZvciBteSAkSW5kZXggKCBzb3J0IGtleXMgJXskTmV3U2V0dGluZ30gKSB7CiAgICAgICAgICAgICAgICBteSAkTmV3SXRlbXMgPSAkTmV3U2V0dGluZy0+eyRJbmRleH07CiAgICAgICAgICAgICAgICBmb3IgbXkgJE5ld0l0ZW0gKCBAeyROZXdJdGVtc30gKSB7CgogICAgICAgICAgICAgICAgICAgIFNPVVJDRToKICAgICAgICAgICAgICAgICAgICBmb3IgbXkgJFNvdXJjZSAoICggJFNldHRpbmdPbGRDb25maWctPntOYXZCYXJ9LCAkU2V0dGluZ0RlZmF1bHRzLT57TmF2QmFyfSApICkgewogICAgICAgICAgICAgICAgICAgICAgICBteSAkT2xkSXRlbQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPSBMaXN0OjpVdGlsOjpmaXJzdCB7ICRfLT57TmFtZX0gZXEgJE5ld0l0ZW0tPntOYW1lfSAmJiAkXy0+e0Jsb2NrfSBlcSAkTmV3SXRlbS0+e0Jsb2NrfSB9CiAgICAgICAgICAgICAgICAgICAgICAgIEB7JFNvdXJjZX07CiAgICAgICAgICAgICAgICAgICAgICAgIG5leHQgU09VUkNFIGlmICEkT2xkSXRlbTsKCiAgICAgICAgICAgICAgICAgICAgICAgIGZvciBteSAkS2V5IChAR3JvdXBHcm91cFJvKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIGRlZmluZWQgJE9sZEl0ZW0tPnskS2V5fSApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkTmV3SXRlbS0+eyRLZXl9ID0gJE9sZEl0ZW0tPnskS2V5fTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBsYXN0IFNPVVJDRTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgcHVzaCBATmV3U2V0dGluZ3MsIHsKICAgICAgICAgICAgICAgICAgICBOYW1lICAgICAgICAgICA9PiAiRnJvbnRlbmQ6Ok5hdmlnYXRpb24jIyMkeyBGcm9udGVuZCB9IyMjJHsgSW5kZXggfSIsCiAgICAgICAgICAgICAgICAgICAgRWZmZWN0aXZlVmFsdWUgPT4gJE5ld1NldHRpbmctPnskSW5kZXh9LAogICAgICAgICAgICAgICAgICAgIElzVmFsaWQgICAgICAgID0+IDEsCiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgICMgRGVwbG95IHRoZSBuZXcgc2V0dGluZ3MuCiAgICBteSAkU2V0dGluZ3NEZXBsb3llZCA9ICRTeXNDb25maWdPYmplY3QtPlNldHRpbmdzU2V0KAogICAgICAgIFVzZXJJRCAgID0+IDEsCiAgICAgICAgQ29tbWVudHMgPT4gJ1RpbWVBY2NvdW50aW5nIC0gcGFja2FnZSBzZXR1cCBmdW5jdGlvbjogX01pZ3JhdGVQZXJtaXNzaW9ucycsCiAgICAgICAgU2V0dGluZ3MgPT4gXEBOZXdTZXR0aW5ncywKICAgICk7CiAgICBpZiAoICEkU2V0dGluZ3NEZXBsb3llZCApIHsKICAgICAgICAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6TG9nJyktPkxvZygKICAgICAgICAgICAgTWVzc2FnZSAgPT4gJ0Vycm9yIHdoaWxlIGRlcGxveWluZyB0aGUgbWlncmF0ZWQgcGVybWlzc2lvbnMhJywKICAgICAgICAgICAgUHJpb3JpdHkgPT4gJ2Vycm9yJywKICAgICAgICApOwogICAgfQoKICAgIHJldHVybiAxOwp9CgoxOwoKPWhlYWQxIFRFUk1TIEFORCBDT05ESVRJT05TCgpUaGlzIHNvZnR3YXJlIGlzIHBhcnQgb2YgdGhlIE9UT0JPIHByb2plY3QgKEw8aHR0cHM6Ly9vdG9iby5vcmcvPikuCgpUaGlzIHNvZnR3YXJlIGNvbWVzIHdpdGggQUJTT0xVVEVMWSBOTyBXQVJSQU5UWS4gRm9yIGRldGFpbHMsIHNlZQp0aGUgZW5jbG9zZWQgZmlsZSBDT1BZSU5HIGZvciBsaWNlbnNlIGluZm9ybWF0aW9uIChHUEwpLiBJZiB5b3UKZGlkIG5vdCByZWNlaXZlIHRoaXMgZmlsZSwgc2VlIEw8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMy4wLnR4dD4uCgo9Y3V0Cg==</File>
        <File Location="doc/en/TimeAccounting.pdf" Permission="644" Encode="Base64">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</File>
    </Filelist>
    <DatabaseInstall Type="post">
        <TableCreate Type="post" Name="time_accounting_action">
            <Column AutoIncrement="true" Name="id" PrimaryKey="true" Required="true" Type="BIGINT"></Column>
            <Column Name="action" Required="false" Size="250" Type="VARCHAR"></Column>
            <Column Name="status" Required="true" Size="15" Type="VARCHAR"></Column>
        </TableCreate>
        <TableCreate Type="post" Name="time_accounting_project">
            <Column AutoIncrement="true" Name="id" PrimaryKey="true" Required="true" Type="BIGINT"></Column>
            <Column Name="project" Required="false" Size="250" Type="VARCHAR"></Column>
            <Column Name="description" Required="false" Size="500" Type="VARCHAR"></Column>
            <Column Name="status" Required="true" Size="15" Type="VARCHAR"></Column>
        </TableCreate>
        <TableCreate Type="post" Name="time_accounting_table">
            <Column AutoIncrement="true" Name="id" PrimaryKey="true" Required="true" Type="BIGINT"></Column>
            <Column Name="user_id" Required="true" Type="INTEGER"></Column>
            <Column Name="project_id" Required="true" Type="BIGINT"></Column>
            <Column Name="action_id" Required="true" Type="BIGINT"></Column>
            <Column Name="remark" Required="false" Type="TEXT"></Column>
            <Column Name="time_start" Required="true" Type="DATE"></Column>
            <Column Name="time_end" Required="true" Type="DATE"></Column>
            <Column Name="period" Required="false" Size="10,3" Type="DECIMAL"></Column>
            <Column Name="ticket_id" Required="false" Size="100" Type="INTEGER"></Column>
            <Column Name="article_id" Required="false" Size="100" Type="INTEGER"></Column>
            <Column Name="base" Required="false" Size="100" Type="VARCHAR"></Column>
            <Column Name="created" Required="true" Type="DATE"></Column>
            <Index Name="time_accounting_table_user_id">
                <IndexColumn Name="user_id">
                </IndexColumn>
            </Index>
            <Index Name="time_accounting_table_project_action_period_time_start_end">
                <IndexColumn Name="project_id">
                </IndexColumn>
                <IndexColumn Name="action_id">
                </IndexColumn>
                <IndexColumn Name="period">
                </IndexColumn>
                <IndexColumn Name="time_start">
                </IndexColumn>
                <IndexColumn Name="time_end">
                </IndexColumn>
            </Index>
            <Index Name="time_accounting_table_user_id_time_start">
                <IndexColumn Name="user_id">
                </IndexColumn>
                <IndexColumn Name="time_start">
                </IndexColumn>
            </Index>
        </TableCreate>
        <TableCreate Type="post" Name="time_accounting_user_period">
            <Column AutoIncrement="true" Name="id" PrimaryKey="true" Required="true" Type="BIGINT"></Column>
            <Column Name="user_id" Required="true" Type="INTEGER"></Column>
            <Column Name="preference_period" Required="true" Type="INTEGER"></Column>
            <Column Name="date_start" Required="true" Type="DATE"></Column>
            <Column Name="date_end" Required="true" Type="DATE"></Column>
            <Column Name="weekly_hours" Required="false" Size="10,2" Type="DECIMAL"></Column>
            <Column Name="leave_days" Required="false" Size="10,2" Type="DECIMAL"></Column>
            <Column Name="overtime" Required="false" Size="10,2" Type="DECIMAL"></Column>
            <Column Name="status" Required="true" Size="15" Type="VARCHAR"></Column>
            <Index Name="time_accounting_user_period_user_status_date_start_end">
                <IndexColumn Name="status">
                </IndexColumn>
                <IndexColumn Name="date_start">
                </IndexColumn>
                <IndexColumn Name="date_end">
                </IndexColumn>
            </Index>
        </TableCreate>
        <TableCreate Type="post" Name="time_accounting_user">
            <Column AutoIncrement="true" Name="id" PrimaryKey="true" Required="true" Type="BIGINT"></Column>
            <Column Name="user_id" Required="true" Type="INTEGER"></Column>
            <Column Name="description" Required="true" Size="1020" Type="VARCHAR"></Column>
            <Column Name="show_overtime" Required="false" Type="INTEGER"></Column>
            <Column Name="create_project" Required="false" Type="INTEGER"></Column>
            <Column Name="allow_skip" Required="false" Type="INTEGER"></Column>
            <Column Name="calendar" Required="false" Type="INTEGER"></Column>
            <Index Name="time_accounting_user_user_id">
                <IndexColumn Name="user_id">
                </IndexColumn>
            </Index>
        </TableCreate>
    </DatabaseInstall>
    <DatabaseUpgrade Type="post">
        <TableAlter Type="post" Name="time_accounting_user" Version="1.2.2">
            <ColumnAdd Name="calendar" Required="false" Type="INTEGER"></ColumnAdd>
        </TableAlter>
        <TableAlter Type="post" Name="time_accounting_table" Version="1.4.2">
            <IndexCreate Name="time_accounting_table_user_id">
                <IndexColumn Name="user_id">
                </IndexColumn>
            </IndexCreate>
            <IndexCreate Name="time_accounting_table_project_action_period_time_start_end">
                <IndexColumn Name="project_id">
                </IndexColumn>
                <IndexColumn Name="action_id">
                </IndexColumn>
                <IndexColumn Name="period">
                </IndexColumn>
                <IndexColumn Name="time_start">
                </IndexColumn>
                <IndexColumn Name="time_end">
                </IndexColumn>
            </IndexCreate>
            <IndexCreate Name="time_accounting_table_user_id_time_start">
                <IndexColumn Name="user_id">
                </IndexColumn>
                <IndexColumn Name="time_start">
                </IndexColumn>
            </IndexCreate>
        </TableAlter>
        <TableAlter Type="post" Name="time_accounting_table" Version="10.1.2">
            <ColumnAdd Name="ticket_id" Required="false" Size="100" Type="INTEGER"></ColumnAdd>
            <ColumnAdd Name="article_id" Required="false" Size="100" Type="INTEGER"></ColumnAdd>
            <ColumnAdd Name="base" Required="false" Size="100" Type="VARCHAR"></ColumnAdd>
        </TableAlter>
        <TableAlter Type="post" Name="time_accounting_user" Version="1.4.2">
            <IndexCreate Name="time_accounting_user_user_id">
                <IndexColumn Name="user_id">
                </IndexColumn>
            </IndexCreate>
        </TableAlter>
        <TableAlter Type="post" Name="time_accounting_user_period" Version="1.4.2">
            <IndexCreate Name="time_accounting_user_period_user_status_date_start_end">
                <IndexColumn Name="status">
                </IndexColumn>
                <IndexColumn Name="date_start">
                </IndexColumn>
                <IndexColumn Name="date_end">
                </IndexColumn>
            </IndexCreate>
        </TableAlter>
        <TableAlter Type="post" Name="time_accounting_user" Version="6.0.5">
            <ColumnAdd Name="allow_skip" Required="false" Type="INTEGER"></ColumnAdd>
        </TableAlter>
    </DatabaseUpgrade>
    <DatabaseUninstall Type="pre">
        <TableDrop Type="pre" Name="time_accounting_action">
        </TableDrop>
        <TableDrop Type="pre" Name="time_accounting_project">
        </TableDrop>
        <TableDrop Type="pre" Name="time_accounting_table">
        </TableDrop>
        <TableDrop Type="pre" Name="time_accounting_user">
        </TableDrop>
        <TableDrop Type="pre" Name="time_accounting_user_period">
        </TableDrop>
    </DatabaseUninstall>
</otrs_package>