diff --git a/Doxyfile b/Doxyfile
index 459d79194428d72312dd6fbfa143aad3af71d61c..70fe13e98a154b9e0a34c25c5e0012b2d8cbdd36 100644
--- a/Doxyfile
+++ b/Doxyfile
@@ -74,7 +74,7 @@ PROJECT_ICON           =
 # entered, it will be relative to the location where Doxygen was started. If
 # left blank the current directory will be used.
 
-OUTPUT_DIRECTORY       = ./assets/Pacman_documentation
+OUTPUT_DIRECTORY       = ./assets/docs
 
 # If the CREATE_SUBDIRS tag is set to YES then Doxygen will create up to 4096
 # sub-directories (in 2 levels) under the output directory of each output format
diff --git a/assets/Pacman_documentation b/assets/Pacman_documentation
deleted file mode 160000
index 3961d4d2ef163b1fac94e411b4a6f5c1a36eff68..0000000000000000000000000000000000000000
--- a/assets/Pacman_documentation
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 3961d4d2ef163b1fac94e411b4a6f5c1a36eff68
diff --git a/assets/docs/html/_application_8h_source.html b/assets/docs/html/_application_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..d4a496b82ba818e3d8a211a5541ae601b718a63b
--- /dev/null
+++ b/assets/docs/html/_application_8h_source.html
@@ -0,0 +1,145 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Исходный файл source/application/App/Application.h</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('_application_8h_source.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Application.h</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span> </div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;../State/IState.h&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;../State/SelectState.h&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span> </div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#include &lt;iostream&gt;</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="preprocessor">#include &lt;memory&gt;</span></div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span> </div>
+<div class="foldopen" id="foldopen00009" data-start="{" data-end="};">
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"><a class="line" href="class_application.html">    9</a></span><span class="keyword">class </span>Application : <span class="keyword">public</span> <a class="code hl_struct" href="struct_i_state_manager.html">IStateManager</a> {</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    Application();</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    ~Application() <span class="keyword">override</span> = <span class="keywordflow">default</span>;</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span> </div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    <span class="keywordtype">int</span> run();</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span> </div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    <span class="keywordtype">void</span> set_next_state(std::unique_ptr&lt;IState&gt;&amp;&amp; ptr_state) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    <span class="keywordtype">void</span> apply_deffer_state_change() <span class="keyword">noexcept</span>;</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span> </div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    std::unique_ptr&lt;IState&gt;  m_ptr_state_next;</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    std::unique_ptr&lt;IState&gt; m_ptr_state_current;</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>};</div>
+</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span> </div>
+<div class="ttc" id="astruct_i_state_manager_html"><div class="ttname"><a href="struct_i_state_manager.html">IStateManager</a></div><div class="ttdef"><b>Определения</b> IState.h:31</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_f4241d05c30ca25826da7a6464eec250.html">App</a></li><li class="navelem"><b>Application.h</b></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/_bob_builder_director_8h_source.html b/assets/docs/html/_bob_builder_director_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..3da06b6ab47fa6831268c379f780c32da02f6783
--- /dev/null
+++ b/assets/docs/html/_bob_builder_director_8h_source.html
@@ -0,0 +1,135 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Исходный файл source/application/BobBuilder/BobBuilderDirector.h</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('_bob_builder_director_8h_source.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">BobBuilderDirector.h</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;IGameBuilder.h&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span> </div>
+<div class="foldopen" id="foldopen00006" data-start="{" data-end="};">
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"><a class="line" href="class_game_builder_director.html">    6</a></span><span class="keyword">class </span>GameBuilderDirector {</div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span>    GameBuilderDirector(std::unique_ptr&lt;IGameBuilder&gt;&amp;&amp; ptr_builder, sf::VideoMode mode, std::string  window_title, <span class="keywordtype">float</span> dynamic_objects_ratio);</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>    std::unique_ptr&lt;GameState&gt; build(<a class="code hl_struct" href="struct_i_state_manager.html">IStateManager</a>&amp; state_manager, <span class="keywordtype">int</span> players);</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span> </div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    std::string m_window_title;</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    sf::VideoMode m_mode;</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    <span class="keywordtype">float</span> m_dynamic_object_ratio;</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    std::unique_ptr&lt;IGameBuilder&gt; m_ptr_builder;</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>};</div>
+</div>
+<div class="ttc" id="astruct_i_state_manager_html"><div class="ttname"><a href="struct_i_state_manager.html">IStateManager</a></div><div class="ttdef"><b>Определения</b> IState.h:31</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.html">BobBuilder</a></li><li class="navelem"><b>BobBuilderDirector.h</b></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/_button_8h_source.html b/assets/docs/html/_button_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..9c6e17bc794a8a12a36edc663c99ba2fe494cbbc
--- /dev/null
+++ b/assets/docs/html/_button_8h_source.html
@@ -0,0 +1,164 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Исходный файл source/application/Drawable/DrawMenu/Button/Button.h</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('_button_8h_source.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Button.h</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;../../IDrawable.h&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;../../../State/IState.h&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;../../../SelectCommand/ISelectCommand.h&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span> </div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#include &lt;memory&gt;</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span> </div>
+<div class="foldopen" id="foldopen00008" data-start="{" data-end="};">
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"><a class="line" href="class_button.html">    8</a></span><span class="keyword">class </span>Button : <span class="keyword">public</span> <a class="code hl_struct" href="struct_i_drawable.html">IDrawable</a> {</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    <span class="comment">//@todo add Button()</span></div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    Button(sf::Vector2f pos, sf::Vector2f button_size,</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>             <span class="keyword">const</span> std::string&amp; text, <span class="keywordtype">size_t</span> font_size,</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>             std::unique_ptr&lt;ISelectCommand&gt; ptr_command); <span class="comment">//@todo change to set</span></div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    <span class="keywordtype">void</span> select();</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    <span class="keywordtype">void</span> unselect();</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    <span class="keywordtype">bool</span> is_selected() <span class="keyword">const</span> <span class="keyword">noexcept</span>;</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    <span class="keywordtype">bool</span> is_position_in(sf::Vector2f pos) <span class="keyword">const</span> <span class="keyword">noexcept</span>;</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    <span class="keywordtype">void</span> push();</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    <span class="keywordtype">void</span> draw_into(sf::RenderWindow&amp; window) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span> </div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    sf::Text m_text;</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>    <span class="keywordtype">bool</span> m_is_selected = <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>    sf::RectangleShape m_rectangle;</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>    std::unique_ptr&lt;ISelectCommand&gt; m_ptr_command;</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>};</div>
+</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span> </div>
+<div class="foldopen" id="foldopen00028" data-start="{" data-end="};">
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"><a class="line" href="class_choose_button.html">   28</a></span><span class="keyword">class </span>ChooseButton : <span class="keyword">public</span> <a class="code hl_struct" href="struct_i_drawable.html">IDrawable</a> {</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>    ChooseButton(sf::Vector2f pos, <span class="keyword">const</span> std::string&amp; text, <span class="keywordtype">size_t</span> font_size);</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>    <span class="keywordtype">void</span> select() { m_is_selected = <span class="keyword">true</span>; }</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>    <span class="keywordtype">void</span> unselect() { m_is_selected = <span class="keyword">false</span>; }</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>    <span class="keywordtype">bool</span> is_selected() <span class="keyword">const</span> <span class="keyword">noexcept</span> { <span class="keywordflow">return</span> m_is_selected; }</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>    <span class="keywordtype">bool</span> contains(sf::Vector2f point) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>    <span class="keywordtype">void</span> draw_into(sf::RenderWindow&amp; window) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>    sf::Text m_text;</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span>    <span class="keywordtype">bool</span> m_is_selected = <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>    sf::CircleShape m_out_circle;</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>    sf::CircleShape m_in_circle;</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span>};</div>
+</div>
+<div class="ttc" id="astruct_i_drawable_html"><div class="ttname"><a href="struct_i_drawable.html">IDrawable</a></div><div class="ttdoc">Общий интерфейс для отрисовываемых сущностей и объектов</div><div class="ttdef"><b>Определения</b> IDrawable.h:8</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_0620867b96a9d6681889b0cd51382a82.html">Drawable</a></li><li class="navelem"><a class="el" href="dir_1ec01c3d118a92a59cb64fdd508b6eff.html">DrawMenu</a></li><li class="navelem"><a class="el" href="dir_e31f3142f437cc9199f6e7da6a0351a8.html">Button</a></li><li class="navelem"><b>Button.h</b></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/_context_8h_source.html b/assets/docs/html/_context_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..c2850827b95f8f260d18d5be37af849786533c63
--- /dev/null
+++ b/assets/docs/html/_context_8h_source.html
@@ -0,0 +1,157 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Исходный файл source/application/Context/Context.h</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('_context_8h_source.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Context.h</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;../Drawable/Entity/Pacman.h&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span> </div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &lt;istream&gt;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &lt;list&gt;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span></div>
+<div class="foldopen" id="foldopen00014" data-start="{" data-end="};">
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"><a class="line" href="struct_game_context.html">   14</a></span><span class="keyword">struct </span>GameContext {</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    GameContext();</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    <span class="keyword">enum</span> State { INGAME, WIN, LOST } state = INGAME;</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    std::list&lt;std::unique_ptr&lt;IDynamicEntity&gt;&gt; dynamic_objects;</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    std::list&lt;std::unique_ptr&lt;IStaticEntity&gt;&gt; static_objects;</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    <a class="code hl_class" href="class_pacman.html">Pacman</a> pacman;</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    <a class="code hl_class" href="class_pacman.html">Pacman</a> pacman2;</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    GameContext clone();</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    <span class="keywordtype">bool</span> screamer_active = <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>    <span class="keywordtype">float</span> screamer_timer = 0.0f;</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>};</div>
+</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span> </div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span> </div>
+<div class="foldopen" id="foldopen00027" data-start="{" data-end="};">
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"><a class="line" href="class_context_manager.html">   27</a></span><span class="keyword">class </span><a class="code hl_class" href="class_context_manager.html">ContextManager</a> {</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>    <span class="keywordtype">void</span> save_current_context() { m_history.push(m_initial_context.clone()); }; </div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_context_manager.html#a34dc3ea752a37fe9c54dff33e1c4b138">restore_previous_context</a>(); </div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_context_manager.html#a54b7081b2e31ec59e3a06ef7b8eeed8e">reset</a>(<a class="code hl_struct" href="struct_game_context.html">GameContext</a>&amp;&amp; context); </div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"><a class="line" href="class_context_manager.html#a690898db09f92499c35fdbf24a7c3821">   32</a></span>    <a class="code hl_struct" href="struct_game_context.html">GameContext</a>&amp; <a class="code hl_function" href="class_context_manager.html#a690898db09f92499c35fdbf24a7c3821">get_current_context</a>() { <span class="keywordflow">return</span> m_initial_context; }; </div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>    <a class="code hl_struct" href="struct_game_context.html">GameContext</a> m_initial_context;</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>    std::stack&lt;GameContext&gt; m_history; </div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>};</div>
+</div>
+<div class="ttc" id="aclass_context_manager_html"><div class="ttname"><a href="class_context_manager.html">ContextManager</a></div><div class="ttdef"><b>Определения</b> Context.h:27</div></div>
+<div class="ttc" id="aclass_context_manager_html_a34dc3ea752a37fe9c54dff33e1c4b138"><div class="ttname"><a href="class_context_manager.html#a34dc3ea752a37fe9c54dff33e1c4b138">ContextManager::restore_previous_context</a></div><div class="ttdeci">void restore_previous_context()</div><div class="ttdef"><b>Определения</b> Context.cpp:30</div></div>
+<div class="ttc" id="aclass_context_manager_html_a54b7081b2e31ec59e3a06ef7b8eeed8e"><div class="ttname"><a href="class_context_manager.html#a54b7081b2e31ec59e3a06ef7b8eeed8e">ContextManager::reset</a></div><div class="ttdeci">void reset(GameContext &amp;&amp;context)</div><div class="ttdef"><b>Определения</b> Context.cpp:43</div></div>
+<div class="ttc" id="aclass_context_manager_html_a690898db09f92499c35fdbf24a7c3821"><div class="ttname"><a href="class_context_manager.html#a690898db09f92499c35fdbf24a7c3821">ContextManager::get_current_context</a></div><div class="ttdeci">GameContext &amp; get_current_context()</div><div class="ttdef"><b>Определения</b> Context.h:32</div></div>
+<div class="ttc" id="aclass_pacman_html"><div class="ttname"><a href="class_pacman.html">Pacman</a></div><div class="ttdef"><b>Определения</b> Pacman.h:8</div></div>
+<div class="ttc" id="astruct_game_context_html"><div class="ttname"><a href="struct_game_context.html">GameContext</a></div><div class="ttdoc">Контекст игры. Тут хранится состояние всего того, что происходит в лабиринте</div><div class="ttdef"><b>Определения</b> Context.h:14</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_592f7e24f8e0510a8dca7f53521ecb86.html">Context</a></li><li class="navelem"><b>Context.h</b></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/_game_builders_8h_source.html b/assets/docs/html/_game_builders_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..3f0407724e35433ae79fad6f0cecd940ac8e32ea
--- /dev/null
+++ b/assets/docs/html/_game_builders_8h_source.html
@@ -0,0 +1,172 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Исходный файл source/application/BobBuilder/GameBuilders.h</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('_game_builders_8h_source.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">GameBuilders.h</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;IGameBuilder.h&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;../Context/Context.h&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;../../../config.h&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span></div>
+<div class="foldopen" id="foldopen00007" data-start="{" data-end="};">
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"><a class="line" href="class_common_builder.html">    7</a></span><span class="keyword">class </span>CommonBuilder : <span class="keyword">public</span> <a class="code hl_class" href="class_i_game_builder.html">IGameBuilder</a> {</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>    CommonBuilder(<span class="keywordtype">float</span> width, <span class="keywordtype">float</span> height, <span class="keywordtype">float</span> room_size);</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_common_builder.html#ace9b0433bd9b849970e2b96965818789">create_context</a>(<span class="keywordtype">float</span> dynamic_objects_ratio, <span class="keywordtype">int</span> players) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_common_builder.html#a4e45999e05a45814ed25ed3adbbe07e0">create_state</a>(<a class="code hl_struct" href="struct_i_state_manager.html">IStateManager</a>&amp; state_manager, <span class="keyword">const</span> sf::VideoMode&amp; mode, <span class="keyword">const</span> std::string&amp; window_title) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_common_builder.html#ae920c0a91e61aff620096c100e496da0">set_all_to_state</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    std::unique_ptr&lt;GameState&gt; <a class="code hl_function" href="class_common_builder.html#aafef8d08b8bfdfccfde6ff56bfb99987">get_game</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span> </div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span><span class="keyword">protected</span>:</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    <span class="keywordtype">float</span> m_width;</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    <span class="keywordtype">float</span> m_height;</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    <span class="keywordtype">float</span> m_room_size;</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    std::vector&lt;std::vector&lt;Room*&gt;&gt; m_rooms;</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    <a class="code hl_struct" href="struct_game_context.html">GameContext</a> m_context;</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    std::unique_ptr&lt;GameState&gt; m_game_state;</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>};</div>
+</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span></div>
+<div class="foldopen" id="foldopen00025" data-start="{" data-end="};">
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"><a class="line" href="class_simple_builder.html">   25</a></span><span class="keyword">class </span><a class="code hl_class" href="class_simple_builder.html">SimpleBuilder</a> : <span class="keyword">public</span> CommonBuilder {</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>    <span class="keyword">using </span>CommonBuilder::CommonBuilder;</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_simple_builder.html#ad02dcc4d85cec356f6169ce938242226">create_rooms</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_simple_builder.html#aa1c6b39ff7d52a0f8cf811ef91d1feaa">set_rooms_sides</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>};</div>
+</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span></div>
+<div class="foldopen" id="foldopen00033" data-start="{" data-end="};">
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"><a class="line" href="class_complex_builder.html">   33</a></span><span class="keyword">class </span><a class="code hl_class" href="class_complex_builder.html">ComplexBuilder</a> : <span class="keyword">public</span> CommonBuilder {</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>    <span class="keyword">using </span>CommonBuilder::CommonBuilder;</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_complex_builder.html#ac0dfa4956df4c1d1d9a61aa186fc8ac0">create_rooms</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_complex_builder.html#a93755bc2d5ac20722de6bce3d35aa336">set_rooms_sides</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span>};</div>
+</div>
+<div class="ttc" id="aclass_common_builder_html_a4e45999e05a45814ed25ed3adbbe07e0"><div class="ttname"><a href="class_common_builder.html#a4e45999e05a45814ed25ed3adbbe07e0">CommonBuilder::create_state</a></div><div class="ttdeci">void create_state(IStateManager &amp;state_manager, const sf::VideoMode &amp;mode, const std::string &amp;window_title) override</div><div class="ttdoc">Cоздаем состояние GameState, используя имя, режим окна и сслыку на менеджер состояний</div><div class="ttdef"><b>Определения</b> GameBuilders.cpp:57</div></div>
+<div class="ttc" id="aclass_common_builder_html_aafef8d08b8bfdfccfde6ff56bfb99987"><div class="ttname"><a href="class_common_builder.html#aafef8d08b8bfdfccfde6ff56bfb99987">CommonBuilder::get_game</a></div><div class="ttdeci">std::unique_ptr&lt; GameState &gt; get_game() override</div><div class="ttdoc">Получить результат строителя.</div><div class="ttdef"><b>Определения</b> GameBuilders.cpp:77</div></div>
+<div class="ttc" id="aclass_common_builder_html_ace9b0433bd9b849970e2b96965818789"><div class="ttname"><a href="class_common_builder.html#ace9b0433bd9b849970e2b96965818789">CommonBuilder::create_context</a></div><div class="ttdeci">void create_context(float dynamic_objects_ratio, int players) override</div><div class="ttdoc">Создает контекст для игры</div><div class="ttdef"><b>Определения</b> GameBuilders.cpp:13</div></div>
+<div class="ttc" id="aclass_common_builder_html_ae920c0a91e61aff620096c100e496da0"><div class="ttname"><a href="class_common_builder.html#ae920c0a91e61aff620096c100e496da0">CommonBuilder::set_all_to_state</a></div><div class="ttdeci">void set_all_to_state() override</div><div class="ttdoc">Созданный лабиринт и контекст назначаем созданному состоянию игры GameState.</div><div class="ttdef"><b>Определения</b> GameBuilders.cpp:64</div></div>
+<div class="ttc" id="aclass_complex_builder_html"><div class="ttname"><a href="class_complex_builder.html">ComplexBuilder</a></div><div class="ttdef"><b>Определения</b> GameBuilders.h:33</div></div>
+<div class="ttc" id="aclass_complex_builder_html_a93755bc2d5ac20722de6bce3d35aa336"><div class="ttname"><a href="class_complex_builder.html#a93755bc2d5ac20722de6bce3d35aa336">ComplexBuilder::set_rooms_sides</a></div><div class="ttdeci">void set_rooms_sides() override</div><div class="ttdef"><b>Определения</b> GameBuilders.cpp:150</div></div>
+<div class="ttc" id="aclass_complex_builder_html_ac0dfa4956df4c1d1d9a61aa186fc8ac0"><div class="ttname"><a href="class_complex_builder.html#ac0dfa4956df4c1d1d9a61aa186fc8ac0">ComplexBuilder::create_rooms</a></div><div class="ttdeci">void create_rooms() override</div><div class="ttdef"><b>Определения</b> GameBuilders.cpp:131</div></div>
+<div class="ttc" id="aclass_i_game_builder_html"><div class="ttname"><a href="class_i_game_builder.html">IGameBuilder</a></div><div class="ttdef"><b>Определения</b> IGameBuilder.h:5</div></div>
+<div class="ttc" id="aclass_simple_builder_html"><div class="ttname"><a href="class_simple_builder.html">SimpleBuilder</a></div><div class="ttdef"><b>Определения</b> GameBuilders.h:25</div></div>
+<div class="ttc" id="aclass_simple_builder_html_aa1c6b39ff7d52a0f8cf811ef91d1feaa"><div class="ttname"><a href="class_simple_builder.html#aa1c6b39ff7d52a0f8cf811ef91d1feaa">SimpleBuilder::set_rooms_sides</a></div><div class="ttdeci">void set_rooms_sides() override</div><div class="ttdef"><b>Определения</b> GameBuilders.cpp:104</div></div>
+<div class="ttc" id="aclass_simple_builder_html_ad02dcc4d85cec356f6169ce938242226"><div class="ttname"><a href="class_simple_builder.html#ad02dcc4d85cec356f6169ce938242226">SimpleBuilder::create_rooms</a></div><div class="ttdeci">void create_rooms() override</div><div class="ttdoc">Создаем все комнаты</div><div class="ttdef"><b>Определения</b> GameBuilders.cpp:88</div></div>
+<div class="ttc" id="astruct_game_context_html"><div class="ttname"><a href="struct_game_context.html">GameContext</a></div><div class="ttdoc">Контекст игры. Тут хранится состояние всего того, что происходит в лабиринте</div><div class="ttdef"><b>Определения</b> Context.h:14</div></div>
+<div class="ttc" id="astruct_i_state_manager_html"><div class="ttname"><a href="struct_i_state_manager.html">IStateManager</a></div><div class="ttdef"><b>Определения</b> IState.h:31</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.html">BobBuilder</a></li><li class="navelem"><b>GameBuilders.h</b></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/_game_state_8h_source.html b/assets/docs/html/_game_state_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..6c41363a8a3e6c25ec520156611dd358c2d0bcda
--- /dev/null
+++ b/assets/docs/html/_game_state_8h_source.html
@@ -0,0 +1,168 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Исходный файл source/application/State/GameState.h</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('_game_state_8h_source.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">GameState.h</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;IState.h&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;../Drawable/Maze/Maze.h&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;../Context/Context.h&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &quot;../Event/IGameEvent.h&quot;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#include &quot;../Drawable/DrawMenu/Menu/MenuInGame.h&quot;</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span> </div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="preprocessor">#include &quot;SFML/Audio/Music.hpp&quot;</span></div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span></div>
+<div class="foldopen" id="foldopen00013" data-start="{" data-end="};">
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"><a class="line" href="class_game_state.html">   13</a></span><span class="keyword">class </span><a class="code hl_function" href="class_game_state.html#a90b51ee7191c9fd1fc5e207bc35f1153">GameState</a>: <span class="keyword">public</span> IState, <span class="keyword">public</span> IWindowKeeper {</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    <a class="code hl_function" href="class_game_state.html#a90b51ee7191c9fd1fc5e207bc35f1153">GameState</a>(<a class="code hl_struct" href="struct_i_state_manager.html">IStateManager</a>&amp; state_manager, <span class="keyword">const</span> sf::VideoMode&amp; video_mode, <span class="keyword">const</span> std::string&amp; window_title);</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    <a class="code hl_function" href="class_game_state.html#a90b51ee7191c9fd1fc5e207bc35f1153">~GameState</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_game_state.html#a180391dfe966058da0389146534e66d0">event_handling</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_game_state.html#a3610da76344c5c2cbcc5921f877226dc">update</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_game_state.html#a2c36ada0cae89f91d956e2c91b070893">render</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    <span class="keywordtype">bool</span> do_step() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    <span class="keywordtype">void</span> set_maze(<a class="code hl_class" href="class_maze.html">Maze</a>&amp;&amp; maze) {m_maze = std::move(maze); }</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    <span class="keywordtype">void</span> set_context(<a class="code hl_struct" href="struct_game_context.html">GameContext</a>&amp;&amp; context);</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>    <span class="keywordtype">bool</span> process_key_pressed(sf::Keyboard::Key code);</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>    <span class="keyword">const</span> <a class="code hl_class" href="class_score_count.html">ScoreCount</a>&amp; get_score_count()<span class="keyword"> const </span>{<span class="keywordflow">return</span> *m_score_count_one, *m_score_count_two; }</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span> </div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>    <span class="keyword">enum class</span> Music {NONE, INGAME, LOST, WIN};</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>    Music m_current_music = Music::NONE; </div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>    <a class="code hl_class" href="class_maze.html">Maze</a> m_maze;</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>    <a class="code hl_class" href="class_menu_game.html">MenuGame</a> m_menu;</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>    <a class="code hl_class" href="class_context_manager.html">ContextManager</a> m_context_manager;</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>    std::vector&lt;std::unique_ptr&lt;IGameEvent&gt;&gt; m_events;</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>    sf::Music m_sound_win;</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>    sf::Music m_sound_ingame;</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>    sf::Music m_sound_lost;</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>    sf::Music m_screamer_music;</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>    <span class="keywordtype">float</span> m_delta_time;</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span>    std::unique_ptr&lt;ScoreCount&gt; m_score_count_one;</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>    std::unique_ptr&lt;ScoreCount&gt; m_score_count_two;</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>    <span class="keywordtype">bool</span> m_sound_active{<span class="keyword">true</span>};</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span>};</div>
+</div>
+<div class="ttc" id="aclass_context_manager_html"><div class="ttname"><a href="class_context_manager.html">ContextManager</a></div><div class="ttdef"><b>Определения</b> Context.h:27</div></div>
+<div class="ttc" id="aclass_game_state_html_a180391dfe966058da0389146534e66d0"><div class="ttname"><a href="class_game_state.html#a180391dfe966058da0389146534e66d0">GameState::event_handling</a></div><div class="ttdeci">void event_handling() override</div><div class="ttdef"><b>Определения</b> GameState.cpp:23</div></div>
+<div class="ttc" id="aclass_game_state_html_a2c36ada0cae89f91d956e2c91b070893"><div class="ttname"><a href="class_game_state.html#a2c36ada0cae89f91d956e2c91b070893">GameState::render</a></div><div class="ttdeci">void render() override</div><div class="ttdef"><b>Определения</b> GameState.cpp:141</div></div>
+<div class="ttc" id="aclass_game_state_html_a3610da76344c5c2cbcc5921f877226dc"><div class="ttname"><a href="class_game_state.html#a3610da76344c5c2cbcc5921f877226dc">GameState::update</a></div><div class="ttdeci">void update() override</div><div class="ttdef"><b>Определения</b> GameState.cpp:89</div></div>
+<div class="ttc" id="aclass_game_state_html_a90b51ee7191c9fd1fc5e207bc35f1153"><div class="ttname"><a href="class_game_state.html#a90b51ee7191c9fd1fc5e207bc35f1153">GameState::GameState</a></div><div class="ttdeci">GameState(IStateManager &amp;state_manager, const sf::VideoMode &amp;video_mode, const std::string &amp;window_title)</div><div class="ttdef"><b>Определения</b> GameState.cpp:7</div></div>
+<div class="ttc" id="aclass_maze_html"><div class="ttname"><a href="class_maze.html">Maze</a></div><div class="ttdef"><b>Определения</b> Maze.h:30</div></div>
+<div class="ttc" id="aclass_menu_game_html"><div class="ttname"><a href="class_menu_game.html">MenuGame</a></div><div class="ttdef"><b>Определения</b> MenuInGame.h:5</div></div>
+<div class="ttc" id="aclass_score_count_html"><div class="ttname"><a href="class_score_count.html">ScoreCount</a></div><div class="ttdoc">Наблюдатель - счетчик еды. При съедании еды посылается уведомление и наблюдатель увеличивает счетчик ...</div><div class="ttdef"><b>Определения</b> IObserver.h:16</div></div>
+<div class="ttc" id="astruct_game_context_html"><div class="ttname"><a href="struct_game_context.html">GameContext</a></div><div class="ttdoc">Контекст игры. Тут хранится состояние всего того, что происходит в лабиринте</div><div class="ttdef"><b>Определения</b> Context.h:14</div></div>
+<div class="ttc" id="astruct_i_state_manager_html"><div class="ttname"><a href="struct_i_state_manager.html">IStateManager</a></div><div class="ttdef"><b>Определения</b> IState.h:31</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_eb37150066857c324af7acaa5f9b7e6c.html">State</a></li><li class="navelem"><b>GameState.h</b></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/_i_drawable_8h_source.html b/assets/docs/html/_i_drawable_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..f7f1e976f9492c5bae21f0cbda7436947af7ad35
--- /dev/null
+++ b/assets/docs/html/_i_drawable_8h_source.html
@@ -0,0 +1,136 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Исходный файл source/application/Drawable/IDrawable.h</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('_i_drawable_8h_source.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">IDrawable.h</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span> </div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;SFML/Graphics.hpp&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span></div>
+<div class="foldopen" id="foldopen00008" data-start="{" data-end="};">
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"><a class="line" href="struct_i_drawable.html">    8</a></span><span class="keyword">struct </span><a class="code hl_struct" href="struct_i_drawable.html">IDrawable</a> {</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>    <span class="keyword">virtual</span> <span class="keywordtype">void</span> draw_into(sf::RenderWindow&amp; window) = 0;</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    <span class="keyword">virtual</span> <a class="code hl_struct" href="struct_i_drawable.html">~IDrawable</a>() = <span class="keywordflow">default</span>;</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>};</div>
+</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span> </div>
+<div class="foldopen" id="foldopen00013" data-start="{" data-end="};">
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"><a class="line" href="struct_i_preparable.html">   13</a></span><span class="keyword">struct </span><a class="code hl_struct" href="struct_i_preparable.html">IPreparable</a>: <span class="keyword">public</span> <a class="code hl_struct" href="struct_i_drawable.html">IDrawable</a> {</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    <span class="keyword">virtual</span> <span class="keywordtype">void</span> prepare_for_drawing() = 0;</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>};</div>
+</div>
+<div class="ttc" id="astruct_i_drawable_html"><div class="ttname"><a href="struct_i_drawable.html">IDrawable</a></div><div class="ttdoc">Общий интерфейс для отрисовываемых сущностей и объектов</div><div class="ttdef"><b>Определения</b> IDrawable.h:8</div></div>
+<div class="ttc" id="astruct_i_preparable_html"><div class="ttname"><a href="struct_i_preparable.html">IPreparable</a></div><div class="ttdef"><b>Определения</b> IDrawable.h:13</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_0620867b96a9d6681889b0cd51382a82.html">Drawable</a></li><li class="navelem"><b>IDrawable.h</b></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/_i_entity_8h_source.html b/assets/docs/html/_i_entity_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..32dfb337718bcce0f028650ab1984ece8bcbe20e
--- /dev/null
+++ b/assets/docs/html/_i_entity_8h_source.html
@@ -0,0 +1,218 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Исходный файл source/application/Drawable/Entity/IEntity.h</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('_i_entity_8h_source.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">IEntity.h</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span> </div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;../IDrawable.h&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;../../Event/IGameEvent.h&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &quot;MyTexture.h&quot;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span> </div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="keyword">class </span><a class="code hl_class" href="class_room.html">Room</a>;</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="keyword">class </span><a class="code hl_class" href="class_food.html">Food</a>;</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="keyword">class </span><a class="code hl_class" href="class_enemy.html">Enemy</a>;</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span></div>
+<div class="foldopen" id="foldopen00015" data-start="{" data-end="};">
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"><a class="line" href="class_i_visitor.html">   15</a></span><span class="keyword">class </span><a class="code hl_class" href="class_i_visitor.html">IVisitor</a> {</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    <span class="keyword">virtual</span> std::unique_ptr&lt;IGameEvent&gt; visit(<a class="code hl_class" href="class_food.html">Food</a>* ptr_entity) = 0;</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    <span class="keyword">virtual</span> std::unique_ptr&lt;IGameEvent&gt; visit(<a class="code hl_class" href="class_enemy.html">Enemy</a>* ptr_entity) = 0;</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span> </div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>};</div>
+</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span> </div>
+<div class="foldopen" id="foldopen00022" data-start="{" data-end="};">
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"><a class="line" href="class_i_visitable.html">   22</a></span><span class="keyword">class </span><a class="code hl_class" href="class_i_visitable.html">IVisitable</a> {</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>    <span class="keyword">virtual</span> std::unique_ptr&lt;IGameEvent&gt; accept(<a class="code hl_class" href="class_i_visitor.html">IVisitor</a>* ptr_visitor) = 0;</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>};</div>
+</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span></div>
+<div class="foldopen" id="foldopen00031" data-start="{" data-end="};">
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"><a class="line" href="class_i_entity.html">   31</a></span><span class="keyword">class </span><a class="code hl_class" href="class_i_entity.html">IEntity</a>: <span class="keyword">public</span> <a class="code hl_struct" href="struct_i_preparable.html">IPreparable</a> {</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>    <span class="keywordtype">void</span> set_location(<a class="code hl_class" href="class_room.html">Room</a>* ptr_room);</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>    <a class="code hl_class" href="class_room.html">Room</a>* get_location() { <span class="keywordflow">return</span> m_ptr_room; }</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span><span class="keyword">protected</span>:</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>    <a class="code hl_class" href="class_room.html">Room</a>* m_ptr_room;</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>};</div>
+</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span></div>
+<div class="foldopen" id="foldopen00043" data-start="{" data-end="};">
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"><a class="line" href="struct_i_static_entity.html">   43</a></span><span class="keyword">struct </span><a class="code hl_struct" href="struct_i_static_entity.html">IStaticEntity</a> : <a class="code hl_class" href="class_i_entity.html">IEntity</a>, <a class="code hl_class" href="class_i_visitable.html">IVisitable</a> {</div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span>    <span class="keyword">virtual</span> std::unique_ptr&lt;IStaticEntity&gt; clone() <span class="keyword">const</span> = 0;</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span>};</div>
+</div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span></div>
+<div class="foldopen" id="foldopen00053" data-start="{" data-end="};">
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"><a class="line" href="struct_i_dynamic_entity.html">   53</a></span><span class="keyword">struct </span><a class="code hl_struct" href="struct_i_dynamic_entity.html">IDynamicEntity</a> : <a class="code hl_class" href="class_i_entity.html">IEntity</a>, <a class="code hl_class" href="class_i_visitable.html">IVisitable</a> {</div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span>    <span class="keyword">virtual</span> <span class="keywordtype">void</span> action() = 0;</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span>    <span class="keyword">virtual</span> std::unique_ptr&lt;IDynamicEntity&gt; clone() <span class="keyword">const</span> = 0;</div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span>};</div>
+</div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span></div>
+<div class="foldopen" id="foldopen00062" data-start="{" data-end="};">
+<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"><a class="line" href="class_enemy.html">   62</a></span><span class="keyword">class </span>Enemy : <span class="keyword">public</span> <a class="code hl_struct" href="struct_i_dynamic_entity.html">IDynamicEntity</a> {</div>
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno">   63</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno">   64</span>    Enemy();</div>
+<div class="line"><a id="l00065" name="l00065"></a><span class="lineno">   65</span>    <span class="keywordtype">void</span> draw_into(sf::RenderWindow&amp; window) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00066" name="l00066"></a><span class="lineno">   66</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_enemy.html#a34d900423f808c057a766daca104c6f6">action</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00067" name="l00067"></a><span class="lineno">   67</span>    <span class="keywordtype">void</span> prepare_for_drawing() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00068" name="l00068"></a><span class="lineno">   68</span>    <span class="keywordtype">void</span> set_texture(<a class="code hl_class" href="class_my_texture.html">MyTexture</a>* ptr_texture)  { m_ptr_texture = ptr_texture; }</div>
+<div class="line"><a id="l00069" name="l00069"></a><span class="lineno">   69</span>    std::unique_ptr&lt;IDynamicEntity&gt; <a class="code hl_function" href="class_enemy.html#aae122c696ec1c65f90d7625683183a67">clone</a>() <span class="keyword">const override</span>;</div>
+<div class="line"><a id="l00070" name="l00070"></a><span class="lineno">   70</span>    std::unique_ptr&lt;IGameEvent&gt; <a class="code hl_function" href="class_enemy.html#a12c591e7c61ccafe8f0c0a5727434d2f">accept</a>(<a class="code hl_class" href="class_i_visitor.html">IVisitor</a>* ptr_visitor) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00071" name="l00071"></a><span class="lineno">   71</span>    ~Enemy() <span class="keyword">override</span> = <span class="keywordflow">default</span>;</div>
+<div class="line"><a id="l00072" name="l00072"></a><span class="lineno">   72</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00073" name="l00073"></a><span class="lineno">   73</span>    <a class="code hl_class" href="class_my_texture.html">MyTexture</a>* m_ptr_texture;</div>
+<div class="line"><a id="l00074" name="l00074"></a><span class="lineno">   74</span>    sf::Sprite m_sprite;</div>
+<div class="line"><a id="l00075" name="l00075"></a><span class="lineno">   75</span>    sf::Clock m_clock;</div>
+<div class="line"><a id="l00076" name="l00076"></a><span class="lineno">   76</span>};</div>
+</div>
+<div class="line"><a id="l00077" name="l00077"></a><span class="lineno">   77</span></div>
+<div class="foldopen" id="foldopen00081" data-start="{" data-end="};">
+<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"><a class="line" href="class_food.html">   81</a></span><span class="keyword">class </span><a class="code hl_function" href="class_food.html#a75d4d7f76fd495cc8133302ca9fdc485">Food</a>: <span class="keyword">public</span> <a class="code hl_struct" href="struct_i_static_entity.html">IStaticEntity</a>{</div>
+<div class="line"><a id="l00082" name="l00082"></a><span class="lineno">   82</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00083" name="l00083"></a><span class="lineno">   83</span>    <a class="code hl_function" href="class_food.html#a75d4d7f76fd495cc8133302ca9fdc485">Food</a>();</div>
+<div class="line"><a id="l00084" name="l00084"></a><span class="lineno">   84</span>    <a class="code hl_function" href="class_food.html#a75d4d7f76fd495cc8133302ca9fdc485">~Food</a>()<span class="keyword"> override </span>{};</div>
+<div class="line"><a id="l00085" name="l00085"></a><span class="lineno">   85</span>    <span class="keywordtype">void</span> draw_into(sf::RenderWindow&amp; window) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00086" name="l00086"></a><span class="lineno">   86</span>    <span class="keywordtype">void</span> prepare_for_drawing() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00087" name="l00087"></a><span class="lineno">   87</span>    <span class="keywordtype">void</span> set_texture(<a class="code hl_class" href="class_my_texture.html">MyTexture</a>* ptr_texture) { m_ptr_texture = ptr_texture; }</div>
+<div class="line"><a id="l00088" name="l00088"></a><span class="lineno">   88</span>    std::unique_ptr&lt;IStaticEntity&gt;  <a class="code hl_function" href="class_food.html#a3363e490287b67049c6771f56911d582">clone</a>() <span class="keyword">const override</span>;</div>
+<div class="line"><a id="l00089" name="l00089"></a><span class="lineno">   89</span>    std::unique_ptr&lt;IGameEvent&gt; <a class="code hl_function" href="class_food.html#a66afb32708f97daf5bca2fae17ca3ad2">accept</a>(<a class="code hl_class" href="class_i_visitor.html">IVisitor</a>* ptr_visitor) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00090" name="l00090"></a><span class="lineno">   90</span>    <span class="keywordtype">bool</span> is_screamer = <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00091" name="l00091"></a><span class="lineno">   91</span> </div>
+<div class="line"><a id="l00092" name="l00092"></a><span class="lineno">   92</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00093" name="l00093"></a><span class="lineno">   93</span>    <a class="code hl_class" href="class_my_texture.html">MyTexture</a>* m_ptr_texture;</div>
+<div class="line"><a id="l00094" name="l00094"></a><span class="lineno">   94</span>    sf::Sprite m_sprite;</div>
+<div class="line"><a id="l00095" name="l00095"></a><span class="lineno">   95</span>};</div>
+</div>
+<div class="ttc" id="aclass_enemy_html"><div class="ttname"><a href="class_enemy.html">Enemy</a></div><div class="ttdoc">Конкретный наследник Enemy - враг. Если пакман наткнется хотя бы на одного врага, то он умрет -&gt; уров...</div><div class="ttdef"><b>Определения</b> IEntity.h:62</div></div>
+<div class="ttc" id="aclass_enemy_html_a12c591e7c61ccafe8f0c0a5727434d2f"><div class="ttname"><a href="class_enemy.html#a12c591e7c61ccafe8f0c0a5727434d2f">Enemy::accept</a></div><div class="ttdeci">std::unique_ptr&lt; IGameEvent &gt; accept(IVisitor *ptr_visitor) override</div><div class="ttdef"><b>Определения</b> IEntity.cpp:25</div></div>
+<div class="ttc" id="aclass_enemy_html_a34d900423f808c057a766daca104c6f6"><div class="ttname"><a href="class_enemy.html#a34d900423f808c057a766daca104c6f6">Enemy::action</a></div><div class="ttdeci">void action() override</div><div class="ttdoc">Перемещение врагов в случайном направлении через случайный промежуток времени, ограниченный диапозоно...</div><div class="ttdef"><b>Определения</b> IEntity.cpp:61</div></div>
+<div class="ttc" id="aclass_enemy_html_aae122c696ec1c65f90d7625683183a67"><div class="ttname"><a href="class_enemy.html#aae122c696ec1c65f90d7625683183a67">Enemy::clone</a></div><div class="ttdeci">std::unique_ptr&lt; IDynamicEntity &gt; clone() const override</div><div class="ttdef"><b>Определения</b> IEntity.cpp:44</div></div>
+<div class="ttc" id="aclass_food_html"><div class="ttname"><a href="class_food.html">Food</a></div><div class="ttdoc">Наследник IStaticEntity - еда.</div><div class="ttdef"><b>Определения</b> IEntity.h:81</div></div>
+<div class="ttc" id="aclass_food_html_a3363e490287b67049c6771f56911d582"><div class="ttname"><a href="class_food.html#a3363e490287b67049c6771f56911d582">Food::clone</a></div><div class="ttdeci">std::unique_ptr&lt; IStaticEntity &gt; clone() const override</div><div class="ttdef"><b>Определения</b> IEntity.cpp:15</div></div>
+<div class="ttc" id="aclass_food_html_a66afb32708f97daf5bca2fae17ca3ad2"><div class="ttname"><a href="class_food.html#a66afb32708f97daf5bca2fae17ca3ad2">Food::accept</a></div><div class="ttdeci">std::unique_ptr&lt; IGameEvent &gt; accept(IVisitor *ptr_visitor) override</div><div class="ttdef"><b>Определения</b> IEntity.cpp:29</div></div>
+<div class="ttc" id="aclass_food_html_a75d4d7f76fd495cc8133302ca9fdc485"><div class="ttname"><a href="class_food.html#a75d4d7f76fd495cc8133302ca9fdc485">Food::Food</a></div><div class="ttdeci">Food()</div><div class="ttdef"><b>Определения</b> IEntity.cpp:10</div></div>
+<div class="ttc" id="aclass_i_entity_html"><div class="ttname"><a href="class_i_entity.html">IEntity</a></div><div class="ttdoc">IEntity любая сущность, которая может быть помощена в лабиринт.</div><div class="ttdef"><b>Определения</b> IEntity.h:31</div></div>
+<div class="ttc" id="aclass_i_visitable_html"><div class="ttname"><a href="class_i_visitable.html">IVisitable</a></div><div class="ttdef"><b>Определения</b> IEntity.h:22</div></div>
+<div class="ttc" id="aclass_i_visitor_html"><div class="ttname"><a href="class_i_visitor.html">IVisitor</a></div><div class="ttdoc">Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: IVisitor (посетит...</div><div class="ttdef"><b>Определения</b> IEntity.h:15</div></div>
+<div class="ttc" id="aclass_my_texture_html"><div class="ttname"><a href="class_my_texture.html">MyTexture</a></div><div class="ttdef"><b>Определения</b> MyTexture.h:5</div></div>
+<div class="ttc" id="aclass_room_html"><div class="ttname"><a href="class_room.html">Room</a></div><div class="ttdef"><b>Определения</b> Maze.h:13</div></div>
+<div class="ttc" id="astruct_i_dynamic_entity_html"><div class="ttname"><a href="struct_i_dynamic_entity.html">IDynamicEntity</a></div><div class="ttdoc">Динамические сущности, наследник IEntity -&gt; может выполнять какие-то действия</div><div class="ttdef"><b>Определения</b> IEntity.h:53</div></div>
+<div class="ttc" id="astruct_i_preparable_html"><div class="ttname"><a href="struct_i_preparable.html">IPreparable</a></div><div class="ttdef"><b>Определения</b> IDrawable.h:13</div></div>
+<div class="ttc" id="astruct_i_static_entity_html"><div class="ttname"><a href="struct_i_static_entity.html">IStaticEntity</a></div><div class="ttdoc">Статические сущности, наследник IEntity -&gt; неперемещаемые объекты, с которыми будет взаимодействовать...</div><div class="ttdef"><b>Определения</b> IEntity.h:43</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_0620867b96a9d6681889b0cd51382a82.html">Drawable</a></li><li class="navelem"><a class="el" href="dir_36512145787243429e2d8387a78e16b9.html">Entity</a></li><li class="navelem"><b>IEntity.h</b></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/_i_game_builder_8h_source.html b/assets/docs/html/_i_game_builder_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..f2beae902a24d576f92a8d4a954b86e1a12c07fa
--- /dev/null
+++ b/assets/docs/html/_i_game_builder_8h_source.html
@@ -0,0 +1,136 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Исходный файл source/application/BobBuilder/IGameBuilder.h</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('_i_game_builder_8h_source.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">IGameBuilder.h</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;../State/IState.h&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;../State/GameState.h&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span> </div>
+<div class="foldopen" id="foldopen00005" data-start="{" data-end="};">
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"><a class="line" href="class_i_game_builder.html">    5</a></span><span class="keyword">class </span><a class="code hl_class" href="class_i_game_builder.html">IGameBuilder</a> {</div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span>    <span class="keyword">virtual</span> <span class="keywordtype">void</span> create_rooms() = 0;</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span>    <span class="keyword">virtual</span> <span class="keywordtype">void</span> set_rooms_sides() = 0;</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>    <span class="keyword">virtual</span> <span class="keywordtype">void</span> create_context(<span class="keywordtype">float</span> dynamic_objects_ratio, <span class="keywordtype">int</span> players) = 0;</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    <span class="keyword">virtual</span> <span class="keywordtype">void</span> create_state(<a class="code hl_struct" href="struct_i_state_manager.html">IStateManager</a>&amp; state_manager, <span class="keyword">const</span> sf::VideoMode&amp; mode, <span class="keyword">const</span> std::string&amp; window_title) = 0;</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    <span class="keyword">virtual</span> <span class="keywordtype">void</span> set_all_to_state() = 0;</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    <span class="keyword">virtual</span> std::unique_ptr&lt;GameState&gt; get_game() = 0;</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    <span class="keyword">virtual</span> <a class="code hl_class" href="class_i_game_builder.html">~IGameBuilder</a>() = <span class="keywordflow">default</span>;</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>};</div>
+</div>
+<div class="ttc" id="aclass_i_game_builder_html"><div class="ttname"><a href="class_i_game_builder.html">IGameBuilder</a></div><div class="ttdef"><b>Определения</b> IGameBuilder.h:5</div></div>
+<div class="ttc" id="astruct_i_state_manager_html"><div class="ttname"><a href="struct_i_state_manager.html">IStateManager</a></div><div class="ttdef"><b>Определения</b> IState.h:31</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.html">BobBuilder</a></li><li class="navelem"><b>IGameBuilder.h</b></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/_i_game_event_8h_source.html b/assets/docs/html/_i_game_event_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..d078c9b67ebbb01edc767810943539a79e5298e5
--- /dev/null
+++ b/assets/docs/html/_i_game_event_8h_source.html
@@ -0,0 +1,197 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Исходный файл source/application/Event/IGameEvent.h</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('_i_game_event_8h_source.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">IGameEvent.h</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span> </div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &lt;iostream&gt;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &lt;list&gt;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &quot;SFML/Audio/Sound.hpp&quot;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#include &quot;../Drawable/Entity/IObserver.h&quot;</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span> </div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="keyword">class </span><a class="code hl_struct" href="struct_game_context.html">GameContext</a>;</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="keyword">class </span><a class="code hl_struct" href="struct_i_static_entity.html">IStaticEntity</a>;</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span></div>
+<div class="foldopen" id="foldopen00015" data-start="{" data-end="};">
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"><a class="line" href="class_i_game_event.html">   15</a></span><span class="keyword">class </span><a class="code hl_class" href="class_i_game_event.html">IGameEvent</a> {</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    <span class="keyword">virtual</span> <span class="keywordtype">void</span> handle(<a class="code hl_struct" href="struct_game_context.html">GameContext</a>* context) = 0; </div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"><a class="line" href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">   18</a></span>    <span class="keyword">virtual</span> <a class="code hl_function" href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">~IGameEvent</a>() = <span class="keywordflow">default</span>;</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    <span class="keywordtype">void</span> add_observer(<a class="code hl_class" href="class_i_observer.html">IObserver</a>* observer);</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span> </div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span><span class="keyword">protected</span>:</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    <span class="keywordtype">void</span> notify() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span> </div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>    std::vector&lt;IObserver*&gt; m_observers;</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span> </div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>};</div>
+</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span></div>
+<div class="foldopen" id="foldopen00032" data-start="{" data-end="};">
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"><a class="line" href="class_win_game.html">   32</a></span><span class="keyword">class </span><a class="code hl_class" href="class_win_game.html">WinGame</a> : <span class="keyword">public</span> <a class="code hl_class" href="class_i_game_event.html">IGameEvent</a> {</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>    <span class="keywordtype">void</span> handle(<a class="code hl_struct" href="struct_game_context.html">GameContext</a>* context) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>};</div>
+</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span></div>
+<div class="foldopen" id="foldopen00041" data-start="{" data-end="};">
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"><a class="line" href="class_lost_game.html">   41</a></span><span class="keyword">class </span><a class="code hl_class" href="class_lost_game.html">LostGame</a> : <span class="keyword">public</span> <a class="code hl_class" href="class_i_game_event.html">IGameEvent</a> {</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span>    <span class="keywordtype">void</span> handle(<a class="code hl_struct" href="struct_game_context.html">GameContext</a>* context) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span>};</div>
+</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span></div>
+<div class="foldopen" id="foldopen00051" data-start="{" data-end="};">
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"><a class="line" href="class_delete_static_entity.html">   51</a></span><span class="keyword">class </span>DeleteStaticEntity : <span class="keyword">public</span> <a class="code hl_class" href="class_i_game_event.html">IGameEvent</a> {</div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span>    DeleteStaticEntity(<a class="code hl_struct" href="struct_i_static_entity.html">IStaticEntity</a>* ptr_entity);</div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_delete_static_entity.html#aadc4bbbd570e947fca78e222dbfacb43">handle</a>(<a class="code hl_struct" href="struct_game_context.html">GameContext</a>* context) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span>    <a class="code hl_struct" href="struct_i_static_entity.html">IStaticEntity</a>* m_ptr_entity;</div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>};</div>
+</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span></div>
+<div class="foldopen" id="foldopen00063" data-start="{" data-end="};">
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"><a class="line" href="struct_screamer_event.html">   63</a></span><span class="keyword">struct </span><a class="code hl_struct" href="struct_screamer_event.html">ScreamerEvent</a> : <span class="keyword">public</span> <a class="code hl_class" href="class_i_game_event.html">IGameEvent</a> {</div>
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno">   64</span>    <span class="keywordtype">void</span> handle(<a class="code hl_struct" href="struct_game_context.html">GameContext</a>* context) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00065" name="l00065"></a><span class="lineno">   65</span>    sf::Sound m_sound;</div>
+<div class="line"><a id="l00066" name="l00066"></a><span class="lineno">   66</span>};</div>
+</div>
+<div class="line"><a id="l00067" name="l00067"></a><span class="lineno">   67</span></div>
+<div class="foldopen" id="foldopen00072" data-start="{" data-end="};">
+<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"><a class="line" href="class_screamer_composite_event.html">   72</a></span><span class="keyword">class </span>ScreamerCompositeEvent : <span class="keyword">public</span> <a class="code hl_class" href="class_i_game_event.html">IGameEvent</a> {</div>
+<div class="line"><a id="l00073" name="l00073"></a><span class="lineno">   73</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00074" name="l00074"></a><span class="lineno">   74</span>    ScreamerCompositeEvent(<a class="code hl_struct" href="struct_i_static_entity.html">IStaticEntity</a>* food) : m_food(food) {}</div>
+<div class="line"><a id="l00075" name="l00075"></a><span class="lineno">   75</span>    <span class="keywordtype">void</span> handle(<a class="code hl_struct" href="struct_game_context.html">GameContext</a>* context)<span class="keyword"> override </span>{</div>
+<div class="line"><a id="l00076" name="l00076"></a><span class="lineno">   76</span>        <a class="code hl_class" href="class_delete_static_entity.html">DeleteStaticEntity</a>(m_food).<a class="code hl_function" href="class_delete_static_entity.html#aadc4bbbd570e947fca78e222dbfacb43">handle</a>(context);</div>
+<div class="line"><a id="l00077" name="l00077"></a><span class="lineno">   77</span>        <a class="code hl_struct" href="struct_screamer_event.html">ScreamerEvent</a>().handle(context);</div>
+<div class="line"><a id="l00078" name="l00078"></a><span class="lineno">   78</span>    }</div>
+<div class="line"><a id="l00079" name="l00079"></a><span class="lineno">   79</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00080" name="l00080"></a><span class="lineno">   80</span>    <a class="code hl_struct" href="struct_i_static_entity.html">IStaticEntity</a>* m_food;</div>
+<div class="line"><a id="l00081" name="l00081"></a><span class="lineno">   81</span>};</div>
+</div>
+<div class="ttc" id="aclass_delete_static_entity_html"><div class="ttname"><a href="class_delete_static_entity.html">DeleteStaticEntity</a></div><div class="ttdoc">Удаление еды.</div><div class="ttdef"><b>Определения</b> IGameEvent.h:51</div></div>
+<div class="ttc" id="aclass_delete_static_entity_html_aadc4bbbd570e947fca78e222dbfacb43"><div class="ttname"><a href="class_delete_static_entity.html#aadc4bbbd570e947fca78e222dbfacb43">DeleteStaticEntity::handle</a></div><div class="ttdeci">void handle(GameContext *context) override</div><div class="ttdef"><b>Определения</b> IGameEvent.cpp:18</div></div>
+<div class="ttc" id="aclass_i_game_event_html"><div class="ttname"><a href="class_i_game_event.html">IGameEvent</a></div><div class="ttdoc">Абстрактрый класс для различных игровых событий</div><div class="ttdef"><b>Определения</b> IGameEvent.h:15</div></div>
+<div class="ttc" id="aclass_i_game_event_html_ae84f5f2b3d3bd7834e334c4e6fcde711"><div class="ttname"><a href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">IGameEvent::~IGameEvent</a></div><div class="ttdeci">virtual ~IGameEvent()=default</div></div>
+<div class="ttc" id="aclass_i_observer_html"><div class="ttname"><a href="class_i_observer.html">IObserver</a></div><div class="ttdoc">Паттерн Observer. Общий интерфейс для наблюдателей</div><div class="ttdef"><b>Определения</b> IObserver.h:7</div></div>
+<div class="ttc" id="aclass_lost_game_html"><div class="ttname"><a href="class_lost_game.html">LostGame</a></div><div class="ttdef"><b>Определения</b> IGameEvent.h:41</div></div>
+<div class="ttc" id="aclass_win_game_html"><div class="ttname"><a href="class_win_game.html">WinGame</a></div><div class="ttdef"><b>Определения</b> IGameEvent.h:32</div></div>
+<div class="ttc" id="astruct_game_context_html"><div class="ttname"><a href="struct_game_context.html">GameContext</a></div><div class="ttdoc">Контекст игры. Тут хранится состояние всего того, что происходит в лабиринте</div><div class="ttdef"><b>Определения</b> Context.h:14</div></div>
+<div class="ttc" id="astruct_i_static_entity_html"><div class="ttname"><a href="struct_i_static_entity.html">IStaticEntity</a></div><div class="ttdoc">Статические сущности, наследник IEntity -&gt; неперемещаемые объекты, с которыми будет взаимодействовать...</div><div class="ttdef"><b>Определения</b> IEntity.h:43</div></div>
+<div class="ttc" id="astruct_screamer_event_html"><div class="ttname"><a href="struct_screamer_event.html">ScreamerEvent</a></div><div class="ttdoc">Скример</div><div class="ttdef"><b>Определения</b> IGameEvent.h:63</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_35461bf8feb23080c5804a15bfe2f4aa.html">Event</a></li><li class="navelem"><b>IGameEvent.h</b></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/_i_observer_8h_source.html b/assets/docs/html/_i_observer_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..4126202ebe896c76b5025a2a718259e15681838f
--- /dev/null
+++ b/assets/docs/html/_i_observer_8h_source.html
@@ -0,0 +1,148 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Исходный файл source/application/Drawable/Entity/IObserver.h</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('_i_observer_8h_source.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">IObserver.h</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span> </div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="keyword">class </span><a class="code hl_class" href="class_i_game_event.html">IGameEvent</a>;</div>
+<div class="foldopen" id="foldopen00007" data-start="{" data-end="};">
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"><a class="line" href="class_i_observer.html">    7</a></span><span class="keyword">class </span><a class="code hl_class" href="class_i_observer.html">IObserver</a> {</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>    <span class="keyword">virtual</span> <a class="code hl_class" href="class_i_observer.html">~IObserver</a>() = <span class="keywordflow">default</span>;</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    <span class="keyword">virtual</span> <span class="keywordtype">void</span> on_notify(<span class="keyword">const</span> <a class="code hl_class" href="class_i_game_event.html">IGameEvent</a>&amp; event) = 0;</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>};</div>
+</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span></div>
+<div class="foldopen" id="foldopen00016" data-start="{" data-end="};">
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"><a class="line" href="class_score_count.html">   16</a></span><span class="keyword">class </span>ScoreCount : <span class="keyword">public</span> <a class="code hl_class" href="class_i_observer.html">IObserver</a> {</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    ScoreCount(<span class="keywordtype">int</span> player) : m_player(player), m_active(player != 0) {}</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_score_count.html#ac3920f1272e0d1df949eea48b04896c1">on_notify</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_i_game_event.html">IGameEvent</a>&amp; event) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    <span class="keywordtype">bool</span> is_active()<span class="keyword"> const </span>{<span class="keywordflow">return</span> m_active; }</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    <span class="keywordtype">int</span> get_player_one()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_player_one_food; }</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    <span class="keywordtype">int</span> get_player_two()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_player_two_food; }</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span> </div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>    <span class="keywordtype">bool</span> m_active = <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>    <span class="keywordtype">int</span> m_player_one_food{0};</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>    <span class="keywordtype">int</span> m_player_two_food{0};</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span>    <span class="keywordtype">int</span> m_player;</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>};</div>
+</div>
+<div class="ttc" id="aclass_i_game_event_html"><div class="ttname"><a href="class_i_game_event.html">IGameEvent</a></div><div class="ttdoc">Абстрактрый класс для различных игровых событий</div><div class="ttdef"><b>Определения</b> IGameEvent.h:15</div></div>
+<div class="ttc" id="aclass_i_observer_html"><div class="ttname"><a href="class_i_observer.html">IObserver</a></div><div class="ttdoc">Паттерн Observer. Общий интерфейс для наблюдателей</div><div class="ttdef"><b>Определения</b> IObserver.h:7</div></div>
+<div class="ttc" id="aclass_score_count_html_ac3920f1272e0d1df949eea48b04896c1"><div class="ttname"><a href="class_score_count.html#ac3920f1272e0d1df949eea48b04896c1">ScoreCount::on_notify</a></div><div class="ttdeci">void on_notify(const IGameEvent &amp;event) override</div><div class="ttdef"><b>Определения</b> IObserver.cpp:5</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_0620867b96a9d6681889b0cd51382a82.html">Drawable</a></li><li class="navelem"><a class="el" href="dir_36512145787243429e2d8387a78e16b9.html">Entity</a></li><li class="navelem"><b>IObserver.h</b></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/_i_select_command_8h_source.html b/assets/docs/html/_i_select_command_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..71b6a3f3ee61f78a616e695ba6dd047f94800946
--- /dev/null
+++ b/assets/docs/html/_i_select_command_8h_source.html
@@ -0,0 +1,168 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Исходный файл source/application/SelectCommand/ISelectCommand.h</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('_i_select_command_8h_source.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">ISelectCommand.h</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;../State/IState.h&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;../BobBuilder/BobBuilderDirector.h&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span> </div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &lt;memory&gt;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span> </div>
+<div class="foldopen" id="foldopen00007" data-start="{" data-end="};">
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"><a class="line" href="class_i_select_command.html">    7</a></span><span class="keyword">class </span><a class="code hl_class" href="class_i_select_command.html">ISelectCommand</a> {</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>    <span class="keyword">virtual</span> <a class="code hl_class" href="class_i_select_command.html">~ISelectCommand</a>() = <span class="keywordflow">default</span>;</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    <span class="keyword">virtual</span> <span class="keywordtype">void</span> execute() = 0;</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>};</div>
+</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span> </div>
+<div class="foldopen" id="foldopen00013" data-start="{" data-end="};">
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"><a class="line" href="class_change_state_command.html">   13</a></span><span class="keyword">class </span>ChangeStateCommand : <span class="keyword">public</span> <a class="code hl_class" href="class_i_select_command.html">ISelectCommand</a> {</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    <span class="keyword">explicit</span> ChangeStateCommand(<a class="code hl_struct" href="struct_i_state_manager.html">IStateManager</a>&amp; state_manager) : m_state_manager(state_manager) {}</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span><span class="keyword">protected</span>:</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    <a class="code hl_struct" href="struct_i_state_manager.html">IStateManager</a>&amp; m_state_manager;</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>};</div>
+</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span> </div>
+<div class="foldopen" id="foldopen00020" data-start="{" data-end="};">
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"><a class="line" href="class_exit_command.html">   20</a></span><span class="keyword">class </span>ExitCommand : <span class="keyword">public</span> ChangeStateCommand {</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    <span class="keyword">explicit</span> ExitCommand(<a class="code hl_struct" href="struct_i_state_manager.html">IStateManager</a>&amp; state_manager) : ChangeStateCommand(state_manager) {}</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>    <span class="keywordtype">void</span> execute()<span class="keyword"> override </span>{</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>        m_state_manager.set_next_state(std::make_unique&lt;ExitState&gt;(m_state_manager));</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>    }</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>};</div>
+</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span> </div>
+<div class="foldopen" id="foldopen00028" data-start="{" data-end="};">
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"><a class="line" href="class_game_command.html">   28</a></span><span class="keyword">class </span>GameCommand: <span class="keyword">public</span> ChangeStateCommand {</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>    GameCommand(<a class="code hl_struct" href="struct_i_state_manager.html">IStateManager</a>&amp; state_manager, std::unique_ptr&lt;GameBuilderDirector&gt;&amp; ptr_director, <span class="keywordtype">int</span> players) :</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>            ChangeStateCommand(state_manager), m_ptr_director(std::move(ptr_director)), m_players(players) {};</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>    <span class="keywordtype">void</span> execute()<span class="keyword"> override </span>{</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>        <span class="keyword">auto</span> state = m_ptr_director-&gt;build(m_state_manager, m_players);</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>        m_state_manager.set_next_state(std::move(state));</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>    };</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span> </div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span>    <span class="keywordtype">int</span> m_players;</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>    std::unique_ptr&lt;GameBuilderDirector&gt; m_ptr_director;</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>};</div>
+</div>
+<div class="ttc" id="aclass_i_select_command_html"><div class="ttname"><a href="class_i_select_command.html">ISelectCommand</a></div><div class="ttdef"><b>Определения</b> ISelectCommand.h:7</div></div>
+<div class="ttc" id="astruct_i_state_manager_html"><div class="ttname"><a href="struct_i_state_manager.html">IStateManager</a></div><div class="ttdef"><b>Определения</b> IState.h:31</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_dd6fd865ae52f5fee8c57e83b77289db.html">SelectCommand</a></li><li class="navelem"><b>ISelectCommand.h</b></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/_i_state_8h_source.html b/assets/docs/html/_i_state_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..2919f7a4eb1db3c06396073210bec43f44c12c80
--- /dev/null
+++ b/assets/docs/html/_i_state_8h_source.html
@@ -0,0 +1,153 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Исходный файл source/application/State/IState.h</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('_i_state_8h_source.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">IState.h</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span> </div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;IWindowKeeper.h&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span> </div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &lt;memory&gt;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#include &lt;iostream&gt;</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span> </div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="keyword">class </span><a class="code hl_struct" href="struct_i_state_manager.html">IStateManager</a>;</div>
+<div class="foldopen" id="foldopen00012" data-start="{" data-end="};">
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"><a class="line" href="class_i_state.html">   12</a></span><span class="keyword">class </span>IState {</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    <span class="keyword">explicit</span> IState(<a class="code hl_struct" href="struct_i_state_manager.html">IStateManager</a>&amp; state_manager) : m_state_manager(state_manager) {}</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    <span class="keyword">virtual</span> ~IState() = <span class="keywordflow">default</span>;</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    <span class="keyword">virtual</span> <span class="keywordtype">bool</span> do_step() = 0;</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span><span class="keyword">protected</span>:</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    <a class="code hl_struct" href="struct_i_state_manager.html">IStateManager</a>&amp; m_state_manager;</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>};</div>
+</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span></div>
+<div class="foldopen" id="foldopen00025" data-start="{" data-end="};">
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"><a class="line" href="class_exit_state.html">   25</a></span><span class="keyword">class </span>ExitState: <span class="keyword">public</span> IState {</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>    <span class="keyword">explicit</span> ExitState(<a class="code hl_struct" href="struct_i_state_manager.html">IStateManager</a>&amp; state_manager) : IState(state_manager) {}</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span>    <span class="keywordtype">bool</span> do_step()<span class="keyword"> override </span>{<span class="keywordflow">return</span> <span class="keyword">false</span>; }</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>};</div>
+</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span> </div>
+<div class="foldopen" id="foldopen00031" data-start="{" data-end="};">
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"><a class="line" href="struct_i_state_manager.html">   31</a></span><span class="keyword">struct </span><a class="code hl_struct" href="struct_i_state_manager.html">IStateManager</a> {</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>    <span class="keyword">virtual</span> <span class="keywordtype">void</span> set_next_state(std::unique_ptr&lt;IState&gt;&amp;&amp;  state) = 0;</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>    <span class="keyword">virtual</span> <a class="code hl_struct" href="struct_i_state_manager.html">~IStateManager</a>() = <span class="keywordflow">default</span>;</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>};</div>
+</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span> </div>
+<div class="ttc" id="astruct_i_state_manager_html"><div class="ttname"><a href="struct_i_state_manager.html">IStateManager</a></div><div class="ttdef"><b>Определения</b> IState.h:31</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_eb37150066857c324af7acaa5f9b7e6c.html">State</a></li><li class="navelem"><b>IState.h</b></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/_i_window_keeper_8h_source.html b/assets/docs/html/_i_window_keeper_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..9430941f4725fed796f9bd086161dec9981ecf8d
--- /dev/null
+++ b/assets/docs/html/_i_window_keeper_8h_source.html
@@ -0,0 +1,139 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Исходный файл source/application/State/IWindowKeeper.h</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('_i_window_keeper_8h_source.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">IWindowKeeper.h</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;SFML/Graphics.hpp&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span></div>
+<div class="foldopen" id="foldopen00007" data-start="{" data-end="};">
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"><a class="line" href="class_i_window_keeper.html">    7</a></span><span class="keyword">class </span>IWindowKeeper {</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>    IWindowKeeper(<span class="keyword">const</span> sf::VideoMode&amp; video_mode, <span class="keyword">const</span> std::string&amp; window_title);</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    <span class="keyword">virtual</span> ~IWindowKeeper() = <span class="keywordflow">default</span>;</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span> </div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span><span class="keyword">protected</span>:</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    <span class="keyword">virtual</span> <span class="keywordtype">void</span> event_handling() = 0; </div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"><a class="line" href="class_i_window_keeper.html#a46683ebaa51a36a8bb6bb22ed12b83b7">   14</a></span>    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code hl_function" href="class_i_window_keeper.html#a46683ebaa51a36a8bb6bb22ed12b83b7">update</a>() = 0; </div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"><a class="line" href="class_i_window_keeper.html#a973ef4befa8fd3b1fbb7e05a2c5904da">   15</a></span>    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code hl_function" href="class_i_window_keeper.html#a973ef4befa8fd3b1fbb7e05a2c5904da">render</a>() = 0; </div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span> </div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span><span class="keyword">protected</span>:</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"><a class="line" href="class_i_window_keeper.html#aef0780725b6f210bcbeb3b03da2445b8">   18</a></span>    sf::RenderWindow <a class="code hl_variable" href="class_i_window_keeper.html#aef0780725b6f210bcbeb3b03da2445b8">m_window</a>;</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>};</div>
+</div>
+<div class="ttc" id="aclass_i_window_keeper_html_a46683ebaa51a36a8bb6bb22ed12b83b7"><div class="ttname"><a href="class_i_window_keeper.html#a46683ebaa51a36a8bb6bb22ed12b83b7">IWindowKeeper::update</a></div><div class="ttdeci">virtual void update()=0</div></div>
+<div class="ttc" id="aclass_i_window_keeper_html_a973ef4befa8fd3b1fbb7e05a2c5904da"><div class="ttname"><a href="class_i_window_keeper.html#a973ef4befa8fd3b1fbb7e05a2c5904da">IWindowKeeper::render</a></div><div class="ttdeci">virtual void render()=0</div></div>
+<div class="ttc" id="aclass_i_window_keeper_html_aef0780725b6f210bcbeb3b03da2445b8"><div class="ttname"><a href="class_i_window_keeper.html#aef0780725b6f210bcbeb3b03da2445b8">IWindowKeeper::m_window</a></div><div class="ttdeci">sf::RenderWindow m_window</div><div class="ttdef"><b>Определения</b> IWindowKeeper.h:18</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_eb37150066857c324af7acaa5f9b7e6c.html">State</a></li><li class="navelem"><b>IWindowKeeper.h</b></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/_maze_8h_source.html b/assets/docs/html/_maze_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..9548221aba5b3d5f44064844c4951942f0b5c18b
--- /dev/null
+++ b/assets/docs/html/_maze_8h_source.html
@@ -0,0 +1,192 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Исходный файл source/application/Drawable/Maze/Maze.h</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('_maze_8h_source.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Maze.h</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span> </div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;../IDrawable.h&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;../Entity/IEntity.h&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span> </div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#include &lt;iostream&gt;</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span> </div>
+<div class="foldopen" id="foldopen00008" data-start="{" data-end="};">
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"><a class="line" href="class_i_room_side.html">    8</a></span><span class="keyword">class </span><a class="code hl_class" href="class_i_room_side.html">IRoomSide</a>: <span class="keyword">public</span> <a class="code hl_struct" href="struct_i_preparable.html">IPreparable</a> {</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    <span class="keyword">virtual</span> <span class="keywordtype">void</span> enter(<a class="code hl_class" href="class_i_entity.html">IEntity</a>* entity) = 0;</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>};</div>
+</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span> </div>
+<div class="foldopen" id="foldopen00013" data-start="{" data-end="};">
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"><a class="line" href="class_room.html">   13</a></span><span class="keyword">class </span>Room: <span class="keyword">public</span> <a class="code hl_struct" href="struct_i_drawable.html">IDrawable</a> {</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    <span class="keyword">enum</span> Direction { INVALID = -1, LEFT, RIGHT, UP, DOWN };</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    <span class="keyword">explicit</span> Room(<span class="keywordtype">float</span> size);</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    <span class="keywordtype">float</span> get_size() { <span class="keywordflow">return</span> m_rectangle.getSize().x; }</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    <span class="keywordtype">void</span> set_position(sf::Vector2f pos) { m_rectangle.setPosition(pos); }</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    sf::Vector2f get_position() { <span class="keywordflow">return</span> m_rectangle.getPosition(); }</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    <span class="keywordtype">void</span> set_side(Direction side, std::shared_ptr&lt;IRoomSide&gt; ptr_side);</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    <a class="code hl_class" href="class_i_room_side.html">IRoomSide</a>* get_side(Direction side) { <span class="keywordflow">return</span> m_sides[side].get(); }</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    Direction get_direction(<a class="code hl_class" href="class_i_room_side.html">IRoomSide</a>* ptr_side);</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>    <span class="keywordtype">void</span> draw_into(sf::RenderWindow&amp; m_window) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span> </div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>    std::array&lt;std::shared_ptr&lt;IRoomSide&gt;, 4&gt; m_sides;</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>    sf::RectangleShape m_rectangle;</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span>};</div>
+</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span> </div>
+<div class="foldopen" id="foldopen00030" data-start="{" data-end="};">
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"><a class="line" href="class_maze.html">   30</a></span><span class="keyword">class </span>Maze: <span class="keyword">public</span> <a class="code hl_struct" href="struct_i_drawable.html">IDrawable</a> {</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>    Maze() = <span class="keywordflow">default</span>;</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>    <span class="keyword">explicit</span> Maze(std::vector&lt;Room*&gt;&amp; rooms) : m_rooms(rooms) {};</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>    <span class="keywordtype">void</span> draw_into(sf::RenderWindow&amp; m_window) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>    std::vector&lt;Room*&gt; m_rooms;</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>};</div>
+</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span></div>
+<div class="foldopen" id="foldopen00040" data-start="{" data-end="};">
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"><a class="line" href="class_wall.html">   40</a></span><span class="keyword">class </span>Wall: <span class="keyword">public</span> <a class="code hl_class" href="class_i_room_side.html">IRoomSide</a> {</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>    <span class="keyword">explicit</span> Wall(<a class="code hl_class" href="class_room.html">Room</a>&amp; room) : m_room(room) {};</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span>    <span class="keywordtype">void</span> prepare_for_drawing() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span>    <span class="keywordtype">void</span> draw_into(sf::RenderWindow&amp; m_window) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span>    <span class="keywordtype">void</span> enter(<a class="code hl_class" href="class_i_entity.html">IEntity</a>* entity)<span class="keyword"> override </span>{};</div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>    <a class="code hl_class" href="class_room.html">Room</a>&amp; m_room;</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span>    sf::Vertex m_line[2];</div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span>};</div>
+</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span></div>
+<div class="foldopen" id="foldopen00052" data-start="{" data-end="};">
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"><a class="line" href="class_pass.html">   52</a></span><span class="keyword">class </span>Pass: <span class="keyword">public</span> <a class="code hl_class" href="class_i_room_side.html">IRoomSide</a> {</div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span>    Pass(<a class="code hl_class" href="class_room.html">Room</a>&amp; room1, <a class="code hl_class" href="class_room.html">Room</a>&amp; room2) : m_room1(room1), m_room2(room2) {};</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span>    <span class="keywordtype">void</span> draw_into(sf::RenderWindow&amp; m_window)<span class="keyword"> override </span>{};</div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span>    <span class="keywordtype">void</span> enter(<a class="code hl_class" href="class_i_entity.html">IEntity</a>* entity) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>    <span class="keywordtype">void</span> prepare_for_drawing()<span class="keyword"> override </span>{};</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00059" name="l00059"></a><span class="lineno">   59</span>    <a class="code hl_class" href="class_room.html">Room</a>&amp; m_room1;</div>
+<div class="line"><a id="l00060" name="l00060"></a><span class="lineno">   60</span>    <a class="code hl_class" href="class_room.html">Room</a>&amp; m_room2;</div>
+<div class="line"><a id="l00061" name="l00061"></a><span class="lineno">   61</span>};</div>
+</div>
+<div class="ttc" id="aclass_i_entity_html"><div class="ttname"><a href="class_i_entity.html">IEntity</a></div><div class="ttdoc">IEntity любая сущность, которая может быть помощена в лабиринт.</div><div class="ttdef"><b>Определения</b> IEntity.h:31</div></div>
+<div class="ttc" id="aclass_i_room_side_html"><div class="ttname"><a href="class_i_room_side.html">IRoomSide</a></div><div class="ttdef"><b>Определения</b> Maze.h:8</div></div>
+<div class="ttc" id="aclass_room_html"><div class="ttname"><a href="class_room.html">Room</a></div><div class="ttdef"><b>Определения</b> Maze.h:13</div></div>
+<div class="ttc" id="astruct_i_drawable_html"><div class="ttname"><a href="struct_i_drawable.html">IDrawable</a></div><div class="ttdoc">Общий интерфейс для отрисовываемых сущностей и объектов</div><div class="ttdef"><b>Определения</b> IDrawable.h:8</div></div>
+<div class="ttc" id="astruct_i_preparable_html"><div class="ttname"><a href="struct_i_preparable.html">IPreparable</a></div><div class="ttdef"><b>Определения</b> IDrawable.h:13</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_0620867b96a9d6681889b0cd51382a82.html">Drawable</a></li><li class="navelem"><a class="el" href="dir_dbd25d32f158f8fe0ac7baf637feb24d.html">Maze</a></li><li class="navelem"><b>Maze.h</b></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/_menu_8h_source.html b/assets/docs/html/_menu_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..54a198fd646d17a2e4476fa0e8d025ba12ab4dc0
--- /dev/null
+++ b/assets/docs/html/_menu_8h_source.html
@@ -0,0 +1,152 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Исходный файл source/application/Drawable/DrawMenu/Menu/Menu.h</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('_menu_8h_source.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Menu.h</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;../../../State/IState.h&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;../Button/Button.h&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span> </div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &lt;array&gt;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span> </div>
+<div class="foldopen" id="foldopen00007" data-start="{" data-end="};">
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"><a class="line" href="class_menu.html">    7</a></span><span class="keyword">class </span><a class="code hl_function" href="class_menu.html#aa9374182bab451e7f7bb8cc02b0db0ee">Menu</a> : <span class="keyword">public</span> <a class="code hl_struct" href="struct_i_drawable.html">IDrawable</a> {</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>    <a class="code hl_function" href="class_menu.html#aa9374182bab451e7f7bb8cc02b0db0ee">Menu</a>(<a class="code hl_struct" href="struct_i_state_manager.html">IStateManager</a>&amp; state_manager);</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_menu.html#a4868e5ef14960d420dc79c307d1a78cb">draw_into</a>(sf::RenderWindow&amp; window) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_menu.html#a9174cfc103dba0ee0613196385691872">process_mouse</a>(sf::Vector2f pos, <span class="keywordtype">bool</span> is_pressed);</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span> </div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    sf::RectangleShape m_shape;</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    std::vector&lt;std::unique_ptr&lt;ChooseButton&gt;&gt; m_choose_button;</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    std::vector&lt;std::unique_ptr&lt;ChooseButton&gt;&gt; m_choose_button_players;</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    std::vector&lt;std::unique_ptr&lt;ChooseButton&gt;&gt; m_choose_button_theme;</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    std::unique_ptr&lt;Button&gt; m_proceed_button;</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    std::unique_ptr&lt;Button&gt; m_exit_button;</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    std::vector&lt;std::unique_ptr&lt;GameBuilderDirector&gt;&gt; m_directors;</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    <span class="keywordtype">int</span> m_selected_level = -1;</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    <span class="keywordtype">int</span> m_selected_players = -1;</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>    <span class="keywordtype">int</span> m_selected_theme = 0;</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>    <a class="code hl_struct" href="struct_i_state_manager.html">IStateManager</a>&amp; m_state_manager;</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>    std::vector&lt;std::unique_ptr&lt;Button&gt;&gt; m_buttons;</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span> </div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>};</div>
+</div>
+<div class="ttc" id="aclass_menu_html_a4868e5ef14960d420dc79c307d1a78cb"><div class="ttname"><a href="class_menu.html#a4868e5ef14960d420dc79c307d1a78cb">Menu::draw_into</a></div><div class="ttdeci">void draw_into(sf::RenderWindow &amp;window) override</div><div class="ttdoc">Отрисовка меню.</div><div class="ttdef"><b>Определения</b> Menu.cpp:101</div></div>
+<div class="ttc" id="aclass_menu_html_a9174cfc103dba0ee0613196385691872"><div class="ttname"><a href="class_menu.html#a9174cfc103dba0ee0613196385691872">Menu::process_mouse</a></div><div class="ttdeci">void process_mouse(sf::Vector2f pos, bool is_pressed)</div><div class="ttdef"><b>Определения</b> Menu.cpp:52</div></div>
+<div class="ttc" id="aclass_menu_html_aa9374182bab451e7f7bb8cc02b0db0ee"><div class="ttname"><a href="class_menu.html#aa9374182bab451e7f7bb8cc02b0db0ee">Menu::Menu</a></div><div class="ttdeci">Menu(IStateManager &amp;state_manager)</div><div class="ttdef"><b>Определения</b> Menu.cpp:15</div></div>
+<div class="ttc" id="astruct_i_drawable_html"><div class="ttname"><a href="struct_i_drawable.html">IDrawable</a></div><div class="ttdoc">Общий интерфейс для отрисовываемых сущностей и объектов</div><div class="ttdef"><b>Определения</b> IDrawable.h:8</div></div>
+<div class="ttc" id="astruct_i_state_manager_html"><div class="ttname"><a href="struct_i_state_manager.html">IStateManager</a></div><div class="ttdef"><b>Определения</b> IState.h:31</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_0620867b96a9d6681889b0cd51382a82.html">Drawable</a></li><li class="navelem"><a class="el" href="dir_1ec01c3d118a92a59cb64fdd508b6eff.html">DrawMenu</a></li><li class="navelem"><a class="el" href="dir_a2a010966b562bcf41b620d047d98a69.html">Menu</a></li><li class="navelem"><b>Menu.h</b></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/_menu_in_game_8h_source.html b/assets/docs/html/_menu_in_game_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..c3855a26de8e94bca881113f65c7691eac407295
--- /dev/null
+++ b/assets/docs/html/_menu_in_game_8h_source.html
@@ -0,0 +1,143 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Исходный файл source/application/Drawable/DrawMenu/Menu/MenuInGame.h</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('_menu_in_game_8h_source.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">MenuInGame.h</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &lt;SFML/Graphics.hpp&gt;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;../../Entity/IObserver.h&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span> </div>
+<div class="foldopen" id="foldopen00005" data-start="{" data-end="};">
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"><a class="line" href="class_menu_game.html">    5</a></span><span class="keyword">class </span>MenuGame {</div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span>    MenuGame();</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span>    <span class="keywordtype">void</span> draw_into(sf::RenderWindow &amp;window, <span class="keyword">const</span> <a class="code hl_class" href="class_score_count.html">ScoreCount</a>&amp; scores_one, <span class="keyword">const</span> <a class="code hl_class" href="class_score_count.html">ScoreCount</a>&amp; scores_two);</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>    <span class="keywordtype">void</span> draw_button(sf::RenderWindow &amp;window);</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    <span class="keywordtype">bool</span> is_clicked(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y);</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span> </div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    sf::RenderWindow m_window;</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    sf::RectangleShape m_background;</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    sf::RectangleShape m_button;</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span> </div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    sf::Text m_player_one_score;</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    sf::Text m_player_two_score;</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span> </div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    sf::Texture m_sound_texture;</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    sf::Sprite m_sound_sprite;</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>};</div>
+</div>
+<div class="ttc" id="aclass_score_count_html"><div class="ttname"><a href="class_score_count.html">ScoreCount</a></div><div class="ttdoc">Наблюдатель - счетчик еды. При съедании еды посылается уведомление и наблюдатель увеличивает счетчик ...</div><div class="ttdef"><b>Определения</b> IObserver.h:16</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_0620867b96a9d6681889b0cd51382a82.html">Drawable</a></li><li class="navelem"><a class="el" href="dir_1ec01c3d118a92a59cb64fdd508b6eff.html">DrawMenu</a></li><li class="navelem"><a class="el" href="dir_a2a010966b562bcf41b620d047d98a69.html">Menu</a></li><li class="navelem"><b>MenuInGame.h</b></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/_my_texture_8h_source.html b/assets/docs/html/_my_texture_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..d655813c1f4394656c59e39be9bd0604cf571e74
--- /dev/null
+++ b/assets/docs/html/_my_texture_8h_source.html
@@ -0,0 +1,193 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Исходный файл source/application/Drawable/Entity/MyTexture.h</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('_my_texture_8h_source.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">MyTexture.h</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span> </div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;SFML/Graphics.hpp&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span> </div>
+<div class="foldopen" id="foldopen00005" data-start="{" data-end="};">
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"><a class="line" href="class_my_texture.html">    5</a></span><span class="keyword">class </span>MyTexture {</div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span>    MyTexture() = <span class="keywordflow">default</span>;</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span>    <span class="keyword">enum</span> Direction { UP, DOWN, RIGHT, LEFT };</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>    <span class="keyword">virtual</span> sf::Texture&amp; get_texture() = 0;</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    MyTexture(<span class="keyword">const</span> MyTexture&amp;) = <span class="keyword">delete</span>;</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    MyTexture&amp; operator=(<span class="keyword">const</span> MyTexture&amp;) = <span class="keyword">delete</span>;</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    <span class="keywordtype">void</span> set_direction(Direction direction) { m_direction = direction; }</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span><span class="keyword">protected</span>:</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    Direction m_direction = UP;</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>};</div>
+</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span> </div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span><span class="comment">//texture for Pacman</span></div>
+<div class="foldopen" id="foldopen00018" data-start="{" data-end="};">
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"><a class="line" href="class_pacman_texture.html">   18</a></span><span class="keyword">class </span>PacmanTexture : <span class="keyword">public</span> MyTexture {</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    <span class="keyword">static</span> PacmanTexture&amp; instance() { <span class="keyword">static</span> PacmanTexture instance; <span class="keywordflow">return</span> instance; }</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    sf::Texture&amp; get_texture() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>    PacmanTexture();</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>    sf::Texture m_texture_up, m_texture_down, m_texture_right, m_texture_left;</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>};</div>
+</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span> </div>
+<div class="foldopen" id="foldopen00027" data-start="{" data-end="};">
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"><a class="line" href="class_pacman_texture2.html">   27</a></span><span class="keyword">class </span>PacmanTexture2 : <span class="keyword">public</span> MyTexture {</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>    <span class="keyword">static</span> PacmanTexture2&amp; instance() { <span class="keyword">static</span> PacmanTexture2 instance; <span class="keywordflow">return</span> instance; }</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>    sf::Texture&amp; get_texture() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>    PacmanTexture2();</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>    sf::Texture m_texture_up, m_texture_down, m_texture_right, m_texture_left;</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>};</div>
+</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span> </div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span><span class="comment">//texture for Food</span></div>
+<div class="foldopen" id="foldopen00037" data-start="{" data-end="};">
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"><a class="line" href="class_food_texture.html">   37</a></span><span class="keyword">class </span>FoodTexture : <span class="keyword">public</span> MyTexture {</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>    <span class="keyword">static</span> FoodTexture&amp; instance() { <span class="keyword">static</span> FoodTexture instance; <span class="keywordflow">return</span> instance; }</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>    sf::Texture&amp; get_texture()<span class="keyword"> override </span>{ <span class="keywordflow">return</span> m_texture_food; }</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>    FoodTexture();</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span>    sf::Texture m_texture_food;</div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span>};</div>
+</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span> </div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span><span class="comment">//texture for Enemy</span></div>
+<div class="foldopen" id="foldopen00047" data-start="{" data-end="};">
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"><a class="line" href="class_enemy_texture.html">   47</a></span><span class="keyword">class </span>EnemyTexture : <span class="keyword">public</span> MyTexture {</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span>    <span class="keyword">static</span> EnemyTexture&amp; instance() { <span class="keyword">static</span> EnemyTexture instance; <span class="keywordflow">return</span> instance; }</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span>    sf::Texture&amp; get_texture()<span class="keyword"> override </span>{ <span class="keywordflow">return</span> m_texture_enemy; }</div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span>    EnemyTexture();</div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span>    sf::Texture m_texture_enemy;</div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span>};</div>
+</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span> </div>
+<div class="foldopen" id="foldopen00056" data-start="{" data-end="};">
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"><a class="line" href="class_background_texture.html">   56</a></span><span class="keyword">class </span>BackgroundTexture : <span class="keyword">public</span> MyTexture {</div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span>    <span class="keyword">static</span> BackgroundTexture&amp; instance() { <span class="keyword">static</span> BackgroundTexture instance; <span class="keywordflow">return</span> instance; }</div>
+<div class="line"><a id="l00059" name="l00059"></a><span class="lineno">   59</span>    sf::Texture&amp; get_texture()<span class="keyword"> override </span>{ <span class="keywordflow">return</span> m_texture_background; }</div>
+<div class="line"><a id="l00060" name="l00060"></a><span class="lineno">   60</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00061" name="l00061"></a><span class="lineno">   61</span>    BackgroundTexture();</div>
+<div class="line"><a id="l00062" name="l00062"></a><span class="lineno">   62</span>    sf::Texture m_texture_background;</div>
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno">   63</span>};</div>
+</div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_0620867b96a9d6681889b0cd51382a82.html">Drawable</a></li><li class="navelem"><a class="el" href="dir_36512145787243429e2d8387a78e16b9.html">Entity</a></li><li class="navelem"><b>MyTexture.h</b></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/_pacman_8h_source.html b/assets/docs/html/_pacman_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..9a6877336018e933f5b1b4d80b747e5091c7d98a
--- /dev/null
+++ b/assets/docs/html/_pacman_8h_source.html
@@ -0,0 +1,150 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Исходный файл source/application/Drawable/Entity/Pacman.h</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('_pacman_8h_source.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Pacman.h</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span> </div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;IEntity.h&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;../Maze/Maze.h&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &quot;MyTexture.h&quot;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#include &quot;SFML/Audio/Sound.hpp&quot;</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span> </div>
+<div class="foldopen" id="foldopen00008" data-start="{" data-end="};">
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"><a class="line" href="class_pacman.html">    8</a></span><span class="keyword">class </span><a class="code hl_function" href="class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2">Pacman</a> : <span class="keyword">public</span> <a class="code hl_class" href="class_i_entity.html">IEntity</a>, <span class="keyword">public</span> <a class="code hl_class" href="class_i_visitor.html">IVisitor</a> {</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    <span class="keyword">explicit</span> <a class="code hl_function" href="class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2">Pacman</a>(<a class="code hl_class" href="class_my_texture.html">MyTexture</a>* texture);</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_pacman.html#aa957cbb7b0ad1bc1f6ef2aac82423cd8">move</a>(Room::Direction direction);</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_pacman.html#ad41930fae2878425f80e4fea614f3a3d">prepare_for_drawing</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    <span class="keywordtype">void</span> draw_into(sf::RenderWindow&amp; window) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    std::unique_ptr&lt;IGameEvent&gt; <a class="code hl_function" href="class_pacman.html#ac4b928c45d22d9814a02b7a621c5ae7c">visit</a>(<a class="code hl_class" href="class_food.html">Food</a>* ptr_entity) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    std::unique_ptr&lt;IGameEvent&gt; <a class="code hl_function" href="class_pacman.html#ac4b928c45d22d9814a02b7a621c5ae7c">visit</a>(<a class="code hl_class" href="class_enemy.html">Enemy</a>* ptr_entity) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    <a class="code hl_function" href="class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2">~Pacman</a>() <span class="keyword">override</span> = <span class="keywordflow">default</span>;</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    sf::Sprite m_sprite;</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    sf::Sound m_sound;</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    <a class="code hl_class" href="class_my_texture.html">MyTexture</a>* m_ptr_texture;</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>};</div>
+</div>
+<div class="ttc" id="aclass_enemy_html"><div class="ttname"><a href="class_enemy.html">Enemy</a></div><div class="ttdoc">Конкретный наследник Enemy - враг. Если пакман наткнется хотя бы на одного врага, то он умрет -&gt; уров...</div><div class="ttdef"><b>Определения</b> IEntity.h:62</div></div>
+<div class="ttc" id="aclass_food_html"><div class="ttname"><a href="class_food.html">Food</a></div><div class="ttdoc">Наследник IStaticEntity - еда.</div><div class="ttdef"><b>Определения</b> IEntity.h:81</div></div>
+<div class="ttc" id="aclass_i_entity_html"><div class="ttname"><a href="class_i_entity.html">IEntity</a></div><div class="ttdoc">IEntity любая сущность, которая может быть помощена в лабиринт.</div><div class="ttdef"><b>Определения</b> IEntity.h:31</div></div>
+<div class="ttc" id="aclass_i_visitor_html"><div class="ttname"><a href="class_i_visitor.html">IVisitor</a></div><div class="ttdoc">Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: IVisitor (посетит...</div><div class="ttdef"><b>Определения</b> IEntity.h:15</div></div>
+<div class="ttc" id="aclass_my_texture_html"><div class="ttname"><a href="class_my_texture.html">MyTexture</a></div><div class="ttdef"><b>Определения</b> MyTexture.h:5</div></div>
+<div class="ttc" id="aclass_pacman_html_a72fa328d22c8fa39cf6b941ec10cd8a2"><div class="ttname"><a href="class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2">Pacman::Pacman</a></div><div class="ttdeci">Pacman(MyTexture *texture)</div><div class="ttdoc">Pacman - главный герой. В конструкторе в пакмана загружаем звук, который он будет издавать при поедан...</div><div class="ttdef"><b>Определения</b> Pacman.cpp:10</div></div>
+<div class="ttc" id="aclass_pacman_html_aa957cbb7b0ad1bc1f6ef2aac82423cd8"><div class="ttname"><a href="class_pacman.html#aa957cbb7b0ad1bc1f6ef2aac82423cd8">Pacman::move</a></div><div class="ttdeci">void move(Room::Direction direction)</div><div class="ttdoc">Перемещение пакмана</div><div class="ttdef"><b>Определения</b> Pacman.cpp:21</div></div>
+<div class="ttc" id="aclass_pacman_html_ac4b928c45d22d9814a02b7a621c5ae7c"><div class="ttname"><a href="class_pacman.html#ac4b928c45d22d9814a02b7a621c5ae7c">Pacman::visit</a></div><div class="ttdeci">std::unique_ptr&lt; IGameEvent &gt; visit(Food *ptr_entity) override</div><div class="ttdoc">Посещение пакманом еды Проводим взаимодействие, только если еда и пакман находятся в одной комнате,...</div><div class="ttdef"><b>Определения</b> Pacman.cpp:37</div></div>
+<div class="ttc" id="aclass_pacman_html_ad41930fae2878425f80e4fea614f3a3d"><div class="ttname"><a href="class_pacman.html#ad41930fae2878425f80e4fea614f3a3d">Pacman::prepare_for_drawing</a></div><div class="ttdeci">void prepare_for_drawing() override</div><div class="ttdoc">Подготовка перед отрисовкой. Загружает текстуру в m_sprite и назначаем позицию, куда его расположить</div><div class="ttdef"><b>Определения</b> Pacman.cpp:28</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_0620867b96a9d6681889b0cd51382a82.html">Drawable</a></li><li class="navelem"><a class="el" href="dir_36512145787243429e2d8387a78e16b9.html">Entity</a></li><li class="navelem"><b>Pacman.h</b></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/_select_state_8h_source.html b/assets/docs/html/_select_state_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..0c08e5b639dfcbd3ca9dfa915ccf7f06f9a7edf8
--- /dev/null
+++ b/assets/docs/html/_select_state_8h_source.html
@@ -0,0 +1,144 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Исходный файл source/application/State/SelectState.h</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('_select_state_8h_source.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">SelectState.h</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;IState.h&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;../Drawable/DrawMenu/Menu/Menu.h&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;ThemeManager.h&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span></div>
+<div class="foldopen" id="foldopen00009" data-start="{" data-end="};">
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"><a class="line" href="struct_select_state.html">    9</a></span><span class="keyword">struct </span><a class="code hl_function" href="struct_select_state.html#af3cc640f19d315eb79b7c9c0673a6562">SelectState</a>: <span class="keyword">public</span> IState, <span class="keyword">public</span> IWindowKeeper {</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    <a class="code hl_function" href="struct_select_state.html#af3cc640f19d315eb79b7c9c0673a6562">SelectState</a>(<a class="code hl_struct" href="struct_i_state_manager.html">IStateManager</a>&amp; state_manager, <span class="keyword">const</span> sf::VideoMode&amp; video_mode, <span class="keyword">const</span> std::string&amp; window_title);</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    <span class="keywordtype">void</span> event_handling() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    <span class="keywordtype">void</span> set_texture(<a class="code hl_class" href="class_my_texture.html">MyTexture</a>* ptr_texture) { m_background = ptr_texture; }</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="struct_select_state.html#af82dbfa9bc9fc892d55baabc3f5b5243">update</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="struct_select_state.html#a52b35ea72577fb2d5429daf43f9110e7">render</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    <span class="keywordtype">bool</span> do_step() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    <span class="keywordtype">void</span> update_theme() { ThemeManager::Instance().applyTheme(); }</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    <a class="code hl_class" href="class_my_texture.html">MyTexture</a>* m_background;</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    sf::Sprite m_backgorund_sprite;</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    <a class="code hl_class" href="class_menu.html">Menu</a> m_menu;</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>};</div>
+</div>
+<div class="ttc" id="aclass_menu_html"><div class="ttname"><a href="class_menu.html">Menu</a></div><div class="ttdef"><b>Определения</b> Menu.h:7</div></div>
+<div class="ttc" id="aclass_my_texture_html"><div class="ttname"><a href="class_my_texture.html">MyTexture</a></div><div class="ttdef"><b>Определения</b> MyTexture.h:5</div></div>
+<div class="ttc" id="astruct_i_state_manager_html"><div class="ttname"><a href="struct_i_state_manager.html">IStateManager</a></div><div class="ttdef"><b>Определения</b> IState.h:31</div></div>
+<div class="ttc" id="astruct_select_state_html_a52b35ea72577fb2d5429daf43f9110e7"><div class="ttname"><a href="struct_select_state.html#a52b35ea72577fb2d5429daf43f9110e7">SelectState::render</a></div><div class="ttdeci">void render() override</div><div class="ttdef"><b>Определения</b> SelectState.cpp:32</div></div>
+<div class="ttc" id="astruct_select_state_html_af3cc640f19d315eb79b7c9c0673a6562"><div class="ttname"><a href="struct_select_state.html#af3cc640f19d315eb79b7c9c0673a6562">SelectState::SelectState</a></div><div class="ttdeci">SelectState(IStateManager &amp;state_manager, const sf::VideoMode &amp;video_mode, const std::string &amp;window_title)</div><div class="ttdef"><b>Определения</b> SelectState.cpp:7</div></div>
+<div class="ttc" id="astruct_select_state_html_af82dbfa9bc9fc892d55baabc3f5b5243"><div class="ttname"><a href="struct_select_state.html#af82dbfa9bc9fc892d55baabc3f5b5243">SelectState::update</a></div><div class="ttdeci">void update() override</div><div class="ttdef"><b>Определения</b> SelectState.cpp:24</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_eb37150066857c324af7acaa5f9b7e6c.html">State</a></li><li class="navelem"><b>SelectState.h</b></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/_texture___sound_8h_source.html b/assets/docs/html/_texture___sound_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..c3cbdf3e47e2754f42e788ec86a42e5df5cdfd26
--- /dev/null
+++ b/assets/docs/html/_texture___sound_8h_source.html
@@ -0,0 +1,140 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Исходный файл source/application/Assets/Texture_Sound.h</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('_texture___sound_8h_source.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Texture_Sound.h</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &lt;SFML/Graphics.hpp&gt;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &lt;SFML/Audio.hpp&gt;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span></div>
+<div class="foldopen" id="foldopen00008" data-start="{" data-end="};">
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"><a class="line" href="struct_my_assets__one.html">    8</a></span><span class="keyword">struct </span>MyAssets_one {</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>    MyAssets_one() = <span class="keyword">delete</span>;</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    <span class="keyword">static</span> sf::Font&amp; GetFont();</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    <span class="keyword">static</span> sf::Texture&amp; GetScreamerTexture();</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    <span class="keyword">static</span> sf::SoundBuffer&amp; GetSound();</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    <span class="keyword">static</span> sf::SoundBuffer&amp; GetSoundWin();</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    <span class="keyword">static</span> sf::SoundBuffer&amp; GetSoundLost();</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    <span class="keyword">static</span> sf::SoundBuffer&amp; GetSoundInGame();</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    <span class="keyword">static</span> sf::SoundBuffer&amp; GetSceamer();</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>};</div>
+</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span> </div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span> </div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span> </div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span> </div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span> </div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span> </div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_5ac36eadb58257c11ffd1fe0c36f8d44.html">Assets</a></li><li class="navelem"><b>Texture_Sound.h</b></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/_theme_manager_8h_source.html b/assets/docs/html/_theme_manager_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..d09ea336822694193407a4ac7c8c3a23d451ba8c
--- /dev/null
+++ b/assets/docs/html/_theme_manager_8h_source.html
@@ -0,0 +1,181 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Исходный файл source/application/State/ThemeManager.h</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('_theme_manager_8h_source.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">ThemeManager.h</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;../../../config.h&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span> </div>
+<div class="foldopen" id="foldopen00004" data-start="{" data-end="};">
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"><a class="line" href="struct_theme_colors.html">    4</a></span><span class="keyword">struct </span><a class="code hl_struct" href="struct_theme_colors.html">ThemeColors</a> {</div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span>    sf::Color button_text;</div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span>    sf::Color button_fill;</div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span>    sf::Color button_selection;</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span>    sf::Color button_frame;</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>    sf::Color select_level_background;</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    sf::Color game_background_ingame;</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    sf::Color game_background_win;</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    sf::Color game_background_lost;</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    sf::Color game_pacman;</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    sf::Color game_pacman_invisible;</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    sf::Color game_room;</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    sf::Color game_wall;</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    sf::Color game_food;</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    sf::Color game_enemy;</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    sf::Color title_text;</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    sf::Color room_color;</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    sf::Color wall_color;</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    sf::Color button_text_score;</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span> </div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>};</div>
+</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span> </div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span> </div>
+<div class="foldopen" id="foldopen00027" data-start="{" data-end="};">
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"><a class="line" href="class_theme_manager.html">   27</a></span><span class="keyword">class </span>ThemeManager {</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>    <span class="keyword">enum class</span> Theme { LIGHT, DARK };</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span> </div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>    ThemeManager(<span class="keyword">const</span> ThemeManager&amp;) = <span class="keyword">delete</span>;</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>    ThemeManager&amp; operator=(<span class="keyword">const</span> ThemeManager&amp;) = <span class="keyword">delete</span>;</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>    <span class="keyword">static</span> ThemeManager&amp; Instance();</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>    <span class="keywordtype">void</span> applyTheme() {loadThemeColors(); }</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>    <span class="keywordtype">void</span> set_theme(Theme newTheme);</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span> </div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>    sf::Color getButtonFillColor() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span>    sf::Color getButtonOutlineColor() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>    sf::Color getButtonTextColor() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>    sf::Color getButtonSelectionColor() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span> </div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>    sf::Color getTitleTextColor() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span> </div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span>    sf::Color getGameBackgroundInGameColor() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span>    sf::Color getGameBackgroundWinColor() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span>    sf::Color getGameBackgroundLostColor() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>    sf::Color getRoomColor() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span>    sf::Color getWallColor() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span>    sf::Color getButtonScoreColor() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span> </div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span> </div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span>    Theme m_theme = Theme::LIGHT;</div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span>    <a class="code hl_struct" href="struct_theme_colors.html">ThemeColors</a> m_currentColors;</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span>    <span class="keywordtype">void</span> loadThemeColors();</div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span> </div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>    ThemeManager() {set_theme(Theme::LIGHT);};</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span>};</div>
+</div>
+<div class="ttc" id="astruct_theme_colors_html"><div class="ttname"><a href="struct_theme_colors.html">ThemeColors</a></div><div class="ttdef"><b>Определения</b> ThemeManager.h:4</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_eb37150066857c324af7acaa5f9b7e6c.html">State</a></li><li class="navelem"><b>ThemeManager.h</b></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/annotated.html b/assets/docs/html/annotated.html
new file mode 100644
index 0000000000000000000000000000000000000000..bde058ad0ac69a0799ee58fd6a76a3cfce614755
--- /dev/null
+++ b/assets/docs/html/annotated.html
@@ -0,0 +1,175 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Классы</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('annotated.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Классы</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Классы с их кратким описанием.</div><div class="directory">
+<table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_application.html" target="_self">Application</a></td><td class="desc"></td></tr>
+<tr id="row_1_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_background_texture.html" target="_self">BackgroundTexture</a></td><td class="desc"></td></tr>
+<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_button.html" target="_self">Button</a></td><td class="desc"></td></tr>
+<tr id="row_3_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_change_state_command.html" target="_self">ChangeStateCommand</a></td><td class="desc"></td></tr>
+<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_choose_button.html" target="_self">ChooseButton</a></td><td class="desc"></td></tr>
+<tr id="row_5_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_common_builder.html" target="_self">CommonBuilder</a></td><td class="desc"></td></tr>
+<tr id="row_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_complex_builder.html" target="_self">ComplexBuilder</a></td><td class="desc"></td></tr>
+<tr id="row_7_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_context_manager.html" target="_self">ContextManager</a></td><td class="desc"></td></tr>
+<tr id="row_8_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_delete_static_entity.html" target="_self">DeleteStaticEntity</a></td><td class="desc">Удаление еды </td></tr>
+<tr id="row_9_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_enemy.html" target="_self">Enemy</a></td><td class="desc">Конкретный наследник <a class="el" href="class_enemy.html" title="Конкретный наследник Enemy - враг. Если пакман наткнется хотя бы на одного врага, то он умрет -&gt; уров...">Enemy</a> - враг. Если пакман наткнется хотя бы на одного врага, то он умрет -&gt; уровень провален </td></tr>
+<tr id="row_10_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_enemy_texture.html" target="_self">EnemyTexture</a></td><td class="desc"></td></tr>
+<tr id="row_11_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_exit_command.html" target="_self">ExitCommand</a></td><td class="desc"></td></tr>
+<tr id="row_12_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_exit_state.html" target="_self">ExitState</a></td><td class="desc">Состояние, которое завершает игры. Для этого в do_step всегда возвращает false -&gt; так <a class="el" href="class_application.html">Application</a> поймет, что надо завершить работу и выйти из бесконечного цикла делегирования своей работы состояниям </td></tr>
+<tr id="row_13_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_food.html" target="_self">Food</a></td><td class="desc">Наследник <a class="el" href="struct_i_static_entity.html" title="Статические сущности, наследник IEntity -&gt; неперемещаемые объекты, с которыми будет взаимодействовать...">IStaticEntity</a> - еда </td></tr>
+<tr id="row_14_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_food_texture.html" target="_self">FoodTexture</a></td><td class="desc"></td></tr>
+<tr id="row_15_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_game_builder_director.html" target="_self">GameBuilderDirector</a></td><td class="desc"></td></tr>
+<tr id="row_16_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_game_command.html" target="_self">GameCommand</a></td><td class="desc"></td></tr>
+<tr id="row_17_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_game_context.html" target="_self">GameContext</a></td><td class="desc">Контекст игры. Тут хранится состояние всего того, что происходит в лабиринте </td></tr>
+<tr id="row_18_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_game_state.html" target="_self">GameState</a></td><td class="desc">Взаимодействие врага с объектами лабиринта, что порождает игровые события </td></tr>
+<tr id="row_19_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_i_drawable.html" target="_self">IDrawable</a></td><td class="desc">Общий интерфейс для отрисовываемых сущностей и объектов </td></tr>
+<tr id="row_20_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_i_dynamic_entity.html" target="_self">IDynamicEntity</a></td><td class="desc">Динамические сущности, наследник <a class="el" href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт.">IEntity</a> -&gt; может выполнять какие-то действия </td></tr>
+<tr id="row_21_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_entity.html" target="_self">IEntity</a></td><td class="desc"><a class="el" href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт.">IEntity</a> любая сущность, которая может быть помощена в лабиринт </td></tr>
+<tr id="row_22_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_game_builder.html" target="_self">IGameBuilder</a></td><td class="desc"></td></tr>
+<tr id="row_23_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_game_event.html" target="_self">IGameEvent</a></td><td class="desc">Абстрактрый класс для различных игровых событий </td></tr>
+<tr id="row_24_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_observer.html" target="_self">IObserver</a></td><td class="desc">Паттерн Observer. Общий интерфейс для наблюдателей </td></tr>
+<tr id="row_25_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_i_preparable.html" target="_self">IPreparable</a></td><td class="desc"></td></tr>
+<tr id="row_26_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_room_side.html" target="_self">IRoomSide</a></td><td class="desc"></td></tr>
+<tr id="row_27_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_select_command.html" target="_self">ISelectCommand</a></td><td class="desc"></td></tr>
+<tr id="row_28_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_state.html" target="_self">IState</a></td><td class="desc"></td></tr>
+<tr id="row_29_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_i_state_manager.html" target="_self">IStateManager</a></td><td class="desc"></td></tr>
+<tr id="row_30_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_i_static_entity.html" target="_self">IStaticEntity</a></td><td class="desc">Статические сущности, наследник <a class="el" href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт.">IEntity</a> -&gt; неперемещаемые объекты, с которыми будет взаимодействовать Пакман Чтобы скопировать статические сущности, применяем паттерн Prototype. Для этого создает возможность клонирования </td></tr>
+<tr id="row_31_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_visitable.html" target="_self">IVisitable</a></td><td class="desc"></td></tr>
+<tr id="row_32_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_visitor.html" target="_self">IVisitor</a></td><td class="desc">Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: <a class="el" href="class_i_visitor.html" title="Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: IVisitor (посетит...">IVisitor</a> (посетитель) и <a class="el" href="class_i_visitable.html">IVisitable</a> (нечто посещаемое) </td></tr>
+<tr id="row_33_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_window_keeper.html" target="_self">IWindowKeeper</a></td><td class="desc"></td></tr>
+<tr id="row_34_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_lost_game.html" target="_self">LostGame</a></td><td class="desc"></td></tr>
+<tr id="row_35_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_maze.html" target="_self">Maze</a></td><td class="desc"></td></tr>
+<tr id="row_36_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_menu.html" target="_self">Menu</a></td><td class="desc"></td></tr>
+<tr id="row_37_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_menu_game.html" target="_self">MenuGame</a></td><td class="desc"></td></tr>
+<tr id="row_38_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_my_assets__one.html" target="_self">MyAssets_one</a></td><td class="desc">загрузка текстур, звука, шрифта </td></tr>
+<tr id="row_39_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_my_texture.html" target="_self">MyTexture</a></td><td class="desc"></td></tr>
+<tr id="row_40_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pacman.html" target="_self">Pacman</a></td><td class="desc"></td></tr>
+<tr id="row_41_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pacman_texture.html" target="_self">PacmanTexture</a></td><td class="desc"></td></tr>
+<tr id="row_42_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pacman_texture2.html" target="_self">PacmanTexture2</a></td><td class="desc"></td></tr>
+<tr id="row_43_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pass.html" target="_self">Pass</a></td><td class="desc">проход, который знает о двух комнатах, которые он связывает </td></tr>
+<tr id="row_44_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_room.html" target="_self">Room</a></td><td class="desc"></td></tr>
+<tr id="row_45_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_score_count.html" target="_self">ScoreCount</a></td><td class="desc">Наблюдатель - счетчик еды. При съедании еды посылается уведомление и наблюдатель увеличивает счетчик для конкретного игрока </td></tr>
+<tr id="row_46_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_screamer_composite_event.html" target="_self">ScreamerCompositeEvent</a></td><td class="desc">Совмещение двум событий: удаление еды и скример В ресурсах храним сущность, которую хотим удалить </td></tr>
+<tr id="row_47_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_screamer_event.html" target="_self">ScreamerEvent</a></td><td class="desc">Скример </td></tr>
+<tr id="row_48_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_select_state.html" target="_self">SelectState</a></td><td class="desc"><a class="el" href="struct_select_state.html" title="SelectState - состояние, при котором происходит выбор уровня и выход из игры.">SelectState</a> - состояние, при котором происходит выбор уровня и выход из игры </td></tr>
+<tr id="row_49_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_simple_builder.html" target="_self">SimpleBuilder</a></td><td class="desc"></td></tr>
+<tr id="row_50_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_theme_colors.html" target="_self">ThemeColors</a></td><td class="desc"></td></tr>
+<tr id="row_51_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_theme_manager.html" target="_self">ThemeManager</a></td><td class="desc"></td></tr>
+<tr id="row_52_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_wall.html" target="_self">Wall</a></td><td class="desc">стена, которая хранит в себе информацию о том в какой комнате находится </td></tr>
+<tr id="row_53_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_win_game.html" target="_self">WinGame</a></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/annotated_dup.js b/assets/docs/html/annotated_dup.js
new file mode 100644
index 0000000000000000000000000000000000000000..27c426d67fa03fd9f20ef3bf641b9233355e32aa
--- /dev/null
+++ b/assets/docs/html/annotated_dup.js
@@ -0,0 +1,57 @@
+var annotated_dup =
+[
+    [ "Application", "class_application.html", null ],
+    [ "BackgroundTexture", "class_background_texture.html", null ],
+    [ "Button", "class_button.html", null ],
+    [ "ChangeStateCommand", "class_change_state_command.html", null ],
+    [ "ChooseButton", "class_choose_button.html", null ],
+    [ "CommonBuilder", "class_common_builder.html", "class_common_builder" ],
+    [ "ComplexBuilder", "class_complex_builder.html", "class_complex_builder" ],
+    [ "ContextManager", "class_context_manager.html", "class_context_manager" ],
+    [ "DeleteStaticEntity", "class_delete_static_entity.html", "class_delete_static_entity" ],
+    [ "Enemy", "class_enemy.html", "class_enemy" ],
+    [ "EnemyTexture", "class_enemy_texture.html", null ],
+    [ "ExitCommand", "class_exit_command.html", null ],
+    [ "ExitState", "class_exit_state.html", null ],
+    [ "Food", "class_food.html", "class_food" ],
+    [ "FoodTexture", "class_food_texture.html", null ],
+    [ "GameBuilderDirector", "class_game_builder_director.html", null ],
+    [ "GameCommand", "class_game_command.html", null ],
+    [ "GameContext", "struct_game_context.html", null ],
+    [ "GameState", "class_game_state.html", "class_game_state" ],
+    [ "IDrawable", "struct_i_drawable.html", null ],
+    [ "IDynamicEntity", "struct_i_dynamic_entity.html", null ],
+    [ "IEntity", "class_i_entity.html", null ],
+    [ "IGameBuilder", "class_i_game_builder.html", null ],
+    [ "IGameEvent", "class_i_game_event.html", "class_i_game_event" ],
+    [ "IObserver", "class_i_observer.html", null ],
+    [ "IPreparable", "struct_i_preparable.html", null ],
+    [ "IRoomSide", "class_i_room_side.html", null ],
+    [ "ISelectCommand", "class_i_select_command.html", null ],
+    [ "IState", "class_i_state.html", null ],
+    [ "IStateManager", "struct_i_state_manager.html", null ],
+    [ "IStaticEntity", "struct_i_static_entity.html", null ],
+    [ "IVisitable", "class_i_visitable.html", null ],
+    [ "IVisitor", "class_i_visitor.html", null ],
+    [ "IWindowKeeper", "class_i_window_keeper.html", "class_i_window_keeper" ],
+    [ "LostGame", "class_lost_game.html", null ],
+    [ "Maze", "class_maze.html", null ],
+    [ "Menu", "class_menu.html", "class_menu" ],
+    [ "MenuGame", "class_menu_game.html", null ],
+    [ "MyAssets_one", "struct_my_assets__one.html", null ],
+    [ "MyTexture", "class_my_texture.html", null ],
+    [ "Pacman", "class_pacman.html", "class_pacman" ],
+    [ "PacmanTexture", "class_pacman_texture.html", null ],
+    [ "PacmanTexture2", "class_pacman_texture2.html", null ],
+    [ "Pass", "class_pass.html", null ],
+    [ "Room", "class_room.html", null ],
+    [ "ScoreCount", "class_score_count.html", "class_score_count" ],
+    [ "ScreamerCompositeEvent", "class_screamer_composite_event.html", null ],
+    [ "ScreamerEvent", "struct_screamer_event.html", null ],
+    [ "SelectState", "struct_select_state.html", "struct_select_state" ],
+    [ "SimpleBuilder", "class_simple_builder.html", "class_simple_builder" ],
+    [ "ThemeColors", "struct_theme_colors.html", null ],
+    [ "ThemeManager", "class_theme_manager.html", null ],
+    [ "Wall", "class_wall.html", null ],
+    [ "WinGame", "class_win_game.html", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/bc_s.png b/assets/docs/html/bc_s.png
new file mode 100644
index 0000000000000000000000000000000000000000..224b29aa9847d5a4b3902efd602b7ddf7d33e6c2
Binary files /dev/null and b/assets/docs/html/bc_s.png differ
diff --git a/assets/docs/html/bc_sd.png b/assets/docs/html/bc_sd.png
new file mode 100644
index 0000000000000000000000000000000000000000..31ca888dc71049713b35c351933a8d0f36180bf1
Binary files /dev/null and b/assets/docs/html/bc_sd.png differ
diff --git a/assets/docs/html/class_application-members.html b/assets/docs/html/class_application-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..06dec1b737aa4d004b5511e9df02060f06e494fb
--- /dev/null
+++ b/assets/docs/html/class_application-members.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_application.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Application Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_application.html">Application</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Application</b>() (определено в <a class="el" href="class_application.html">Application</a>)</td><td class="entry"><a class="el" href="class_application.html">Application</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>run</b>() (определено в <a class="el" href="class_application.html">Application</a>)</td><td class="entry"><a class="el" href="class_application.html">Application</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~Application</b>() override=default (определено в <a class="el" href="class_application.html">Application</a>)</td><td class="entry"><a class="el" href="class_application.html">Application</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IStateManager</b>()=default (определено в <a class="el" href="struct_i_state_manager.html">IStateManager</a>)</td><td class="entry"><a class="el" href="struct_i_state_manager.html">IStateManager</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_application.html b/assets/docs/html/class_application.html
new file mode 100644
index 0000000000000000000000000000000000000000..b3856382efecd6e7a139b720fd413712ca20042c
--- /dev/null
+++ b/assets/docs/html/class_application.html
@@ -0,0 +1,141 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс Application</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_application.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_application-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс Application</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Граф наследования:Application:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_application.png" usemap="#Application_map" alt=""/>
+  <map id="Application_map" name="Application_map">
+<area href="struct_i_state_manager.html" alt="IStateManager" shape="rect" coords="0,0,94,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a8cf8941c8db90117d3735bce5ae1fdf4" id="r_a8cf8941c8db90117d3735bce5ae1fdf4"><td class="memItemLeft" align="right" valign="top"><a id="a8cf8941c8db90117d3735bce5ae1fdf4" name="a8cf8941c8db90117d3735bce5ae1fdf4"></a>
+int&#160;</td><td class="memItemRight" valign="bottom"><b>run</b> ()</td></tr>
+<tr class="separator:a8cf8941c8db90117d3735bce5ae1fdf4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/App/<a class="el" href="_application_8h_source.html">Application.h</a></li>
+<li>source/application/App/<b>Application.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_application.html">Application</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_application.png b/assets/docs/html/class_application.png
new file mode 100644
index 0000000000000000000000000000000000000000..3060b6ea840e5ad7361631c8c8da4bac000f90ee
Binary files /dev/null and b/assets/docs/html/class_application.png differ
diff --git a/assets/docs/html/class_background_texture-members.html b/assets/docs/html/class_background_texture-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..c7a98c89d5fae418adda77b20aa0273d159b0f09
--- /dev/null
+++ b/assets/docs/html/class_background_texture-members.html
@@ -0,0 +1,132 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_background_texture.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">BackgroundTexture Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_background_texture.html">BackgroundTexture</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Direction</b> перечисление (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>DOWN</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_texture</b>() override (определено в <a class="el" href="class_background_texture.html">BackgroundTexture</a>)</td><td class="entry"><a class="el" href="class_background_texture.html">BackgroundTexture</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>instance</b>() (определено в <a class="el" href="class_background_texture.html">BackgroundTexture</a>)</td><td class="entry"><a class="el" href="class_background_texture.html">BackgroundTexture</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>LEFT</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_direction</b> (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>MyTexture</b>()=default (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>MyTexture</b>(const MyTexture &amp;)=delete (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(const MyTexture &amp;)=delete (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>RIGHT</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_direction</b>(Direction direction) (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>UP</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_background_texture.html b/assets/docs/html/class_background_texture.html
new file mode 100644
index 0000000000000000000000000000000000000000..e7aca0bda97b4e4260af1c1372124966c963ef7f
--- /dev/null
+++ b/assets/docs/html/class_background_texture.html
@@ -0,0 +1,199 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс BackgroundTexture</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_background_texture.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="#pub-static-methods">Открытые статические члены</a> &#124;
+<a href="class_background_texture-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс BackgroundTexture</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Граф наследования:BackgroundTexture:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_background_texture.png" usemap="#BackgroundTexture_map" alt=""/>
+  <map id="BackgroundTexture_map" name="BackgroundTexture_map">
+<area href="class_my_texture.html" alt="MyTexture" shape="rect" coords="0,0,122,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:ab323785a1d1e7d4ccb5bbd6879f782b4" id="r_ab323785a1d1e7d4ccb5bbd6879f782b4"><td class="memItemLeft" align="right" valign="top">sf::Texture &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab323785a1d1e7d4ccb5bbd6879f782b4">get_texture</a> () override</td></tr>
+<tr class="separator:ab323785a1d1e7d4ccb5bbd6879f782b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_my_texture"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_my_texture')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_my_texture.html">MyTexture</a></td></tr>
+<tr class="memitem:ab6327857e381e8f9ff6ea9d4a01c62c8 inherit pub_methods_class_my_texture" id="r_ab6327857e381e8f9ff6ea9d4a01c62c8"><td class="memItemLeft" align="right" valign="top">
+&#160;</td><td class="memItemRight" valign="bottom"><b>MyTexture</b> (const <a class="el" href="class_my_texture.html">MyTexture</a> &amp;)=delete</td></tr>
+<tr class="separator:ab6327857e381e8f9ff6ea9d4a01c62c8 inherit pub_methods_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2968e7cbf400c6d3d210724ef0eb99b6 inherit pub_methods_class_my_texture" id="r_a2968e7cbf400c6d3d210724ef0eb99b6"><td class="memItemLeft" align="right" valign="top">
+<a class="el" href="class_my_texture.html">MyTexture</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="class_my_texture.html">MyTexture</a> &amp;)=delete</td></tr>
+<tr class="separator:a2968e7cbf400c6d3d210724ef0eb99b6 inherit pub_methods_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aadd40b268663d9064d45de162004fac6 inherit pub_methods_class_my_texture" id="r_aadd40b268663d9064d45de162004fac6"><td class="memItemLeft" align="right" valign="top">
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_direction</b> (Direction direction)</td></tr>
+<tr class="separator:aadd40b268663d9064d45de162004fac6 inherit pub_methods_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
+Открытые статические члены</h2></td></tr>
+<tr class="memitem:ac891aeef78293249b454eec5bed55665" id="r_ac891aeef78293249b454eec5bed55665"><td class="memItemLeft" align="right" valign="top"><a id="ac891aeef78293249b454eec5bed55665" name="ac891aeef78293249b454eec5bed55665"></a>
+static <a class="el" href="class_background_texture.html">BackgroundTexture</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>instance</b> ()</td></tr>
+<tr class="separator:ac891aeef78293249b454eec5bed55665"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Дополнительные унаследованные члены</h2></td></tr>
+<tr class="inherit_header pub_types_class_my_texture"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_types_class_my_texture')"><img src="closed.png" alt="-"/>&#160;Открытые типы унаследованные от <a class="el" href="class_my_texture.html">MyTexture</a></td></tr>
+<tr class="memitem:a316c15cca20dd7993c379b6e5bcf4913 inherit pub_types_class_my_texture" id="r_a316c15cca20dd7993c379b6e5bcf4913"><td class="memItemLeft" align="right" valign="top"><a id="a316c15cca20dd7993c379b6e5bcf4913" name="a316c15cca20dd7993c379b6e5bcf4913"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><b>Direction</b> { <b>UP</b>
+, <b>DOWN</b>
+, <b>RIGHT</b>
+, <b>LEFT</b>
+ }</td></tr>
+<tr class="separator:a316c15cca20dd7993c379b6e5bcf4913 inherit pub_types_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_class_my_texture"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_attribs_class_my_texture')"><img src="closed.png" alt="-"/>&#160;Защищенные данные унаследованные от <a class="el" href="class_my_texture.html">MyTexture</a></td></tr>
+<tr class="memitem:a9c56deb491e39a56350cc8029567d001 inherit pro_attribs_class_my_texture" id="r_a9c56deb491e39a56350cc8029567d001"><td class="memItemLeft" align="right" valign="top">
+Direction&#160;</td><td class="memItemRight" valign="bottom"><b>m_direction</b> = UP</td></tr>
+<tr class="separator:a9c56deb491e39a56350cc8029567d001 inherit pro_attribs_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Методы</h2>
+<a id="ab323785a1d1e7d4ccb5bbd6879f782b4" name="ab323785a1d1e7d4ccb5bbd6879f782b4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab323785a1d1e7d4ccb5bbd6879f782b4">&#9670;&#160;</a></span>get_texture()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">sf::Texture &amp; BackgroundTexture::get_texture </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="class_my_texture.html">MyTexture</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Drawable/Entity/<a class="el" href="_my_texture_8h_source.html">MyTexture.h</a></li>
+<li>source/application/Drawable/Entity/<b>MyTexture.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_background_texture.html">BackgroundTexture</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_background_texture.png b/assets/docs/html/class_background_texture.png
new file mode 100644
index 0000000000000000000000000000000000000000..b604b7c37c7b555fef78124bff85087eed5fae41
Binary files /dev/null and b/assets/docs/html/class_background_texture.png differ
diff --git a/assets/docs/html/class_button-members.html b/assets/docs/html/class_button-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..b7f0a8a1c293ac475709f53af675bd815ce454b6
--- /dev/null
+++ b/assets/docs/html/class_button-members.html
@@ -0,0 +1,128 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_button.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Button Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_button.html">Button</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Button</b>(sf::Vector2f pos, sf::Vector2f button_size, const std::string &amp;text, size_t font_size, std::unique_ptr&lt; ISelectCommand &gt; ptr_command) (определено в <a class="el" href="class_button.html">Button</a>)</td><td class="entry"><a class="el" href="class_button.html">Button</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>draw_into</b>(sf::RenderWindow &amp;window) override (определено в <a class="el" href="class_button.html">Button</a>)</td><td class="entry"><a class="el" href="class_button.html">Button</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>is_position_in</b>(sf::Vector2f pos) const noexcept (определено в <a class="el" href="class_button.html">Button</a>)</td><td class="entry"><a class="el" href="class_button.html">Button</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>is_selected</b>() const noexcept (определено в <a class="el" href="class_button.html">Button</a>)</td><td class="entry"><a class="el" href="class_button.html">Button</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>push</b>() (определено в <a class="el" href="class_button.html">Button</a>)</td><td class="entry"><a class="el" href="class_button.html">Button</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>select</b>() (определено в <a class="el" href="class_button.html">Button</a>)</td><td class="entry"><a class="el" href="class_button.html">Button</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>unselect</b>() (определено в <a class="el" href="class_button.html">Button</a>)</td><td class="entry"><a class="el" href="class_button.html">Button</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IDrawable</b>()=default (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_button.html b/assets/docs/html/class_button.html
new file mode 100644
index 0000000000000000000000000000000000000000..ba4622947aa50d2a480b8fc3064db87b0dbfde3b
--- /dev/null
+++ b/assets/docs/html/class_button.html
@@ -0,0 +1,186 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс Button</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_button.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_button-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс Button</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Граф наследования:Button:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_button.png" usemap="#Button_map" alt=""/>
+  <map id="Button_map" name="Button_map">
+<area href="struct_i_drawable.html" title="Общий интерфейс для отрисовываемых сущностей и объектов" alt="IDrawable" shape="rect" coords="0,0,69,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a3d6466150edecfeadb71d5c55aed5760" id="r_a3d6466150edecfeadb71d5c55aed5760"><td class="memItemLeft" align="right" valign="top"><a id="a3d6466150edecfeadb71d5c55aed5760" name="a3d6466150edecfeadb71d5c55aed5760"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><b>Button</b> (sf::Vector2f pos, sf::Vector2f button_size, const std::string &amp;text, size_t font_size, std::unique_ptr&lt; <a class="el" href="class_i_select_command.html">ISelectCommand</a> &gt; ptr_command)</td></tr>
+<tr class="separator:a3d6466150edecfeadb71d5c55aed5760"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d567e275b73139fe0300f395f657656" id="r_a0d567e275b73139fe0300f395f657656"><td class="memItemLeft" align="right" valign="top"><a id="a0d567e275b73139fe0300f395f657656" name="a0d567e275b73139fe0300f395f657656"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>select</b> ()</td></tr>
+<tr class="separator:a0d567e275b73139fe0300f395f657656"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5de65f4bd1c52fc3e121148506f5b829" id="r_a5de65f4bd1c52fc3e121148506f5b829"><td class="memItemLeft" align="right" valign="top"><a id="a5de65f4bd1c52fc3e121148506f5b829" name="a5de65f4bd1c52fc3e121148506f5b829"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>unselect</b> ()</td></tr>
+<tr class="separator:a5de65f4bd1c52fc3e121148506f5b829"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab66628e252ec4c1f305585e3c7febddb" id="r_ab66628e252ec4c1f305585e3c7febddb"><td class="memItemLeft" align="right" valign="top"><a id="ab66628e252ec4c1f305585e3c7febddb" name="ab66628e252ec4c1f305585e3c7febddb"></a>
+bool&#160;</td><td class="memItemRight" valign="bottom"><b>is_selected</b> () const noexcept</td></tr>
+<tr class="separator:ab66628e252ec4c1f305585e3c7febddb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab690a0bdf703b3924a5436fec301d79c" id="r_ab690a0bdf703b3924a5436fec301d79c"><td class="memItemLeft" align="right" valign="top"><a id="ab690a0bdf703b3924a5436fec301d79c" name="ab690a0bdf703b3924a5436fec301d79c"></a>
+bool&#160;</td><td class="memItemRight" valign="bottom"><b>is_position_in</b> (sf::Vector2f pos) const noexcept</td></tr>
+<tr class="separator:ab690a0bdf703b3924a5436fec301d79c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac5972bff24827699156710d89602a58f" id="r_ac5972bff24827699156710d89602a58f"><td class="memItemLeft" align="right" valign="top"><a id="ac5972bff24827699156710d89602a58f" name="ac5972bff24827699156710d89602a58f"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>push</b> ()</td></tr>
+<tr class="separator:ac5972bff24827699156710d89602a58f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e924acc7737198301c93776b8785b20" id="r_a5e924acc7737198301c93776b8785b20"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5e924acc7737198301c93776b8785b20">draw_into</a> (sf::RenderWindow &amp;window) override</td></tr>
+<tr class="separator:a5e924acc7737198301c93776b8785b20"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Методы</h2>
+<a id="a5e924acc7737198301c93776b8785b20" name="a5e924acc7737198301c93776b8785b20"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5e924acc7737198301c93776b8785b20">&#9670;&#160;</a></span>draw_into()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Button::draw_into </td>
+          <td>(</td>
+          <td class="paramtype">sf::RenderWindow &amp;</td>          <td class="paramname"><span class="paramname"><em>window</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="struct_i_drawable.html">IDrawable</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Drawable/DrawMenu/Button/<a class="el" href="_button_8h_source.html">Button.h</a></li>
+<li>source/application/Drawable/DrawMenu/Button/<b>Button.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_button.html">Button</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_button.png b/assets/docs/html/class_button.png
new file mode 100644
index 0000000000000000000000000000000000000000..0de28ebd53d81becee65f869b1d67c29d4f64ffc
Binary files /dev/null and b/assets/docs/html/class_button.png differ
diff --git a/assets/docs/html/class_change_state_command-members.html b/assets/docs/html/class_change_state_command-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..86dc3c6be912c40857c3984ea1d54ad942c92f4f
--- /dev/null
+++ b/assets/docs/html/class_change_state_command-members.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_change_state_command.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">ChangeStateCommand Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_change_state_command.html">ChangeStateCommand</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ChangeStateCommand</b>(IStateManager &amp;state_manager) (определено в <a class="el" href="class_change_state_command.html">ChangeStateCommand</a>)</td><td class="entry"><a class="el" href="class_change_state_command.html">ChangeStateCommand</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>execute</b>()=0 (определено в <a class="el" href="class_i_select_command.html">ISelectCommand</a>)</td><td class="entry"><a class="el" href="class_i_select_command.html">ISelectCommand</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_state_manager</b> (определено в <a class="el" href="class_change_state_command.html">ChangeStateCommand</a>)</td><td class="entry"><a class="el" href="class_change_state_command.html">ChangeStateCommand</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~ISelectCommand</b>()=default (определено в <a class="el" href="class_i_select_command.html">ISelectCommand</a>)</td><td class="entry"><a class="el" href="class_i_select_command.html">ISelectCommand</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_change_state_command.html b/assets/docs/html/class_change_state_command.html
new file mode 100644
index 0000000000000000000000000000000000000000..d6579a55cc2da9c2317e1812e7d1ab41cb296164
--- /dev/null
+++ b/assets/docs/html/class_change_state_command.html
@@ -0,0 +1,153 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс ChangeStateCommand</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_change_state_command.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="#pro-attribs">Защищенные данные</a> &#124;
+<a href="class_change_state_command-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс ChangeStateCommand</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Граф наследования:ChangeStateCommand:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_change_state_command.png" usemap="#ChangeStateCommand_map" alt=""/>
+  <map id="ChangeStateCommand_map" name="ChangeStateCommand_map">
+<area href="class_i_select_command.html" alt="ISelectCommand" shape="rect" coords="74,0,213,24"/>
+<area href="class_exit_command.html" alt="ExitCommand" shape="rect" coords="0,112,139,136"/>
+<area href="class_game_command.html" alt="GameCommand" shape="rect" coords="149,112,288,136"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a84df1216960a40853ed069ff5fc71a8c" id="r_a84df1216960a40853ed069ff5fc71a8c"><td class="memItemLeft" align="right" valign="top"><a id="a84df1216960a40853ed069ff5fc71a8c" name="a84df1216960a40853ed069ff5fc71a8c"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><b>ChangeStateCommand</b> (<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;state_manager)</td></tr>
+<tr class="separator:a84df1216960a40853ed069ff5fc71a8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_i_select_command"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_i_select_command')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_i_select_command.html">ISelectCommand</a></td></tr>
+<tr class="memitem:a93b61a2d5bab30fd39dc457979caabea inherit pub_methods_class_i_select_command" id="r_a93b61a2d5bab30fd39dc457979caabea"><td class="memItemLeft" align="right" valign="top">
+virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>execute</b> ()=0</td></tr>
+<tr class="separator:a93b61a2d5bab30fd39dc457979caabea inherit pub_methods_class_i_select_command"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-attribs" name="pro-attribs"></a>
+Защищенные данные</h2></td></tr>
+<tr class="memitem:ac60993a1229fb3816483aa21887e0884" id="r_ac60993a1229fb3816483aa21887e0884"><td class="memItemLeft" align="right" valign="top"><a id="ac60993a1229fb3816483aa21887e0884" name="ac60993a1229fb3816483aa21887e0884"></a>
+<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>m_state_manager</b></td></tr>
+<tr class="separator:ac60993a1229fb3816483aa21887e0884"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<hr/>Объявления и описания членов класса находятся в файле:<ul>
+<li>source/application/SelectCommand/<a class="el" href="_i_select_command_8h_source.html">ISelectCommand.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_change_state_command.html">ChangeStateCommand</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_change_state_command.png b/assets/docs/html/class_change_state_command.png
new file mode 100644
index 0000000000000000000000000000000000000000..c26c5424faaaf33992251b711f35bc0f0889f9f6
Binary files /dev/null and b/assets/docs/html/class_change_state_command.png differ
diff --git a/assets/docs/html/class_choose_button-members.html b/assets/docs/html/class_choose_button-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..a8ce9603f46d8525ddd1dca2ba71c192625a0947
--- /dev/null
+++ b/assets/docs/html/class_choose_button-members.html
@@ -0,0 +1,127 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_choose_button.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">ChooseButton Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_choose_button.html">ChooseButton</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ChooseButton</b>(sf::Vector2f pos, const std::string &amp;text, size_t font_size) (определено в <a class="el" href="class_choose_button.html">ChooseButton</a>)</td><td class="entry"><a class="el" href="class_choose_button.html">ChooseButton</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>contains</b>(sf::Vector2f point) const (определено в <a class="el" href="class_choose_button.html">ChooseButton</a>)</td><td class="entry"><a class="el" href="class_choose_button.html">ChooseButton</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>draw_into</b>(sf::RenderWindow &amp;window) override (определено в <a class="el" href="class_choose_button.html">ChooseButton</a>)</td><td class="entry"><a class="el" href="class_choose_button.html">ChooseButton</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>is_selected</b>() const noexcept (определено в <a class="el" href="class_choose_button.html">ChooseButton</a>)</td><td class="entry"><a class="el" href="class_choose_button.html">ChooseButton</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>select</b>() (определено в <a class="el" href="class_choose_button.html">ChooseButton</a>)</td><td class="entry"><a class="el" href="class_choose_button.html">ChooseButton</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>unselect</b>() (определено в <a class="el" href="class_choose_button.html">ChooseButton</a>)</td><td class="entry"><a class="el" href="class_choose_button.html">ChooseButton</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~IDrawable</b>()=default (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_choose_button.html b/assets/docs/html/class_choose_button.html
new file mode 100644
index 0000000000000000000000000000000000000000..13eb08e9591c8f755d4b01ca1024e68770b53d7a
--- /dev/null
+++ b/assets/docs/html/class_choose_button.html
@@ -0,0 +1,183 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс ChooseButton</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_choose_button.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_choose_button-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс ChooseButton</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Граф наследования:ChooseButton:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_choose_button.png" usemap="#ChooseButton_map" alt=""/>
+  <map id="ChooseButton_map" name="ChooseButton_map">
+<area href="struct_i_drawable.html" title="Общий интерфейс для отрисовываемых сущностей и объектов" alt="IDrawable" shape="rect" coords="0,0,90,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a81797f3f2e288298d8c83748450db00d" id="r_a81797f3f2e288298d8c83748450db00d"><td class="memItemLeft" align="right" valign="top"><a id="a81797f3f2e288298d8c83748450db00d" name="a81797f3f2e288298d8c83748450db00d"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><b>ChooseButton</b> (sf::Vector2f pos, const std::string &amp;text, size_t font_size)</td></tr>
+<tr class="separator:a81797f3f2e288298d8c83748450db00d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a60bd1d0b6620ed675188e2dfd19cba37" id="r_a60bd1d0b6620ed675188e2dfd19cba37"><td class="memItemLeft" align="right" valign="top"><a id="a60bd1d0b6620ed675188e2dfd19cba37" name="a60bd1d0b6620ed675188e2dfd19cba37"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>select</b> ()</td></tr>
+<tr class="separator:a60bd1d0b6620ed675188e2dfd19cba37"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0a438b3dc67eaf8bdb2598fcd1229650" id="r_a0a438b3dc67eaf8bdb2598fcd1229650"><td class="memItemLeft" align="right" valign="top"><a id="a0a438b3dc67eaf8bdb2598fcd1229650" name="a0a438b3dc67eaf8bdb2598fcd1229650"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>unselect</b> ()</td></tr>
+<tr class="separator:a0a438b3dc67eaf8bdb2598fcd1229650"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af5028c17d31caafeafc10d5eb893230c" id="r_af5028c17d31caafeafc10d5eb893230c"><td class="memItemLeft" align="right" valign="top"><a id="af5028c17d31caafeafc10d5eb893230c" name="af5028c17d31caafeafc10d5eb893230c"></a>
+bool&#160;</td><td class="memItemRight" valign="bottom"><b>is_selected</b> () const noexcept</td></tr>
+<tr class="separator:af5028c17d31caafeafc10d5eb893230c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acbb21e157a414c3c4d6d9f1ce7ff7e94" id="r_acbb21e157a414c3c4d6d9f1ce7ff7e94"><td class="memItemLeft" align="right" valign="top"><a id="acbb21e157a414c3c4d6d9f1ce7ff7e94" name="acbb21e157a414c3c4d6d9f1ce7ff7e94"></a>
+bool&#160;</td><td class="memItemRight" valign="bottom"><b>contains</b> (sf::Vector2f point) const</td></tr>
+<tr class="separator:acbb21e157a414c3c4d6d9f1ce7ff7e94"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aac6e0822cdeaec0977fc7b863266929b" id="r_aac6e0822cdeaec0977fc7b863266929b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aac6e0822cdeaec0977fc7b863266929b">draw_into</a> (sf::RenderWindow &amp;window) override</td></tr>
+<tr class="separator:aac6e0822cdeaec0977fc7b863266929b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Методы</h2>
+<a id="aac6e0822cdeaec0977fc7b863266929b" name="aac6e0822cdeaec0977fc7b863266929b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aac6e0822cdeaec0977fc7b863266929b">&#9670;&#160;</a></span>draw_into()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void ChooseButton::draw_into </td>
+          <td>(</td>
+          <td class="paramtype">sf::RenderWindow &amp;</td>          <td class="paramname"><span class="paramname"><em>window</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="struct_i_drawable.html">IDrawable</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Drawable/DrawMenu/Button/<a class="el" href="_button_8h_source.html">Button.h</a></li>
+<li>source/application/Drawable/DrawMenu/Button/<b>Button.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_choose_button.html">ChooseButton</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_choose_button.png b/assets/docs/html/class_choose_button.png
new file mode 100644
index 0000000000000000000000000000000000000000..cc27c76c0feb7bdc90f44d7c6a7669b60ec4d085
Binary files /dev/null and b/assets/docs/html/class_choose_button.png differ
diff --git a/assets/docs/html/class_common_builder-members.html b/assets/docs/html/class_common_builder-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..4db30fc0932eb84be05d93d11057dae78aad275b
--- /dev/null
+++ b/assets/docs/html/class_common_builder-members.html
@@ -0,0 +1,134 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_common_builder.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">CommonBuilder Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_common_builder.html">CommonBuilder</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>CommonBuilder</b>(float width, float height, float room_size) (определено в <a class="el" href="class_common_builder.html">CommonBuilder</a>)</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_common_builder.html#ace9b0433bd9b849970e2b96965818789">create_context</a>(float dynamic_objects_ratio, int players) override</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>create_rooms</b>()=0 (определено в <a class="el" href="class_i_game_builder.html">IGameBuilder</a>)</td><td class="entry"><a class="el" href="class_i_game_builder.html">IGameBuilder</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_common_builder.html#a4e45999e05a45814ed25ed3adbbe07e0">create_state</a>(IStateManager &amp;state_manager, const sf::VideoMode &amp;mode, const std::string &amp;window_title) override</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_common_builder.html#aafef8d08b8bfdfccfde6ff56bfb99987">get_game</a>() override</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_context</b> (определено в <a class="el" href="class_common_builder.html">CommonBuilder</a>)</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_game_state</b> (определено в <a class="el" href="class_common_builder.html">CommonBuilder</a>)</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_height</b> (определено в <a class="el" href="class_common_builder.html">CommonBuilder</a>)</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_room_size</b> (определено в <a class="el" href="class_common_builder.html">CommonBuilder</a>)</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_rooms</b> (определено в <a class="el" href="class_common_builder.html">CommonBuilder</a>)</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_width</b> (определено в <a class="el" href="class_common_builder.html">CommonBuilder</a>)</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_common_builder.html#ae920c0a91e61aff620096c100e496da0">set_all_to_state</a>() override</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_rooms_sides</b>()=0 (определено в <a class="el" href="class_i_game_builder.html">IGameBuilder</a>)</td><td class="entry"><a class="el" href="class_i_game_builder.html">IGameBuilder</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IGameBuilder</b>()=default (определено в <a class="el" href="class_i_game_builder.html">IGameBuilder</a>)</td><td class="entry"><a class="el" href="class_i_game_builder.html">IGameBuilder</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_common_builder.html b/assets/docs/html/class_common_builder.html
new file mode 100644
index 0000000000000000000000000000000000000000..54aeeaae86367d302ee3cbfaf527b31ac3c1a60c
--- /dev/null
+++ b/assets/docs/html/class_common_builder.html
@@ -0,0 +1,334 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс CommonBuilder</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_common_builder.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="#pro-attribs">Защищенные данные</a> &#124;
+<a href="class_common_builder-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс CommonBuilder</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="_game_builders_8h_source.html">GameBuilders.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:CommonBuilder:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_common_builder.png" usemap="#CommonBuilder_map" alt=""/>
+  <map id="CommonBuilder_map" name="CommonBuilder_map">
+<area href="class_i_game_builder.html" alt="IGameBuilder" shape="rect" coords="55,0,155,24"/>
+<area href="class_complex_builder.html" alt="ComplexBuilder" shape="rect" coords="0,112,100,136"/>
+<area href="class_simple_builder.html" alt="SimpleBuilder" shape="rect" coords="110,112,210,136"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a02bd852f1888116967ca1185e40bfba8" id="r_a02bd852f1888116967ca1185e40bfba8"><td class="memItemLeft" align="right" valign="top"><a id="a02bd852f1888116967ca1185e40bfba8" name="a02bd852f1888116967ca1185e40bfba8"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><b>CommonBuilder</b> (float width, float height, float room_size)</td></tr>
+<tr class="separator:a02bd852f1888116967ca1185e40bfba8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ace9b0433bd9b849970e2b96965818789" id="r_ace9b0433bd9b849970e2b96965818789"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ace9b0433bd9b849970e2b96965818789">create_context</a> (float dynamic_objects_ratio, int players) override</td></tr>
+<tr class="memdesc:ace9b0433bd9b849970e2b96965818789"><td class="mdescLeft">&#160;</td><td class="mdescRight">Создает контекст для игры  <br /></td></tr>
+<tr class="separator:ace9b0433bd9b849970e2b96965818789"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4e45999e05a45814ed25ed3adbbe07e0" id="r_a4e45999e05a45814ed25ed3adbbe07e0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4e45999e05a45814ed25ed3adbbe07e0">create_state</a> (<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;state_manager, const sf::VideoMode &amp;mode, const std::string &amp;window_title) override</td></tr>
+<tr class="memdesc:a4e45999e05a45814ed25ed3adbbe07e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cоздаем состояние <a class="el" href="class_game_state.html" title="Взаимодействие врага с объектами лабиринта, что порождает игровые события">GameState</a>, используя имя, режим окна и сслыку на менеджер состояний  <br /></td></tr>
+<tr class="separator:a4e45999e05a45814ed25ed3adbbe07e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae920c0a91e61aff620096c100e496da0" id="r_ae920c0a91e61aff620096c100e496da0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae920c0a91e61aff620096c100e496da0">set_all_to_state</a> () override</td></tr>
+<tr class="memdesc:ae920c0a91e61aff620096c100e496da0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Созданный лабиринт и контекст назначаем созданному состоянию игры <a class="el" href="class_game_state.html" title="Взаимодействие врага с объектами лабиринта, что порождает игровые события">GameState</a>.  <br /></td></tr>
+<tr class="separator:ae920c0a91e61aff620096c100e496da0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aafef8d08b8bfdfccfde6ff56bfb99987" id="r_aafef8d08b8bfdfccfde6ff56bfb99987"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="class_game_state.html">GameState</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aafef8d08b8bfdfccfde6ff56bfb99987">get_game</a> () override</td></tr>
+<tr class="memdesc:aafef8d08b8bfdfccfde6ff56bfb99987"><td class="mdescLeft">&#160;</td><td class="mdescRight">Получить результат строителя.  <br /></td></tr>
+<tr class="separator:aafef8d08b8bfdfccfde6ff56bfb99987"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_i_game_builder"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_i_game_builder')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_i_game_builder.html">IGameBuilder</a></td></tr>
+<tr class="memitem:a552c1a4aa029bcc59a8ee5c9f0ab6584 inherit pub_methods_class_i_game_builder" id="r_a552c1a4aa029bcc59a8ee5c9f0ab6584"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_game_builder.html#a552c1a4aa029bcc59a8ee5c9f0ab6584">create_rooms</a> ()=0</td></tr>
+<tr class="separator:a552c1a4aa029bcc59a8ee5c9f0ab6584 inherit pub_methods_class_i_game_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa9e7feb88667318b226b8658270012b9 inherit pub_methods_class_i_game_builder" id="r_aa9e7feb88667318b226b8658270012b9"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_game_builder.html#aa9e7feb88667318b226b8658270012b9">set_rooms_sides</a> ()=0</td></tr>
+<tr class="separator:aa9e7feb88667318b226b8658270012b9 inherit pub_methods_class_i_game_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-attribs" name="pro-attribs"></a>
+Защищенные данные</h2></td></tr>
+<tr class="memitem:a21d4002b40948223e8e8fedf44a04b1a" id="r_a21d4002b40948223e8e8fedf44a04b1a"><td class="memItemLeft" align="right" valign="top"><a id="a21d4002b40948223e8e8fedf44a04b1a" name="a21d4002b40948223e8e8fedf44a04b1a"></a>
+float&#160;</td><td class="memItemRight" valign="bottom"><b>m_width</b></td></tr>
+<tr class="separator:a21d4002b40948223e8e8fedf44a04b1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac5552f46ab0d3ad530075981ead5746a" id="r_ac5552f46ab0d3ad530075981ead5746a"><td class="memItemLeft" align="right" valign="top"><a id="ac5552f46ab0d3ad530075981ead5746a" name="ac5552f46ab0d3ad530075981ead5746a"></a>
+float&#160;</td><td class="memItemRight" valign="bottom"><b>m_height</b></td></tr>
+<tr class="separator:ac5552f46ab0d3ad530075981ead5746a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1bc23e74a5489c805205cf6d81d81ef3" id="r_a1bc23e74a5489c805205cf6d81d81ef3"><td class="memItemLeft" align="right" valign="top"><a id="a1bc23e74a5489c805205cf6d81d81ef3" name="a1bc23e74a5489c805205cf6d81d81ef3"></a>
+float&#160;</td><td class="memItemRight" valign="bottom"><b>m_room_size</b></td></tr>
+<tr class="separator:a1bc23e74a5489c805205cf6d81d81ef3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a48bbe8e10616593bf3f259240ba3f6e8" id="r_a48bbe8e10616593bf3f259240ba3f6e8"><td class="memItemLeft" align="right" valign="top"><a id="a48bbe8e10616593bf3f259240ba3f6e8" name="a48bbe8e10616593bf3f259240ba3f6e8"></a>
+std::vector&lt; std::vector&lt; <a class="el" href="class_room.html">Room</a> * &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>m_rooms</b></td></tr>
+<tr class="separator:a48bbe8e10616593bf3f259240ba3f6e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a51ab687d8edc6364c84975af07bff3c2" id="r_a51ab687d8edc6364c84975af07bff3c2"><td class="memItemLeft" align="right" valign="top"><a id="a51ab687d8edc6364c84975af07bff3c2" name="a51ab687d8edc6364c84975af07bff3c2"></a>
+<a class="el" href="struct_game_context.html">GameContext</a>&#160;</td><td class="memItemRight" valign="bottom"><b>m_context</b></td></tr>
+<tr class="separator:a51ab687d8edc6364c84975af07bff3c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a47bb45f702c8b0848120670d4c7192da" id="r_a47bb45f702c8b0848120670d4c7192da"><td class="memItemLeft" align="right" valign="top"><a id="a47bb45f702c8b0848120670d4c7192da" name="a47bb45f702c8b0848120670d4c7192da"></a>
+std::unique_ptr&lt; <a class="el" href="class_game_state.html">GameState</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>m_game_state</b></td></tr>
+<tr class="separator:a47bb45f702c8b0848120670d4c7192da"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><blockquote class="doxtable">
+<p>создаем два конкретных строителя. Общие части выносим в <a class="el" href="class_common_builder.html">CommonBuilder</a> </p>
+</blockquote>
+</div><h2 class="groupheader">Методы</h2>
+<a id="ace9b0433bd9b849970e2b96965818789" name="ace9b0433bd9b849970e2b96965818789"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ace9b0433bd9b849970e2b96965818789">&#9670;&#160;</a></span>create_context()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void CommonBuilder::create_context </td>
+          <td>(</td>
+          <td class="paramtype">float</td>          <td class="paramname"><span class="paramname"><em>dynamic_objects_ratio</em></span>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int</td>          <td class="paramname"><span class="paramname"><em>players</em></span>&#160;)</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Создает контекст для игры </p>
+<p>Всегда в рандомное место располагаем пакмана. В качестве параметров передаем players, когда players = 2, создаем еще одного пакмана в рандомном месте. Дальше располагаем врагов в соотношении dynamic_objects_ratio, задаваемое в config.h, также в рандомные места. В оставшиеся свободные комнаты располагаем еду. </p>
+<blockquote class="doxtable">
+<p>в рандомное место располагаем пакмана </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>располагаем врагов рандомно </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>располагаем еду на оставшиеся места </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>в рандомное место под едой располагаем скример </p>
+</blockquote>
+
+<p>Замещает <a class="el" href="class_i_game_builder.html">IGameBuilder</a>.</p>
+
+</div>
+</div>
+<a id="a4e45999e05a45814ed25ed3adbbe07e0" name="a4e45999e05a45814ed25ed3adbbe07e0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4e45999e05a45814ed25ed3adbbe07e0">&#9670;&#160;</a></span>create_state()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void CommonBuilder::create_state </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>state_manager</em></span>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const sf::VideoMode &amp;</td>          <td class="paramname"><span class="paramname"><em>mode</em></span>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const std::string &amp;</td>          <td class="paramname"><span class="paramname"><em>window_title</em></span>&#160;)</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Cоздаем состояние <a class="el" href="class_game_state.html" title="Взаимодействие врага с объектами лабиринта, что порождает игровые события">GameState</a>, используя имя, режим окна и сслыку на менеджер состояний </p>
+
+<p>Замещает <a class="el" href="class_i_game_builder.html">IGameBuilder</a>.</p>
+
+</div>
+</div>
+<a id="aafef8d08b8bfdfccfde6ff56bfb99987" name="aafef8d08b8bfdfccfde6ff56bfb99987"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aafef8d08b8bfdfccfde6ff56bfb99987">&#9670;&#160;</a></span>get_game()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::unique_ptr&lt; <a class="el" href="class_game_state.html">GameState</a> &gt; CommonBuilder::get_game </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Получить результат строителя. </p>
+
+<p>Замещает <a class="el" href="class_i_game_builder.html">IGameBuilder</a>.</p>
+
+</div>
+</div>
+<a id="ae920c0a91e61aff620096c100e496da0" name="ae920c0a91e61aff620096c100e496da0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae920c0a91e61aff620096c100e496da0">&#9670;&#160;</a></span>set_all_to_state()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void CommonBuilder::set_all_to_state </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Созданный лабиринт и контекст назначаем созданному состоянию игры <a class="el" href="class_game_state.html" title="Взаимодействие врага с объектами лабиринта, что порождает игровые события">GameState</a>. </p>
+<blockquote class="doxtable">
+<p>назначаем лабиринт </p>
+</blockquote>
+
+<p>Замещает <a class="el" href="class_i_game_builder.html">IGameBuilder</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/BobBuilder/<a class="el" href="_game_builders_8h_source.html">GameBuilders.h</a></li>
+<li>source/application/BobBuilder/<b>GameBuilders.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_common_builder.html">CommonBuilder</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_common_builder.js b/assets/docs/html/class_common_builder.js
new file mode 100644
index 0000000000000000000000000000000000000000..5f85614ac1ade6a80ab8c633acfa801d62fabe64
--- /dev/null
+++ b/assets/docs/html/class_common_builder.js
@@ -0,0 +1,7 @@
+var class_common_builder =
+[
+    [ "create_context", "class_common_builder.html#ace9b0433bd9b849970e2b96965818789", null ],
+    [ "create_state", "class_common_builder.html#a4e45999e05a45814ed25ed3adbbe07e0", null ],
+    [ "get_game", "class_common_builder.html#aafef8d08b8bfdfccfde6ff56bfb99987", null ],
+    [ "set_all_to_state", "class_common_builder.html#ae920c0a91e61aff620096c100e496da0", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/class_common_builder.png b/assets/docs/html/class_common_builder.png
new file mode 100644
index 0000000000000000000000000000000000000000..89fede11aeb0dbc9ebf8989e8f98c4e47bfc91e2
Binary files /dev/null and b/assets/docs/html/class_common_builder.png differ
diff --git a/assets/docs/html/class_complex_builder-members.html b/assets/docs/html/class_complex_builder-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..dcea9890fb64e630daf948e63b6252a71db8029c
--- /dev/null
+++ b/assets/docs/html/class_complex_builder-members.html
@@ -0,0 +1,134 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_complex_builder.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">ComplexBuilder Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_complex_builder.html">ComplexBuilder</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>CommonBuilder</b>(float width, float height, float room_size) (определено в <a class="el" href="class_complex_builder.html">ComplexBuilder</a>)</td><td class="entry"><a class="el" href="class_complex_builder.html">ComplexBuilder</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_common_builder.html#ace9b0433bd9b849970e2b96965818789">create_context</a>(float dynamic_objects_ratio, int players) override</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_complex_builder.html#ac0dfa4956df4c1d1d9a61aa186fc8ac0">create_rooms</a>() override</td><td class="entry"><a class="el" href="class_complex_builder.html">ComplexBuilder</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_common_builder.html#a4e45999e05a45814ed25ed3adbbe07e0">create_state</a>(IStateManager &amp;state_manager, const sf::VideoMode &amp;mode, const std::string &amp;window_title) override</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_common_builder.html#aafef8d08b8bfdfccfde6ff56bfb99987">get_game</a>() override</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_context</b> (определено в <a class="el" href="class_common_builder.html">CommonBuilder</a>)</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_game_state</b> (определено в <a class="el" href="class_common_builder.html">CommonBuilder</a>)</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_height</b> (определено в <a class="el" href="class_common_builder.html">CommonBuilder</a>)</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_room_size</b> (определено в <a class="el" href="class_common_builder.html">CommonBuilder</a>)</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_rooms</b> (определено в <a class="el" href="class_common_builder.html">CommonBuilder</a>)</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_width</b> (определено в <a class="el" href="class_common_builder.html">CommonBuilder</a>)</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_common_builder.html#ae920c0a91e61aff620096c100e496da0">set_all_to_state</a>() override</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_complex_builder.html#a93755bc2d5ac20722de6bce3d35aa336">set_rooms_sides</a>() override</td><td class="entry"><a class="el" href="class_complex_builder.html">ComplexBuilder</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IGameBuilder</b>()=default (определено в <a class="el" href="class_i_game_builder.html">IGameBuilder</a>)</td><td class="entry"><a class="el" href="class_i_game_builder.html">IGameBuilder</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_complex_builder.html b/assets/docs/html/class_complex_builder.html
new file mode 100644
index 0000000000000000000000000000000000000000..60478891b0394a11936d8e40b32186f302367620
--- /dev/null
+++ b/assets/docs/html/class_complex_builder.html
@@ -0,0 +1,294 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс ComplexBuilder</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_complex_builder.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_complex_builder-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс ComplexBuilder</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="_game_builders_8h_source.html">GameBuilders.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:ComplexBuilder:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_complex_builder.png" usemap="#ComplexBuilder_map" alt=""/>
+  <map id="ComplexBuilder_map" name="ComplexBuilder_map">
+<area href="class_common_builder.html" alt="CommonBuilder" shape="rect" coords="0,56,100,80"/>
+<area href="class_i_game_builder.html" alt="IGameBuilder" shape="rect" coords="0,0,100,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:ac0dfa4956df4c1d1d9a61aa186fc8ac0" id="r_ac0dfa4956df4c1d1d9a61aa186fc8ac0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac0dfa4956df4c1d1d9a61aa186fc8ac0">create_rooms</a> () override</td></tr>
+<tr class="separator:ac0dfa4956df4c1d1d9a61aa186fc8ac0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a93755bc2d5ac20722de6bce3d35aa336" id="r_a93755bc2d5ac20722de6bce3d35aa336"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a93755bc2d5ac20722de6bce3d35aa336">set_rooms_sides</a> () override</td></tr>
+<tr class="separator:a93755bc2d5ac20722de6bce3d35aa336"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a02bd852f1888116967ca1185e40bfba8" id="r_a02bd852f1888116967ca1185e40bfba8"><td class="memItemLeft" align="right" valign="top"><a id="a02bd852f1888116967ca1185e40bfba8" name="a02bd852f1888116967ca1185e40bfba8"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><b>CommonBuilder</b> (float width, float height, float room_size)</td></tr>
+<tr class="separator:a02bd852f1888116967ca1185e40bfba8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_common_builder"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_common_builder')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_common_builder.html">CommonBuilder</a></td></tr>
+<tr class="memitem:a02bd852f1888116967ca1185e40bfba8 inherit pub_methods_class_common_builder" id="r_a02bd852f1888116967ca1185e40bfba8"><td class="memItemLeft" align="right" valign="top">
+&#160;</td><td class="memItemRight" valign="bottom"><b>CommonBuilder</b> (float width, float height, float room_size)</td></tr>
+<tr class="separator:a02bd852f1888116967ca1185e40bfba8 inherit pub_methods_class_common_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ace9b0433bd9b849970e2b96965818789 inherit pub_methods_class_common_builder" id="r_ace9b0433bd9b849970e2b96965818789"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_common_builder.html#ace9b0433bd9b849970e2b96965818789">create_context</a> (float dynamic_objects_ratio, int players) override</td></tr>
+<tr class="memdesc:ace9b0433bd9b849970e2b96965818789 inherit pub_methods_class_common_builder"><td class="mdescLeft">&#160;</td><td class="mdescRight">Создает контекст для игры  <br /></td></tr>
+<tr class="separator:ace9b0433bd9b849970e2b96965818789 inherit pub_methods_class_common_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4e45999e05a45814ed25ed3adbbe07e0 inherit pub_methods_class_common_builder" id="r_a4e45999e05a45814ed25ed3adbbe07e0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_common_builder.html#a4e45999e05a45814ed25ed3adbbe07e0">create_state</a> (<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;state_manager, const sf::VideoMode &amp;mode, const std::string &amp;window_title) override</td></tr>
+<tr class="memdesc:a4e45999e05a45814ed25ed3adbbe07e0 inherit pub_methods_class_common_builder"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cоздаем состояние <a class="el" href="class_game_state.html" title="Взаимодействие врага с объектами лабиринта, что порождает игровые события">GameState</a>, используя имя, режим окна и сслыку на менеджер состояний  <br /></td></tr>
+<tr class="separator:a4e45999e05a45814ed25ed3adbbe07e0 inherit pub_methods_class_common_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae920c0a91e61aff620096c100e496da0 inherit pub_methods_class_common_builder" id="r_ae920c0a91e61aff620096c100e496da0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_common_builder.html#ae920c0a91e61aff620096c100e496da0">set_all_to_state</a> () override</td></tr>
+<tr class="memdesc:ae920c0a91e61aff620096c100e496da0 inherit pub_methods_class_common_builder"><td class="mdescLeft">&#160;</td><td class="mdescRight">Созданный лабиринт и контекст назначаем созданному состоянию игры <a class="el" href="class_game_state.html" title="Взаимодействие врага с объектами лабиринта, что порождает игровые события">GameState</a>.  <br /></td></tr>
+<tr class="separator:ae920c0a91e61aff620096c100e496da0 inherit pub_methods_class_common_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aafef8d08b8bfdfccfde6ff56bfb99987 inherit pub_methods_class_common_builder" id="r_aafef8d08b8bfdfccfde6ff56bfb99987"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="class_game_state.html">GameState</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_common_builder.html#aafef8d08b8bfdfccfde6ff56bfb99987">get_game</a> () override</td></tr>
+<tr class="memdesc:aafef8d08b8bfdfccfde6ff56bfb99987 inherit pub_methods_class_common_builder"><td class="mdescLeft">&#160;</td><td class="mdescRight">Получить результат строителя.  <br /></td></tr>
+<tr class="separator:aafef8d08b8bfdfccfde6ff56bfb99987 inherit pub_methods_class_common_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Дополнительные унаследованные члены</h2></td></tr>
+<tr class="inherit_header pro_attribs_class_common_builder"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_attribs_class_common_builder')"><img src="closed.png" alt="-"/>&#160;Защищенные данные унаследованные от <a class="el" href="class_common_builder.html">CommonBuilder</a></td></tr>
+<tr class="memitem:a21d4002b40948223e8e8fedf44a04b1a inherit pro_attribs_class_common_builder" id="r_a21d4002b40948223e8e8fedf44a04b1a"><td class="memItemLeft" align="right" valign="top">
+float&#160;</td><td class="memItemRight" valign="bottom"><b>m_width</b></td></tr>
+<tr class="separator:a21d4002b40948223e8e8fedf44a04b1a inherit pro_attribs_class_common_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac5552f46ab0d3ad530075981ead5746a inherit pro_attribs_class_common_builder" id="r_ac5552f46ab0d3ad530075981ead5746a"><td class="memItemLeft" align="right" valign="top">
+float&#160;</td><td class="memItemRight" valign="bottom"><b>m_height</b></td></tr>
+<tr class="separator:ac5552f46ab0d3ad530075981ead5746a inherit pro_attribs_class_common_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1bc23e74a5489c805205cf6d81d81ef3 inherit pro_attribs_class_common_builder" id="r_a1bc23e74a5489c805205cf6d81d81ef3"><td class="memItemLeft" align="right" valign="top">
+float&#160;</td><td class="memItemRight" valign="bottom"><b>m_room_size</b></td></tr>
+<tr class="separator:a1bc23e74a5489c805205cf6d81d81ef3 inherit pro_attribs_class_common_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a48bbe8e10616593bf3f259240ba3f6e8 inherit pro_attribs_class_common_builder" id="r_a48bbe8e10616593bf3f259240ba3f6e8"><td class="memItemLeft" align="right" valign="top">
+std::vector&lt; std::vector&lt; <a class="el" href="class_room.html">Room</a> * &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>m_rooms</b></td></tr>
+<tr class="separator:a48bbe8e10616593bf3f259240ba3f6e8 inherit pro_attribs_class_common_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a51ab687d8edc6364c84975af07bff3c2 inherit pro_attribs_class_common_builder" id="r_a51ab687d8edc6364c84975af07bff3c2"><td class="memItemLeft" align="right" valign="top">
+<a class="el" href="struct_game_context.html">GameContext</a>&#160;</td><td class="memItemRight" valign="bottom"><b>m_context</b></td></tr>
+<tr class="separator:a51ab687d8edc6364c84975af07bff3c2 inherit pro_attribs_class_common_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a47bb45f702c8b0848120670d4c7192da inherit pro_attribs_class_common_builder" id="r_a47bb45f702c8b0848120670d4c7192da"><td class="memItemLeft" align="right" valign="top">
+std::unique_ptr&lt; <a class="el" href="class_game_state.html">GameState</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>m_game_state</b></td></tr>
+<tr class="separator:a47bb45f702c8b0848120670d4c7192da inherit pro_attribs_class_common_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><blockquote class="doxtable">
+<p>сложный строитель для уровня HARD </p>
+</blockquote>
+</div><h2 class="groupheader">Методы</h2>
+<a id="ac0dfa4956df4c1d1d9a61aa186fc8ac0" name="ac0dfa4956df4c1d1d9a61aa186fc8ac0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac0dfa4956df4c1d1d9a61aa186fc8ac0">&#9670;&#160;</a></span>create_rooms()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void ComplexBuilder::create_rooms </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>создание комнат </p>
+</blockquote>
+
+<p>Замещает <a class="el" href="class_i_game_builder.html">IGameBuilder</a>.</p>
+
+</div>
+</div>
+<a id="a93755bc2d5ac20722de6bce3d35aa336" name="a93755bc2d5ac20722de6bce3d35aa336"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a93755bc2d5ac20722de6bce3d35aa336">&#9670;&#160;</a></span>set_rooms_sides()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void ComplexBuilder::set_rooms_sides </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>Генерация лабиринта через алгоритм Эллера </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>все комнаты нулевой строки сверху получают стену UP </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>все комнаты последней строки снизу получают стену DOWN </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>создаем проход направо между соседними комнатами </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>все комнаты нулевого столбца слева получают стену LEFT </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>все комнаты последнего столбца справа получают стену RIGHT </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>присваиваем ячейкам свое уникальное множество </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>исключаем последнюю строку </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>создавать стену или нет? </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>объединение множеств </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>соединение с ячейкой снизу/вверх </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>гарантируем, что в каждом множетве будет хотя бы один выход вниз </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>если есть еще ячейки, у которых нет выхода вниз -&gt; можно поставить стену </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>обязательно ставим проход </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>всегда ставим проход </p>
+</blockquote>
+<p>обновляем множества для следующей строки</p>
+
+<p>Замещает <a class="el" href="class_i_game_builder.html">IGameBuilder</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/BobBuilder/<a class="el" href="_game_builders_8h_source.html">GameBuilders.h</a></li>
+<li>source/application/BobBuilder/<b>GameBuilders.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_complex_builder.html">ComplexBuilder</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_complex_builder.js b/assets/docs/html/class_complex_builder.js
new file mode 100644
index 0000000000000000000000000000000000000000..dfa20c406da078f25bb7e38d362650a579c3e196
--- /dev/null
+++ b/assets/docs/html/class_complex_builder.js
@@ -0,0 +1,5 @@
+var class_complex_builder =
+[
+    [ "create_rooms", "class_complex_builder.html#ac0dfa4956df4c1d1d9a61aa186fc8ac0", null ],
+    [ "set_rooms_sides", "class_complex_builder.html#a93755bc2d5ac20722de6bce3d35aa336", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/class_complex_builder.png b/assets/docs/html/class_complex_builder.png
new file mode 100644
index 0000000000000000000000000000000000000000..d5a742d1724ed3f467dd2330201047be0abb8ca9
Binary files /dev/null and b/assets/docs/html/class_complex_builder.png differ
diff --git a/assets/docs/html/class_context_manager-members.html b/assets/docs/html/class_context_manager-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..63ec269ecf6fbe309e55ac77e5c3021699cb50de
--- /dev/null
+++ b/assets/docs/html/class_context_manager-members.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_context_manager.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">ContextManager Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_context_manager.html">ContextManager</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_context_manager.html#a690898db09f92499c35fdbf24a7c3821">get_current_context</a>()</td><td class="entry"><a class="el" href="class_context_manager.html">ContextManager</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_context_manager.html#a54b7081b2e31ec59e3a06ef7b8eeed8e">reset</a>(GameContext &amp;&amp;context)</td><td class="entry"><a class="el" href="class_context_manager.html">ContextManager</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_context_manager.html#a34dc3ea752a37fe9c54dff33e1c4b138">restore_previous_context</a>()</td><td class="entry"><a class="el" href="class_context_manager.html">ContextManager</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>save_current_context</b>() (определено в <a class="el" href="class_context_manager.html">ContextManager</a>)</td><td class="entry"><a class="el" href="class_context_manager.html">ContextManager</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_context_manager.html b/assets/docs/html/class_context_manager.html
new file mode 100644
index 0000000000000000000000000000000000000000..ce39f9d16af7c74a11d8b2cfb0bbe09cd5293a00
--- /dev/null
+++ b/assets/docs/html/class_context_manager.html
@@ -0,0 +1,215 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс ContextManager</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_context_manager.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_context_manager-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс ContextManager</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a64ed18f0d1b3f9c69a6c3cbb5565f2d0" id="r_a64ed18f0d1b3f9c69a6c3cbb5565f2d0"><td class="memItemLeft" align="right" valign="top"><a id="a64ed18f0d1b3f9c69a6c3cbb5565f2d0" name="a64ed18f0d1b3f9c69a6c3cbb5565f2d0"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>save_current_context</b> ()</td></tr>
+<tr class="separator:a64ed18f0d1b3f9c69a6c3cbb5565f2d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a34dc3ea752a37fe9c54dff33e1c4b138" id="r_a34dc3ea752a37fe9c54dff33e1c4b138"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a34dc3ea752a37fe9c54dff33e1c4b138">restore_previous_context</a> ()</td></tr>
+<tr class="separator:a34dc3ea752a37fe9c54dff33e1c4b138"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a54b7081b2e31ec59e3a06ef7b8eeed8e" id="r_a54b7081b2e31ec59e3a06ef7b8eeed8e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a54b7081b2e31ec59e3a06ef7b8eeed8e">reset</a> (<a class="el" href="struct_game_context.html">GameContext</a> &amp;&amp;context)</td></tr>
+<tr class="separator:a54b7081b2e31ec59e3a06ef7b8eeed8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a690898db09f92499c35fdbf24a7c3821" id="r_a690898db09f92499c35fdbf24a7c3821"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_game_context.html">GameContext</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a690898db09f92499c35fdbf24a7c3821">get_current_context</a> ()</td></tr>
+<tr class="separator:a690898db09f92499c35fdbf24a7c3821"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Методы</h2>
+<a id="a690898db09f92499c35fdbf24a7c3821" name="a690898db09f92499c35fdbf24a7c3821"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a690898db09f92499c35fdbf24a7c3821">&#9670;&#160;</a></span>get_current_context()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="struct_game_context.html">GameContext</a> &amp; ContextManager::get_current_context </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel inline">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>установка исходного состояния </p>
+</blockquote>
+
+</div>
+</div>
+<a id="a54b7081b2e31ec59e3a06ef7b8eeed8e" name="a54b7081b2e31ec59e3a06ef7b8eeed8e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a54b7081b2e31ec59e3a06ef7b8eeed8e">&#9670;&#160;</a></span>reset()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void ContextManager::reset </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="struct_game_context.html">GameContext</a> &amp;&amp;</td>          <td class="paramname"><span class="paramname"><em>context</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>восстановление ранее сохраненного состояния </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>установка исходного состояния </p>
+</blockquote>
+<p>Стираем старую историю -&gt; запоминаем полученное состояние -&gt; склонируем его в вершину стека состояний </p>
+
+</div>
+</div>
+<a id="a34dc3ea752a37fe9c54dff33e1c4b138" name="a34dc3ea752a37fe9c54dff33e1c4b138"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a34dc3ea752a37fe9c54dff33e1c4b138">&#9670;&#160;</a></span>restore_previous_context()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void ContextManager::restore_previous_context </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>сохранения текущего контекста на вершину стека </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>Восстановление предыдущих контекстов </p>
+</blockquote>
+<p>При восстановлении будет "изымать" из истории контексты, пока в истории не останется всего 1 - текущий Если при наличии всего 1 контекста запросят "отмену состояний", то в текущий контекст будет записан m_initial_context </p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Context/<a class="el" href="_context_8h_source.html">Context.h</a></li>
+<li>source/application/Context/<b>Context.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_context_manager.html">ContextManager</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_context_manager.js b/assets/docs/html/class_context_manager.js
new file mode 100644
index 0000000000000000000000000000000000000000..9b1342d2b65a4a340babc97bf9c1788ba0b7c3ad
--- /dev/null
+++ b/assets/docs/html/class_context_manager.js
@@ -0,0 +1,6 @@
+var class_context_manager =
+[
+    [ "get_current_context", "class_context_manager.html#a690898db09f92499c35fdbf24a7c3821", null ],
+    [ "reset", "class_context_manager.html#a54b7081b2e31ec59e3a06ef7b8eeed8e", null ],
+    [ "restore_previous_context", "class_context_manager.html#a34dc3ea752a37fe9c54dff33e1c4b138", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/class_delete_static_entity-members.html b/assets/docs/html/class_delete_static_entity-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..4900f30c2a7c9ad2adde822bab5ced9b9d2d86ae
--- /dev/null
+++ b/assets/docs/html/class_delete_static_entity-members.html
@@ -0,0 +1,125 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_delete_static_entity.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">DeleteStaticEntity Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_delete_static_entity.html">DeleteStaticEntity</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>add_observer</b>(IObserver *observer) (определено в <a class="el" href="class_i_game_event.html">IGameEvent</a>)</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>DeleteStaticEntity</b>(IStaticEntity *ptr_entity) (определено в <a class="el" href="class_delete_static_entity.html">DeleteStaticEntity</a>)</td><td class="entry"><a class="el" href="class_delete_static_entity.html">DeleteStaticEntity</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_delete_static_entity.html#aadc4bbbd570e947fca78e222dbfacb43">handle</a>(GameContext *context) override</td><td class="entry"><a class="el" href="class_delete_static_entity.html">DeleteStaticEntity</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>notify</b>() const (определено в <a class="el" href="class_i_game_event.html">IGameEvent</a>)</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">~IGameEvent</a>()=default</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_delete_static_entity.html b/assets/docs/html/class_delete_static_entity.html
new file mode 100644
index 0000000000000000000000000000000000000000..70f9e91331b2a567e1ff21ad7d1279775167f08a
--- /dev/null
+++ b/assets/docs/html/class_delete_static_entity.html
@@ -0,0 +1,195 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс DeleteStaticEntity</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_delete_static_entity.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_delete_static_entity-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс DeleteStaticEntity</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Удаление еды.  
+ <a href="#details">Подробнее...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_i_game_event_8h_source.html">IGameEvent.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:DeleteStaticEntity:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_delete_static_entity.png" usemap="#DeleteStaticEntity_map" alt=""/>
+  <map id="DeleteStaticEntity_map" name="DeleteStaticEntity_map">
+<area href="class_i_game_event.html" title="Абстрактрый класс для различных игровых событий" alt="IGameEvent" shape="rect" coords="0,0,110,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a1ca6dcaeb84694d3bf68e910bffe4fd4" id="r_a1ca6dcaeb84694d3bf68e910bffe4fd4"><td class="memItemLeft" align="right" valign="top"><a id="a1ca6dcaeb84694d3bf68e910bffe4fd4" name="a1ca6dcaeb84694d3bf68e910bffe4fd4"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><b>DeleteStaticEntity</b> (<a class="el" href="struct_i_static_entity.html">IStaticEntity</a> *ptr_entity)</td></tr>
+<tr class="separator:a1ca6dcaeb84694d3bf68e910bffe4fd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aadc4bbbd570e947fca78e222dbfacb43" id="r_aadc4bbbd570e947fca78e222dbfacb43"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aadc4bbbd570e947fca78e222dbfacb43">handle</a> (<a class="el" href="struct_game_context.html">GameContext</a> *context) override</td></tr>
+<tr class="separator:aadc4bbbd570e947fca78e222dbfacb43"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_i_game_event"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_i_game_event')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_i_game_event.html">IGameEvent</a></td></tr>
+<tr class="memitem:ae84f5f2b3d3bd7834e334c4e6fcde711 inherit pub_methods_class_i_game_event" id="r_ae84f5f2b3d3bd7834e334c4e6fcde711"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">~IGameEvent</a> ()=default</td></tr>
+<tr class="separator:ae84f5f2b3d3bd7834e334c4e6fcde711 inherit pub_methods_class_i_game_event"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b231dafdf4bdbc98f7d75b5205a8b99 inherit pub_methods_class_i_game_event" id="r_a6b231dafdf4bdbc98f7d75b5205a8b99"><td class="memItemLeft" align="right" valign="top">
+void&#160;</td><td class="memItemRight" valign="bottom"><b>add_observer</b> (<a class="el" href="class_i_observer.html">IObserver</a> *observer)</td></tr>
+<tr class="separator:a6b231dafdf4bdbc98f7d75b5205a8b99 inherit pub_methods_class_i_game_event"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Дополнительные унаследованные члены</h2></td></tr>
+<tr class="inherit_header pro_methods_class_i_game_event"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_methods_class_i_game_event')"><img src="closed.png" alt="-"/>&#160;Защищенные члены унаследованные от <a class="el" href="class_i_game_event.html">IGameEvent</a></td></tr>
+<tr class="memitem:a1bc7533cd09ababa60363e5afbb7e787 inherit pro_methods_class_i_game_event" id="r_a1bc7533cd09ababa60363e5afbb7e787"><td class="memItemLeft" align="right" valign="top">
+void&#160;</td><td class="memItemRight" valign="bottom"><b>notify</b> () const</td></tr>
+<tr class="separator:a1bc7533cd09ababa60363e5afbb7e787 inherit pro_methods_class_i_game_event"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p>Удаление еды. </p>
+<p>Такое событие возникает при взаимодействии пакмана с едой. В ресурсах храним сущность, которую хотим удалить. </p>
+</div><h2 class="groupheader">Методы</h2>
+<a id="aadc4bbbd570e947fca78e222dbfacb43" name="aadc4bbbd570e947fca78e222dbfacb43"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aadc4bbbd570e947fca78e222dbfacb43">&#9670;&#160;</a></span>handle()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void DeleteStaticEntity::handle </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="struct_game_context.html">GameContext</a> *</td>          <td class="paramname"><span class="paramname"><em>context</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>оповещаем, что пакман съел еду </p>
+</blockquote>
+
+<p>Замещает <a class="el" href="class_i_game_event.html">IGameEvent</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Event/<a class="el" href="_i_game_event_8h_source.html">IGameEvent.h</a></li>
+<li>source/application/Event/<b>IGameEvent.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_delete_static_entity.html">DeleteStaticEntity</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_delete_static_entity.js b/assets/docs/html/class_delete_static_entity.js
new file mode 100644
index 0000000000000000000000000000000000000000..a50a73821e19d86c56c23956a77d65521aa021eb
--- /dev/null
+++ b/assets/docs/html/class_delete_static_entity.js
@@ -0,0 +1,4 @@
+var class_delete_static_entity =
+[
+    [ "handle", "class_delete_static_entity.html#aadc4bbbd570e947fca78e222dbfacb43", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/class_delete_static_entity.png b/assets/docs/html/class_delete_static_entity.png
new file mode 100644
index 0000000000000000000000000000000000000000..1600bb0bf6ef9cc2cd19ce6438b36d1a86dffe82
Binary files /dev/null and b/assets/docs/html/class_delete_static_entity.png differ
diff --git a/assets/docs/html/class_enemy-members.html b/assets/docs/html/class_enemy-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..4258d239be2dd3219d9354f619b290972127b729
--- /dev/null
+++ b/assets/docs/html/class_enemy-members.html
@@ -0,0 +1,132 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_enemy.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Enemy Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_enemy.html">Enemy</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_enemy.html#a12c591e7c61ccafe8f0c0a5727434d2f">accept</a>(IVisitor *ptr_visitor) override</td><td class="entry"><a class="el" href="class_enemy.html">Enemy</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_enemy.html#a34d900423f808c057a766daca104c6f6">action</a>() override</td><td class="entry"><a class="el" href="class_enemy.html">Enemy</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_enemy.html#aae122c696ec1c65f90d7625683183a67">clone</a>() const override</td><td class="entry"><a class="el" href="class_enemy.html">Enemy</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>draw_into</b>(sf::RenderWindow &amp;window) override (определено в <a class="el" href="class_enemy.html">Enemy</a>)</td><td class="entry"><a class="el" href="class_enemy.html">Enemy</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Enemy</b>() (определено в <a class="el" href="class_enemy.html">Enemy</a>)</td><td class="entry"><a class="el" href="class_enemy.html">Enemy</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>get_location</b>() (определено в <a class="el" href="class_i_entity.html">IEntity</a>)</td><td class="entry"><a class="el" href="class_i_entity.html">IEntity</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_ptr_room</b> (определено в <a class="el" href="class_i_entity.html">IEntity</a>)</td><td class="entry"><a class="el" href="class_i_entity.html">IEntity</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>prepare_for_drawing</b>() override (определено в <a class="el" href="class_enemy.html">Enemy</a>)</td><td class="entry"><a class="el" href="class_enemy.html">Enemy</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_location</b>(Room *ptr_room) (определено в <a class="el" href="class_i_entity.html">IEntity</a>)</td><td class="entry"><a class="el" href="class_i_entity.html">IEntity</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>set_texture</b>(MyTexture *ptr_texture) (определено в <a class="el" href="class_enemy.html">Enemy</a>)</td><td class="entry"><a class="el" href="class_enemy.html">Enemy</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~Enemy</b>() override=default (определено в <a class="el" href="class_enemy.html">Enemy</a>)</td><td class="entry"><a class="el" href="class_enemy.html">Enemy</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IDrawable</b>()=default (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_enemy.html b/assets/docs/html/class_enemy.html
new file mode 100644
index 0000000000000000000000000000000000000000..db6395adc74b445d0f6c6e3088b6c3c021ede5d7
--- /dev/null
+++ b/assets/docs/html/class_enemy.html
@@ -0,0 +1,327 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс Enemy</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_enemy.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_enemy-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс Enemy</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Конкретный наследник <a class="el" href="class_enemy.html" title="Конкретный наследник Enemy - враг. Если пакман наткнется хотя бы на одного врага, то он умрет -&gt; уров...">Enemy</a> - враг. Если пакман наткнется хотя бы на одного врага, то он умрет -&gt; уровень провален.  
+ <a href="#details">Подробнее...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_i_entity_8h_source.html">IEntity.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:Enemy:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_enemy.png" usemap="#Enemy_map" alt=""/>
+  <map id="Enemy_map" name="Enemy_map">
+<area href="struct_i_dynamic_entity.html" title="Динамические сущности, наследник IEntity -&gt; может выполнять какие-то действия" alt="IDynamicEntity" shape="rect" coords="52,168,147,192"/>
+<area href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт." alt="IEntity" shape="rect" coords="0,112,95,136"/>
+<area href="class_i_visitable.html" alt="IVisitable" shape="rect" coords="105,112,200,136"/>
+<area href="struct_i_preparable.html" alt="IPreparable" shape="rect" coords="0,56,95,80"/>
+<area href="struct_i_drawable.html" title="Общий интерфейс для отрисовываемых сущностей и объектов" alt="IDrawable" shape="rect" coords="0,0,95,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a59951068d32f2d5104827971b0f283c0" id="r_a59951068d32f2d5104827971b0f283c0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a59951068d32f2d5104827971b0f283c0">draw_into</a> (sf::RenderWindow &amp;window) override</td></tr>
+<tr class="separator:a59951068d32f2d5104827971b0f283c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a34d900423f808c057a766daca104c6f6" id="r_a34d900423f808c057a766daca104c6f6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a34d900423f808c057a766daca104c6f6">action</a> () override</td></tr>
+<tr class="memdesc:a34d900423f808c057a766daca104c6f6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Перемещение врагов в случайном направлении через случайный промежуток времени, ограниченный диапозоном  <br /></td></tr>
+<tr class="separator:a34d900423f808c057a766daca104c6f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a750428bd11589847c30ad9d2754d4397" id="r_a750428bd11589847c30ad9d2754d4397"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a750428bd11589847c30ad9d2754d4397">prepare_for_drawing</a> () override</td></tr>
+<tr class="separator:a750428bd11589847c30ad9d2754d4397"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a93934cf6eb0ff561436e2759d18813f1" id="r_a93934cf6eb0ff561436e2759d18813f1"><td class="memItemLeft" align="right" valign="top"><a id="a93934cf6eb0ff561436e2759d18813f1" name="a93934cf6eb0ff561436e2759d18813f1"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_texture</b> (<a class="el" href="class_my_texture.html">MyTexture</a> *ptr_texture)</td></tr>
+<tr class="separator:a93934cf6eb0ff561436e2759d18813f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aae122c696ec1c65f90d7625683183a67" id="r_aae122c696ec1c65f90d7625683183a67"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="struct_i_dynamic_entity.html">IDynamicEntity</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aae122c696ec1c65f90d7625683183a67">clone</a> () const override</td></tr>
+<tr class="separator:aae122c696ec1c65f90d7625683183a67"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12c591e7c61ccafe8f0c0a5727434d2f" id="r_a12c591e7c61ccafe8f0c0a5727434d2f"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="class_i_game_event.html">IGameEvent</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a12c591e7c61ccafe8f0c0a5727434d2f">accept</a> (<a class="el" href="class_i_visitor.html">IVisitor</a> *ptr_visitor) override</td></tr>
+<tr class="separator:a12c591e7c61ccafe8f0c0a5727434d2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_i_entity"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_i_entity')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_i_entity.html">IEntity</a></td></tr>
+<tr class="memitem:a548495c468f307c780941faa5b4c08a8 inherit pub_methods_class_i_entity" id="r_a548495c468f307c780941faa5b4c08a8"><td class="memItemLeft" align="right" valign="top">
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_location</b> (<a class="el" href="class_room.html">Room</a> *ptr_room)</td></tr>
+<tr class="separator:a548495c468f307c780941faa5b4c08a8 inherit pub_methods_class_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab24f318dbb232b2feb00115b7124e256 inherit pub_methods_class_i_entity" id="r_ab24f318dbb232b2feb00115b7124e256"><td class="memItemLeft" align="right" valign="top">
+<a class="el" href="class_room.html">Room</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>get_location</b> ()</td></tr>
+<tr class="separator:ab24f318dbb232b2feb00115b7124e256 inherit pub_methods_class_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Дополнительные унаследованные члены</h2></td></tr>
+<tr class="inherit_header pro_attribs_class_i_entity"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_attribs_class_i_entity')"><img src="closed.png" alt="-"/>&#160;Защищенные данные унаследованные от <a class="el" href="class_i_entity.html">IEntity</a></td></tr>
+<tr class="memitem:a7d0bfa7b8516df82bd6de6b6283f0315 inherit pro_attribs_class_i_entity" id="r_a7d0bfa7b8516df82bd6de6b6283f0315"><td class="memItemLeft" align="right" valign="top">
+<a class="el" href="class_room.html">Room</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>m_ptr_room</b></td></tr>
+<tr class="separator:a7d0bfa7b8516df82bd6de6b6283f0315 inherit pro_attribs_class_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p>Конкретный наследник <a class="el" href="class_enemy.html" title="Конкретный наследник Enemy - враг. Если пакман наткнется хотя бы на одного врага, то он умрет -&gt; уров...">Enemy</a> - враг. Если пакман наткнется хотя бы на одного врага, то он умрет -&gt; уровень провален. </p>
+</div><h2 class="groupheader">Методы</h2>
+<a id="a12c591e7c61ccafe8f0c0a5727434d2f" name="a12c591e7c61ccafe8f0c0a5727434d2f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a12c591e7c61ccafe8f0c0a5727434d2f">&#9670;&#160;</a></span>accept()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::unique_ptr&lt; <a class="el" href="class_i_game_event.html">IGameEvent</a> &gt; Enemy::accept </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="class_i_visitor.html">IVisitor</a> *</td>          <td class="paramname"><span class="paramname"><em>ptr_visitor</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>принятие посетителя для <a class="el" href="class_enemy.html" title="Конкретный наследник Enemy - враг. Если пакман наткнется хотя бы на одного врага, то он умрет -&gt; уров...">Enemy</a> и <a class="el" href="class_food.html" title="Наследник IStaticEntity - еда.">Food</a> </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>передача посетителю самого себя </p>
+</blockquote>
+
+<p>Замещает <a class="el" href="class_i_visitable.html">IVisitable</a>.</p>
+
+</div>
+</div>
+<a id="a34d900423f808c057a766daca104c6f6" name="a34d900423f808c057a766daca104c6f6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a34d900423f808c057a766daca104c6f6">&#9670;&#160;</a></span>action()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Enemy::action </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Перемещение врагов в случайном направлении через случайный промежуток времени, ограниченный диапозоном </p>
+<blockquote class="doxtable">
+<p>враг бездействует </p>
+</blockquote>
+
+<p>Замещает <a class="el" href="struct_i_dynamic_entity.html">IDynamicEntity</a>.</p>
+
+</div>
+</div>
+<a id="aae122c696ec1c65f90d7625683183a67" name="aae122c696ec1c65f90d7625683183a67"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aae122c696ec1c65f90d7625683183a67">&#9670;&#160;</a></span>clone()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::unique_ptr&lt; <a class="el" href="struct_i_dynamic_entity.html">IDynamicEntity</a> &gt; Enemy::clone </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>копируем самого себя </p>
+</blockquote>
+
+<p>Замещает <a class="el" href="struct_i_dynamic_entity.html">IDynamicEntity</a>.</p>
+
+</div>
+</div>
+<a id="a59951068d32f2d5104827971b0f283c0" name="a59951068d32f2d5104827971b0f283c0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a59951068d32f2d5104827971b0f283c0">&#9670;&#160;</a></span>draw_into()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Enemy::draw_into </td>
+          <td>(</td>
+          <td class="paramtype">sf::RenderWindow &amp;</td>          <td class="paramname"><span class="paramname"><em>window</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="struct_i_drawable.html">IDrawable</a>.</p>
+
+</div>
+</div>
+<a id="a750428bd11589847c30ad9d2754d4397" name="a750428bd11589847c30ad9d2754d4397"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a750428bd11589847c30ad9d2754d4397">&#9670;&#160;</a></span>prepare_for_drawing()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Enemy::prepare_for_drawing </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="struct_i_preparable.html">IPreparable</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Drawable/Entity/<a class="el" href="_i_entity_8h_source.html">IEntity.h</a></li>
+<li>source/application/Drawable/Entity/<b>IEntity.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_enemy.html">Enemy</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_enemy.js b/assets/docs/html/class_enemy.js
new file mode 100644
index 0000000000000000000000000000000000000000..21a910a39e9cb7c4a6e06edea0ec5ddc3e3ce6c7
--- /dev/null
+++ b/assets/docs/html/class_enemy.js
@@ -0,0 +1,6 @@
+var class_enemy =
+[
+    [ "accept", "class_enemy.html#a12c591e7c61ccafe8f0c0a5727434d2f", null ],
+    [ "action", "class_enemy.html#a34d900423f808c057a766daca104c6f6", null ],
+    [ "clone", "class_enemy.html#aae122c696ec1c65f90d7625683183a67", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/class_enemy.png b/assets/docs/html/class_enemy.png
new file mode 100644
index 0000000000000000000000000000000000000000..64bb84c471f1cd2b1daf27dc9d6062a31708263d
Binary files /dev/null and b/assets/docs/html/class_enemy.png differ
diff --git a/assets/docs/html/class_enemy_texture-members.html b/assets/docs/html/class_enemy_texture-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..75d285db04b606261afea450b77fe0514be5be36
--- /dev/null
+++ b/assets/docs/html/class_enemy_texture-members.html
@@ -0,0 +1,132 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_enemy_texture.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">EnemyTexture Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_enemy_texture.html">EnemyTexture</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Direction</b> перечисление (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>DOWN</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_texture</b>() override (определено в <a class="el" href="class_enemy_texture.html">EnemyTexture</a>)</td><td class="entry"><a class="el" href="class_enemy_texture.html">EnemyTexture</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>instance</b>() (определено в <a class="el" href="class_enemy_texture.html">EnemyTexture</a>)</td><td class="entry"><a class="el" href="class_enemy_texture.html">EnemyTexture</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>LEFT</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_direction</b> (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>MyTexture</b>()=default (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>MyTexture</b>(const MyTexture &amp;)=delete (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(const MyTexture &amp;)=delete (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>RIGHT</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_direction</b>(Direction direction) (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>UP</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_enemy_texture.html b/assets/docs/html/class_enemy_texture.html
new file mode 100644
index 0000000000000000000000000000000000000000..73fa14c0b5e97d5bf63bbf94c142a60707798e01
--- /dev/null
+++ b/assets/docs/html/class_enemy_texture.html
@@ -0,0 +1,199 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс EnemyTexture</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_enemy_texture.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="#pub-static-methods">Открытые статические члены</a> &#124;
+<a href="class_enemy_texture-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс EnemyTexture</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Граф наследования:EnemyTexture:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_enemy_texture.png" usemap="#EnemyTexture_map" alt=""/>
+  <map id="EnemyTexture_map" name="EnemyTexture_map">
+<area href="class_my_texture.html" alt="MyTexture" shape="rect" coords="0,0,92,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:adc6d7c679c65fb02311d2700ac8def02" id="r_adc6d7c679c65fb02311d2700ac8def02"><td class="memItemLeft" align="right" valign="top">sf::Texture &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#adc6d7c679c65fb02311d2700ac8def02">get_texture</a> () override</td></tr>
+<tr class="separator:adc6d7c679c65fb02311d2700ac8def02"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_my_texture"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_my_texture')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_my_texture.html">MyTexture</a></td></tr>
+<tr class="memitem:ab6327857e381e8f9ff6ea9d4a01c62c8 inherit pub_methods_class_my_texture" id="r_ab6327857e381e8f9ff6ea9d4a01c62c8"><td class="memItemLeft" align="right" valign="top">
+&#160;</td><td class="memItemRight" valign="bottom"><b>MyTexture</b> (const <a class="el" href="class_my_texture.html">MyTexture</a> &amp;)=delete</td></tr>
+<tr class="separator:ab6327857e381e8f9ff6ea9d4a01c62c8 inherit pub_methods_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2968e7cbf400c6d3d210724ef0eb99b6 inherit pub_methods_class_my_texture" id="r_a2968e7cbf400c6d3d210724ef0eb99b6"><td class="memItemLeft" align="right" valign="top">
+<a class="el" href="class_my_texture.html">MyTexture</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="class_my_texture.html">MyTexture</a> &amp;)=delete</td></tr>
+<tr class="separator:a2968e7cbf400c6d3d210724ef0eb99b6 inherit pub_methods_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aadd40b268663d9064d45de162004fac6 inherit pub_methods_class_my_texture" id="r_aadd40b268663d9064d45de162004fac6"><td class="memItemLeft" align="right" valign="top">
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_direction</b> (Direction direction)</td></tr>
+<tr class="separator:aadd40b268663d9064d45de162004fac6 inherit pub_methods_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
+Открытые статические члены</h2></td></tr>
+<tr class="memitem:a6106800cc4257c16924f5870f518e76b" id="r_a6106800cc4257c16924f5870f518e76b"><td class="memItemLeft" align="right" valign="top"><a id="a6106800cc4257c16924f5870f518e76b" name="a6106800cc4257c16924f5870f518e76b"></a>
+static <a class="el" href="class_enemy_texture.html">EnemyTexture</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>instance</b> ()</td></tr>
+<tr class="separator:a6106800cc4257c16924f5870f518e76b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Дополнительные унаследованные члены</h2></td></tr>
+<tr class="inherit_header pub_types_class_my_texture"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_types_class_my_texture')"><img src="closed.png" alt="-"/>&#160;Открытые типы унаследованные от <a class="el" href="class_my_texture.html">MyTexture</a></td></tr>
+<tr class="memitem:a316c15cca20dd7993c379b6e5bcf4913 inherit pub_types_class_my_texture" id="r_a316c15cca20dd7993c379b6e5bcf4913"><td class="memItemLeft" align="right" valign="top"><a id="a316c15cca20dd7993c379b6e5bcf4913" name="a316c15cca20dd7993c379b6e5bcf4913"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><b>Direction</b> { <b>UP</b>
+, <b>DOWN</b>
+, <b>RIGHT</b>
+, <b>LEFT</b>
+ }</td></tr>
+<tr class="separator:a316c15cca20dd7993c379b6e5bcf4913 inherit pub_types_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_class_my_texture"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_attribs_class_my_texture')"><img src="closed.png" alt="-"/>&#160;Защищенные данные унаследованные от <a class="el" href="class_my_texture.html">MyTexture</a></td></tr>
+<tr class="memitem:a9c56deb491e39a56350cc8029567d001 inherit pro_attribs_class_my_texture" id="r_a9c56deb491e39a56350cc8029567d001"><td class="memItemLeft" align="right" valign="top">
+Direction&#160;</td><td class="memItemRight" valign="bottom"><b>m_direction</b> = UP</td></tr>
+<tr class="separator:a9c56deb491e39a56350cc8029567d001 inherit pro_attribs_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Методы</h2>
+<a id="adc6d7c679c65fb02311d2700ac8def02" name="adc6d7c679c65fb02311d2700ac8def02"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adc6d7c679c65fb02311d2700ac8def02">&#9670;&#160;</a></span>get_texture()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">sf::Texture &amp; EnemyTexture::get_texture </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="class_my_texture.html">MyTexture</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Drawable/Entity/<a class="el" href="_my_texture_8h_source.html">MyTexture.h</a></li>
+<li>source/application/Drawable/Entity/<b>MyTexture.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_enemy_texture.html">EnemyTexture</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_enemy_texture.png b/assets/docs/html/class_enemy_texture.png
new file mode 100644
index 0000000000000000000000000000000000000000..9b24769a93fa9cf6ea92ad4a71e2a3f8546a32b1
Binary files /dev/null and b/assets/docs/html/class_enemy_texture.png differ
diff --git a/assets/docs/html/class_exit_command-members.html b/assets/docs/html/class_exit_command-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..5488373357fb03ad63d7752e41a0c8a60e3fc79e
--- /dev/null
+++ b/assets/docs/html/class_exit_command-members.html
@@ -0,0 +1,125 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_exit_command.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">ExitCommand Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_exit_command.html">ExitCommand</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ChangeStateCommand</b>(IStateManager &amp;state_manager) (определено в <a class="el" href="class_change_state_command.html">ChangeStateCommand</a>)</td><td class="entry"><a class="el" href="class_change_state_command.html">ChangeStateCommand</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>execute</b>() override (определено в <a class="el" href="class_exit_command.html">ExitCommand</a>)</td><td class="entry"><a class="el" href="class_exit_command.html">ExitCommand</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ExitCommand</b>(IStateManager &amp;state_manager) (определено в <a class="el" href="class_exit_command.html">ExitCommand</a>)</td><td class="entry"><a class="el" href="class_exit_command.html">ExitCommand</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_state_manager</b> (определено в <a class="el" href="class_change_state_command.html">ChangeStateCommand</a>)</td><td class="entry"><a class="el" href="class_change_state_command.html">ChangeStateCommand</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~ISelectCommand</b>()=default (определено в <a class="el" href="class_i_select_command.html">ISelectCommand</a>)</td><td class="entry"><a class="el" href="class_i_select_command.html">ISelectCommand</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_exit_command.html b/assets/docs/html/class_exit_command.html
new file mode 100644
index 0000000000000000000000000000000000000000..db7d0eefa2bc8d969e472ddc448db1fdf71b9d0f
--- /dev/null
+++ b/assets/docs/html/class_exit_command.html
@@ -0,0 +1,182 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс ExitCommand</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_exit_command.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_exit_command-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс ExitCommand</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Граф наследования:ExitCommand:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_exit_command.png" usemap="#ExitCommand_map" alt=""/>
+  <map id="ExitCommand_map" name="ExitCommand_map">
+<area href="class_change_state_command.html" alt="ChangeStateCommand" shape="rect" coords="0,56,139,80"/>
+<area href="class_i_select_command.html" alt="ISelectCommand" shape="rect" coords="0,0,139,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a64519da28aff5bf0e3f6574a77e6ecb2" id="r_a64519da28aff5bf0e3f6574a77e6ecb2"><td class="memItemLeft" align="right" valign="top"><a id="a64519da28aff5bf0e3f6574a77e6ecb2" name="a64519da28aff5bf0e3f6574a77e6ecb2"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><b>ExitCommand</b> (<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;state_manager)</td></tr>
+<tr class="separator:a64519da28aff5bf0e3f6574a77e6ecb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9dc6a444c5c4eaa2202b3f378755d70b" id="r_a9dc6a444c5c4eaa2202b3f378755d70b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a9dc6a444c5c4eaa2202b3f378755d70b">execute</a> () override</td></tr>
+<tr class="separator:a9dc6a444c5c4eaa2202b3f378755d70b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_change_state_command"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_change_state_command')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_change_state_command.html">ChangeStateCommand</a></td></tr>
+<tr class="memitem:a84df1216960a40853ed069ff5fc71a8c inherit pub_methods_class_change_state_command" id="r_a84df1216960a40853ed069ff5fc71a8c"><td class="memItemLeft" align="right" valign="top">
+&#160;</td><td class="memItemRight" valign="bottom"><b>ChangeStateCommand</b> (<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;state_manager)</td></tr>
+<tr class="separator:a84df1216960a40853ed069ff5fc71a8c inherit pub_methods_class_change_state_command"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Дополнительные унаследованные члены</h2></td></tr>
+<tr class="inherit_header pro_attribs_class_change_state_command"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_attribs_class_change_state_command')"><img src="closed.png" alt="-"/>&#160;Защищенные данные унаследованные от <a class="el" href="class_change_state_command.html">ChangeStateCommand</a></td></tr>
+<tr class="memitem:ac60993a1229fb3816483aa21887e0884 inherit pro_attribs_class_change_state_command" id="r_ac60993a1229fb3816483aa21887e0884"><td class="memItemLeft" align="right" valign="top">
+<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>m_state_manager</b></td></tr>
+<tr class="separator:ac60993a1229fb3816483aa21887e0884 inherit pro_attribs_class_change_state_command"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Методы</h2>
+<a id="a9dc6a444c5c4eaa2202b3f378755d70b" name="a9dc6a444c5c4eaa2202b3f378755d70b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9dc6a444c5c4eaa2202b3f378755d70b">&#9670;&#160;</a></span>execute()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void ExitCommand::execute </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="class_i_select_command.html">ISelectCommand</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов класса находятся в файле:<ul>
+<li>source/application/SelectCommand/<a class="el" href="_i_select_command_8h_source.html">ISelectCommand.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_exit_command.html">ExitCommand</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_exit_command.png b/assets/docs/html/class_exit_command.png
new file mode 100644
index 0000000000000000000000000000000000000000..a9cd74b13385a5e79264e40d7ed46daddafc6c01
Binary files /dev/null and b/assets/docs/html/class_exit_command.png differ
diff --git a/assets/docs/html/class_exit_state-members.html b/assets/docs/html/class_exit_state-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..304ec397b63781184b5eef224461ed6efff8eff4
--- /dev/null
+++ b/assets/docs/html/class_exit_state-members.html
@@ -0,0 +1,125 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_exit_state.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">ExitState Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_exit_state.html">ExitState</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>do_step</b>() override (определено в <a class="el" href="class_exit_state.html">ExitState</a>)</td><td class="entry"><a class="el" href="class_exit_state.html">ExitState</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>ExitState</b>(IStateManager &amp;state_manager) (определено в <a class="el" href="class_exit_state.html">ExitState</a>)</td><td class="entry"><a class="el" href="class_exit_state.html">ExitState</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>IState</b>(IStateManager &amp;state_manager) (определено в <a class="el" href="class_i_state.html">IState</a>)</td><td class="entry"><a class="el" href="class_i_state.html">IState</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_state_manager</b> (определено в <a class="el" href="class_i_state.html">IState</a>)</td><td class="entry"><a class="el" href="class_i_state.html">IState</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~IState</b>()=default (определено в <a class="el" href="class_i_state.html">IState</a>)</td><td class="entry"><a class="el" href="class_i_state.html">IState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_exit_state.html b/assets/docs/html/class_exit_state.html
new file mode 100644
index 0000000000000000000000000000000000000000..6421cd1a5279278744fa1639f205e2755c3fc37b
--- /dev/null
+++ b/assets/docs/html/class_exit_state.html
@@ -0,0 +1,188 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс ExitState</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_exit_state.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_exit_state-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс ExitState</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Состояние, которое завершает игры. Для этого в do_step всегда возвращает false -&gt; так <a class="el" href="class_application.html">Application</a> поймет, что надо завершить работу и выйти из бесконечного цикла делегирования своей работы состояниям.  
+ <a href="#details">Подробнее...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_i_state_8h_source.html">IState.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:ExitState:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_exit_state.png" usemap="#ExitState_map" alt=""/>
+  <map id="ExitState_map" name="ExitState_map">
+<area href="class_i_state.html" alt="IState" shape="rect" coords="0,0,60,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:ad1ca7bf51aecabbe4d4b219303aa48cc" id="r_ad1ca7bf51aecabbe4d4b219303aa48cc"><td class="memItemLeft" align="right" valign="top"><a id="ad1ca7bf51aecabbe4d4b219303aa48cc" name="ad1ca7bf51aecabbe4d4b219303aa48cc"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><b>ExitState</b> (<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;state_manager)</td></tr>
+<tr class="separator:ad1ca7bf51aecabbe4d4b219303aa48cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ee0211f0c4b7c29668bf12ab67bfb17" id="r_a9ee0211f0c4b7c29668bf12ab67bfb17"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a9ee0211f0c4b7c29668bf12ab67bfb17">do_step</a> () override</td></tr>
+<tr class="separator:a9ee0211f0c4b7c29668bf12ab67bfb17"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_i_state"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_i_state')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_i_state.html">IState</a></td></tr>
+<tr class="memitem:af6af0f026f832dd82a6989ba54c5bf25 inherit pub_methods_class_i_state" id="r_af6af0f026f832dd82a6989ba54c5bf25"><td class="memItemLeft" align="right" valign="top">
+&#160;</td><td class="memItemRight" valign="bottom"><b>IState</b> (<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;state_manager)</td></tr>
+<tr class="separator:af6af0f026f832dd82a6989ba54c5bf25 inherit pub_methods_class_i_state"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Дополнительные унаследованные члены</h2></td></tr>
+<tr class="inherit_header pro_attribs_class_i_state"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_attribs_class_i_state')"><img src="closed.png" alt="-"/>&#160;Защищенные данные унаследованные от <a class="el" href="class_i_state.html">IState</a></td></tr>
+<tr class="memitem:a394ae1a10e9e1d0bb9d0a14d59ef385f inherit pro_attribs_class_i_state" id="r_a394ae1a10e9e1d0bb9d0a14d59ef385f"><td class="memItemLeft" align="right" valign="top">
+<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>m_state_manager</b></td></tr>
+<tr class="separator:a394ae1a10e9e1d0bb9d0a14d59ef385f inherit pro_attribs_class_i_state"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p>Состояние, которое завершает игры. Для этого в do_step всегда возвращает false -&gt; так <a class="el" href="class_application.html">Application</a> поймет, что надо завершить работу и выйти из бесконечного цикла делегирования своей работы состояниям. </p>
+</div><h2 class="groupheader">Методы</h2>
+<a id="a9ee0211f0c4b7c29668bf12ab67bfb17" name="a9ee0211f0c4b7c29668bf12ab67bfb17"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9ee0211f0c4b7c29668bf12ab67bfb17">&#9670;&#160;</a></span>do_step()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool ExitState::do_step </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="class_i_state.html">IState</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов класса находятся в файле:<ul>
+<li>source/application/State/<a class="el" href="_i_state_8h_source.html">IState.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_exit_state.html">ExitState</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_exit_state.png b/assets/docs/html/class_exit_state.png
new file mode 100644
index 0000000000000000000000000000000000000000..88331cbbd13fe68a294046d071f71bf5ee3b4cf2
Binary files /dev/null and b/assets/docs/html/class_exit_state.png differ
diff --git a/assets/docs/html/class_food-members.html b/assets/docs/html/class_food-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..9bbd5049cee04b9f330ee3d8667e9851881d7a83
--- /dev/null
+++ b/assets/docs/html/class_food-members.html
@@ -0,0 +1,132 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_food.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Food Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_food.html">Food</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_food.html#a66afb32708f97daf5bca2fae17ca3ad2">accept</a>(IVisitor *ptr_visitor) override</td><td class="entry"><a class="el" href="class_food.html">Food</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_food.html#a3363e490287b67049c6771f56911d582">clone</a>() const override</td><td class="entry"><a class="el" href="class_food.html">Food</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>draw_into</b>(sf::RenderWindow &amp;window) override (определено в <a class="el" href="class_food.html">Food</a>)</td><td class="entry"><a class="el" href="class_food.html">Food</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_food.html#a75d4d7f76fd495cc8133302ca9fdc485">Food</a>()</td><td class="entry"><a class="el" href="class_food.html">Food</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_location</b>() (определено в <a class="el" href="class_i_entity.html">IEntity</a>)</td><td class="entry"><a class="el" href="class_i_entity.html">IEntity</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>is_screamer</b> (определено в <a class="el" href="class_food.html">Food</a>)</td><td class="entry"><a class="el" href="class_food.html">Food</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_ptr_room</b> (определено в <a class="el" href="class_i_entity.html">IEntity</a>)</td><td class="entry"><a class="el" href="class_i_entity.html">IEntity</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>prepare_for_drawing</b>() override (определено в <a class="el" href="class_food.html">Food</a>)</td><td class="entry"><a class="el" href="class_food.html">Food</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_location</b>(Room *ptr_room) (определено в <a class="el" href="class_i_entity.html">IEntity</a>)</td><td class="entry"><a class="el" href="class_i_entity.html">IEntity</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>set_texture</b>(MyTexture *ptr_texture) (определено в <a class="el" href="class_food.html">Food</a>)</td><td class="entry"><a class="el" href="class_food.html">Food</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~Food</b>() override (определено в <a class="el" href="class_food.html">Food</a>)</td><td class="entry"><a class="el" href="class_food.html">Food</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IDrawable</b>()=default (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_food.html b/assets/docs/html/class_food.html
new file mode 100644
index 0000000000000000000000000000000000000000..f44702f80dbc1a660b7ca732cae38cbd8a5ed78b
--- /dev/null
+++ b/assets/docs/html/class_food.html
@@ -0,0 +1,319 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс Food</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_food.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="#pub-attribs">Открытые атрибуты</a> &#124;
+<a href="class_food-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс Food</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Наследник <a class="el" href="struct_i_static_entity.html" title="Статические сущности, наследник IEntity -&gt; неперемещаемые объекты, с которыми будет взаимодействовать...">IStaticEntity</a> - еда.  
+ <a href="#details">Подробнее...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_i_entity_8h_source.html">IEntity.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:Food:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_food.png" usemap="#Food_map" alt=""/>
+  <map id="Food_map" name="Food_map">
+<area href="struct_i_static_entity.html" title="Статические сущности, наследник IEntity -&gt; неперемещаемые объекты, с которыми будет взаимодействовать..." alt="IStaticEntity" shape="rect" coords="44,168,122,192"/>
+<area href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт." alt="IEntity" shape="rect" coords="0,112,78,136"/>
+<area href="class_i_visitable.html" alt="IVisitable" shape="rect" coords="88,112,166,136"/>
+<area href="struct_i_preparable.html" alt="IPreparable" shape="rect" coords="0,56,78,80"/>
+<area href="struct_i_drawable.html" title="Общий интерфейс для отрисовываемых сущностей и объектов" alt="IDrawable" shape="rect" coords="0,0,78,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a75d4d7f76fd495cc8133302ca9fdc485" id="r_a75d4d7f76fd495cc8133302ca9fdc485"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a75d4d7f76fd495cc8133302ca9fdc485">Food</a> ()</td></tr>
+<tr class="separator:a75d4d7f76fd495cc8133302ca9fdc485"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a67d65c13ae6cb6549bd1c983a28af099" id="r_a67d65c13ae6cb6549bd1c983a28af099"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a67d65c13ae6cb6549bd1c983a28af099">draw_into</a> (sf::RenderWindow &amp;window) override</td></tr>
+<tr class="separator:a67d65c13ae6cb6549bd1c983a28af099"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab9d69650198b08392d023b5acd8aa30e" id="r_ab9d69650198b08392d023b5acd8aa30e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab9d69650198b08392d023b5acd8aa30e">prepare_for_drawing</a> () override</td></tr>
+<tr class="separator:ab9d69650198b08392d023b5acd8aa30e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d060aea09887627e3f466dd4bb508ae" id="r_a2d060aea09887627e3f466dd4bb508ae"><td class="memItemLeft" align="right" valign="top"><a id="a2d060aea09887627e3f466dd4bb508ae" name="a2d060aea09887627e3f466dd4bb508ae"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_texture</b> (<a class="el" href="class_my_texture.html">MyTexture</a> *ptr_texture)</td></tr>
+<tr class="separator:a2d060aea09887627e3f466dd4bb508ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3363e490287b67049c6771f56911d582" id="r_a3363e490287b67049c6771f56911d582"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="struct_i_static_entity.html">IStaticEntity</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3363e490287b67049c6771f56911d582">clone</a> () const override</td></tr>
+<tr class="separator:a3363e490287b67049c6771f56911d582"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66afb32708f97daf5bca2fae17ca3ad2" id="r_a66afb32708f97daf5bca2fae17ca3ad2"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="class_i_game_event.html">IGameEvent</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a66afb32708f97daf5bca2fae17ca3ad2">accept</a> (<a class="el" href="class_i_visitor.html">IVisitor</a> *ptr_visitor) override</td></tr>
+<tr class="separator:a66afb32708f97daf5bca2fae17ca3ad2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_i_entity"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_i_entity')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_i_entity.html">IEntity</a></td></tr>
+<tr class="memitem:a548495c468f307c780941faa5b4c08a8 inherit pub_methods_class_i_entity" id="r_a548495c468f307c780941faa5b4c08a8"><td class="memItemLeft" align="right" valign="top">
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_location</b> (<a class="el" href="class_room.html">Room</a> *ptr_room)</td></tr>
+<tr class="separator:a548495c468f307c780941faa5b4c08a8 inherit pub_methods_class_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab24f318dbb232b2feb00115b7124e256 inherit pub_methods_class_i_entity" id="r_ab24f318dbb232b2feb00115b7124e256"><td class="memItemLeft" align="right" valign="top">
+<a class="el" href="class_room.html">Room</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>get_location</b> ()</td></tr>
+<tr class="separator:ab24f318dbb232b2feb00115b7124e256 inherit pub_methods_class_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
+Открытые атрибуты</h2></td></tr>
+<tr class="memitem:aa78f043ae245722ee9cf349f9d569a20" id="r_aa78f043ae245722ee9cf349f9d569a20"><td class="memItemLeft" align="right" valign="top"><a id="aa78f043ae245722ee9cf349f9d569a20" name="aa78f043ae245722ee9cf349f9d569a20"></a>
+bool&#160;</td><td class="memItemRight" valign="bottom"><b>is_screamer</b> = false</td></tr>
+<tr class="separator:aa78f043ae245722ee9cf349f9d569a20"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Дополнительные унаследованные члены</h2></td></tr>
+<tr class="inherit_header pro_attribs_class_i_entity"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_attribs_class_i_entity')"><img src="closed.png" alt="-"/>&#160;Защищенные данные унаследованные от <a class="el" href="class_i_entity.html">IEntity</a></td></tr>
+<tr class="memitem:a7d0bfa7b8516df82bd6de6b6283f0315 inherit pro_attribs_class_i_entity" id="r_a7d0bfa7b8516df82bd6de6b6283f0315"><td class="memItemLeft" align="right" valign="top">
+<a class="el" href="class_room.html">Room</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>m_ptr_room</b></td></tr>
+<tr class="separator:a7d0bfa7b8516df82bd6de6b6283f0315 inherit pro_attribs_class_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p>Наследник <a class="el" href="struct_i_static_entity.html" title="Статические сущности, наследник IEntity -&gt; неперемещаемые объекты, с которыми будет взаимодействовать...">IStaticEntity</a> - еда. </p>
+</div><h2 class="groupheader">Конструктор(ы)</h2>
+<a id="a75d4d7f76fd495cc8133302ca9fdc485" name="a75d4d7f76fd495cc8133302ca9fdc485"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a75d4d7f76fd495cc8133302ca9fdc485">&#9670;&#160;</a></span>Food()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Food::Food </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>загружаем текстуру для еды </p>
+</blockquote>
+
+</div>
+</div>
+<h2 class="groupheader">Методы</h2>
+<a id="a66afb32708f97daf5bca2fae17ca3ad2" name="a66afb32708f97daf5bca2fae17ca3ad2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a66afb32708f97daf5bca2fae17ca3ad2">&#9670;&#160;</a></span>accept()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::unique_ptr&lt; <a class="el" href="class_i_game_event.html">IGameEvent</a> &gt; Food::accept </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="class_i_visitor.html">IVisitor</a> *</td>          <td class="paramname"><span class="paramname"><em>ptr_visitor</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>передача посетителю самого себя </p>
+</blockquote>
+
+<p>Замещает <a class="el" href="class_i_visitable.html">IVisitable</a>.</p>
+
+</div>
+</div>
+<a id="a3363e490287b67049c6771f56911d582" name="a3363e490287b67049c6771f56911d582"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3363e490287b67049c6771f56911d582">&#9670;&#160;</a></span>clone()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::unique_ptr&lt; <a class="el" href="struct_i_static_entity.html">IStaticEntity</a> &gt; Food::clone </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>копируем самого себя </p>
+</blockquote>
+
+<p>Замещает <a class="el" href="struct_i_static_entity.html">IStaticEntity</a>.</p>
+
+</div>
+</div>
+<a id="a67d65c13ae6cb6549bd1c983a28af099" name="a67d65c13ae6cb6549bd1c983a28af099"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a67d65c13ae6cb6549bd1c983a28af099">&#9670;&#160;</a></span>draw_into()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Food::draw_into </td>
+          <td>(</td>
+          <td class="paramtype">sf::RenderWindow &amp;</td>          <td class="paramname"><span class="paramname"><em>window</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="struct_i_drawable.html">IDrawable</a>.</p>
+
+</div>
+</div>
+<a id="ab9d69650198b08392d023b5acd8aa30e" name="ab9d69650198b08392d023b5acd8aa30e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab9d69650198b08392d023b5acd8aa30e">&#9670;&#160;</a></span>prepare_for_drawing()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Food::prepare_for_drawing </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="struct_i_preparable.html">IPreparable</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Drawable/Entity/<a class="el" href="_i_entity_8h_source.html">IEntity.h</a></li>
+<li>source/application/Drawable/Entity/<b>IEntity.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_food.html">Food</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_food.js b/assets/docs/html/class_food.js
new file mode 100644
index 0000000000000000000000000000000000000000..6adf6507776df165ba37a80d5e0f47146a6e8f84
--- /dev/null
+++ b/assets/docs/html/class_food.js
@@ -0,0 +1,6 @@
+var class_food =
+[
+    [ "Food", "class_food.html#a75d4d7f76fd495cc8133302ca9fdc485", null ],
+    [ "accept", "class_food.html#a66afb32708f97daf5bca2fae17ca3ad2", null ],
+    [ "clone", "class_food.html#a3363e490287b67049c6771f56911d582", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/class_food.png b/assets/docs/html/class_food.png
new file mode 100644
index 0000000000000000000000000000000000000000..829cd4760e99e6368da797386832f868a5c9ab9b
Binary files /dev/null and b/assets/docs/html/class_food.png differ
diff --git a/assets/docs/html/class_food_texture-members.html b/assets/docs/html/class_food_texture-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..ea1757cd1649e1310f850d8e9304025b3cfbfb54
--- /dev/null
+++ b/assets/docs/html/class_food_texture-members.html
@@ -0,0 +1,132 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_food_texture.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">FoodTexture Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_food_texture.html">FoodTexture</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Direction</b> перечисление (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>DOWN</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_texture</b>() override (определено в <a class="el" href="class_food_texture.html">FoodTexture</a>)</td><td class="entry"><a class="el" href="class_food_texture.html">FoodTexture</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>instance</b>() (определено в <a class="el" href="class_food_texture.html">FoodTexture</a>)</td><td class="entry"><a class="el" href="class_food_texture.html">FoodTexture</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>LEFT</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_direction</b> (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>MyTexture</b>()=default (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>MyTexture</b>(const MyTexture &amp;)=delete (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(const MyTexture &amp;)=delete (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>RIGHT</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_direction</b>(Direction direction) (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>UP</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_food_texture.html b/assets/docs/html/class_food_texture.html
new file mode 100644
index 0000000000000000000000000000000000000000..536ccec415437e61d43554ea84c9969b676ca2bd
--- /dev/null
+++ b/assets/docs/html/class_food_texture.html
@@ -0,0 +1,199 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс FoodTexture</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_food_texture.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="#pub-static-methods">Открытые статические члены</a> &#124;
+<a href="class_food_texture-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс FoodTexture</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Граф наследования:FoodTexture:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_food_texture.png" usemap="#FoodTexture_map" alt=""/>
+  <map id="FoodTexture_map" name="FoodTexture_map">
+<area href="class_my_texture.html" alt="MyTexture" shape="rect" coords="0,0,83,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a51861a08cf8b47b81aa76dae4273d4d7" id="r_a51861a08cf8b47b81aa76dae4273d4d7"><td class="memItemLeft" align="right" valign="top">sf::Texture &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a51861a08cf8b47b81aa76dae4273d4d7">get_texture</a> () override</td></tr>
+<tr class="separator:a51861a08cf8b47b81aa76dae4273d4d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_my_texture"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_my_texture')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_my_texture.html">MyTexture</a></td></tr>
+<tr class="memitem:ab6327857e381e8f9ff6ea9d4a01c62c8 inherit pub_methods_class_my_texture" id="r_ab6327857e381e8f9ff6ea9d4a01c62c8"><td class="memItemLeft" align="right" valign="top">
+&#160;</td><td class="memItemRight" valign="bottom"><b>MyTexture</b> (const <a class="el" href="class_my_texture.html">MyTexture</a> &amp;)=delete</td></tr>
+<tr class="separator:ab6327857e381e8f9ff6ea9d4a01c62c8 inherit pub_methods_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2968e7cbf400c6d3d210724ef0eb99b6 inherit pub_methods_class_my_texture" id="r_a2968e7cbf400c6d3d210724ef0eb99b6"><td class="memItemLeft" align="right" valign="top">
+<a class="el" href="class_my_texture.html">MyTexture</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="class_my_texture.html">MyTexture</a> &amp;)=delete</td></tr>
+<tr class="separator:a2968e7cbf400c6d3d210724ef0eb99b6 inherit pub_methods_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aadd40b268663d9064d45de162004fac6 inherit pub_methods_class_my_texture" id="r_aadd40b268663d9064d45de162004fac6"><td class="memItemLeft" align="right" valign="top">
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_direction</b> (Direction direction)</td></tr>
+<tr class="separator:aadd40b268663d9064d45de162004fac6 inherit pub_methods_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
+Открытые статические члены</h2></td></tr>
+<tr class="memitem:a5e5c7e4aacf3f453fa116374969e4d06" id="r_a5e5c7e4aacf3f453fa116374969e4d06"><td class="memItemLeft" align="right" valign="top"><a id="a5e5c7e4aacf3f453fa116374969e4d06" name="a5e5c7e4aacf3f453fa116374969e4d06"></a>
+static <a class="el" href="class_food_texture.html">FoodTexture</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>instance</b> ()</td></tr>
+<tr class="separator:a5e5c7e4aacf3f453fa116374969e4d06"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Дополнительные унаследованные члены</h2></td></tr>
+<tr class="inherit_header pub_types_class_my_texture"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_types_class_my_texture')"><img src="closed.png" alt="-"/>&#160;Открытые типы унаследованные от <a class="el" href="class_my_texture.html">MyTexture</a></td></tr>
+<tr class="memitem:a316c15cca20dd7993c379b6e5bcf4913 inherit pub_types_class_my_texture" id="r_a316c15cca20dd7993c379b6e5bcf4913"><td class="memItemLeft" align="right" valign="top"><a id="a316c15cca20dd7993c379b6e5bcf4913" name="a316c15cca20dd7993c379b6e5bcf4913"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><b>Direction</b> { <b>UP</b>
+, <b>DOWN</b>
+, <b>RIGHT</b>
+, <b>LEFT</b>
+ }</td></tr>
+<tr class="separator:a316c15cca20dd7993c379b6e5bcf4913 inherit pub_types_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_class_my_texture"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_attribs_class_my_texture')"><img src="closed.png" alt="-"/>&#160;Защищенные данные унаследованные от <a class="el" href="class_my_texture.html">MyTexture</a></td></tr>
+<tr class="memitem:a9c56deb491e39a56350cc8029567d001 inherit pro_attribs_class_my_texture" id="r_a9c56deb491e39a56350cc8029567d001"><td class="memItemLeft" align="right" valign="top">
+Direction&#160;</td><td class="memItemRight" valign="bottom"><b>m_direction</b> = UP</td></tr>
+<tr class="separator:a9c56deb491e39a56350cc8029567d001 inherit pro_attribs_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Методы</h2>
+<a id="a51861a08cf8b47b81aa76dae4273d4d7" name="a51861a08cf8b47b81aa76dae4273d4d7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a51861a08cf8b47b81aa76dae4273d4d7">&#9670;&#160;</a></span>get_texture()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">sf::Texture &amp; FoodTexture::get_texture </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="class_my_texture.html">MyTexture</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Drawable/Entity/<a class="el" href="_my_texture_8h_source.html">MyTexture.h</a></li>
+<li>source/application/Drawable/Entity/<b>MyTexture.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_food_texture.html">FoodTexture</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_food_texture.png b/assets/docs/html/class_food_texture.png
new file mode 100644
index 0000000000000000000000000000000000000000..41ad0b8c760cd1defcf59f4c7060b9abb7542e5d
Binary files /dev/null and b/assets/docs/html/class_food_texture.png differ
diff --git a/assets/docs/html/class_game_builder_director-members.html b/assets/docs/html/class_game_builder_director-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..d6132807d92d63457abf1ac94cdbbbba50628613
--- /dev/null
+++ b/assets/docs/html/class_game_builder_director-members.html
@@ -0,0 +1,122 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_game_builder_director.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">GameBuilderDirector Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_game_builder_director.html">GameBuilderDirector</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>build</b>(IStateManager &amp;state_manager, int players) (определено в <a class="el" href="class_game_builder_director.html">GameBuilderDirector</a>)</td><td class="entry"><a class="el" href="class_game_builder_director.html">GameBuilderDirector</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>GameBuilderDirector</b>(std::unique_ptr&lt; IGameBuilder &gt; &amp;&amp;ptr_builder, sf::VideoMode mode, std::string window_title, float dynamic_objects_ratio) (определено в <a class="el" href="class_game_builder_director.html">GameBuilderDirector</a>)</td><td class="entry"><a class="el" href="class_game_builder_director.html">GameBuilderDirector</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_game_builder_director.html b/assets/docs/html/class_game_builder_director.html
new file mode 100644
index 0000000000000000000000000000000000000000..788796640bdf6f6757d19102af500ae7baf30ad2
--- /dev/null
+++ b/assets/docs/html/class_game_builder_director.html
@@ -0,0 +1,141 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс GameBuilderDirector</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_game_builder_director.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_game_builder_director-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс GameBuilderDirector</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="_bob_builder_director_8h_source.html">BobBuilderDirector.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:af62608151e83305bf33aa1e1b857d6e4" id="r_af62608151e83305bf33aa1e1b857d6e4"><td class="memItemLeft" align="right" valign="top"><a id="af62608151e83305bf33aa1e1b857d6e4" name="af62608151e83305bf33aa1e1b857d6e4"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><b>GameBuilderDirector</b> (std::unique_ptr&lt; <a class="el" href="class_i_game_builder.html">IGameBuilder</a> &gt; &amp;&amp;ptr_builder, sf::VideoMode mode, std::string window_title, float dynamic_objects_ratio)</td></tr>
+<tr class="separator:af62608151e83305bf33aa1e1b857d6e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5afda00e517a79c9d5f7454ba3f6ea0d" id="r_a5afda00e517a79c9d5f7454ba3f6ea0d"><td class="memItemLeft" align="right" valign="top"><a id="a5afda00e517a79c9d5f7454ba3f6ea0d" name="a5afda00e517a79c9d5f7454ba3f6ea0d"></a>
+std::unique_ptr&lt; <a class="el" href="class_game_state.html">GameState</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>build</b> (<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;state_manager, int players)</td></tr>
+<tr class="separator:a5afda00e517a79c9d5f7454ba3f6ea0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><blockquote class="doxtable">
+<p>паттерн BUILDER отвечает за создание лабиринта, размещение объектов и персонажей... </p>
+</blockquote>
+</div><hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/BobBuilder/<a class="el" href="_bob_builder_director_8h_source.html">BobBuilderDirector.h</a></li>
+<li>source/application/BobBuilder/<b>BobBuilderDirector.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_game_builder_director.html">GameBuilderDirector</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_game_command-members.html b/assets/docs/html/class_game_command-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..761fc56f9ce38c8de675d9af5d0348094ccf21e8
--- /dev/null
+++ b/assets/docs/html/class_game_command-members.html
@@ -0,0 +1,125 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_game_command.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">GameCommand Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_game_command.html">GameCommand</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ChangeStateCommand</b>(IStateManager &amp;state_manager) (определено в <a class="el" href="class_change_state_command.html">ChangeStateCommand</a>)</td><td class="entry"><a class="el" href="class_change_state_command.html">ChangeStateCommand</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>execute</b>() override (определено в <a class="el" href="class_game_command.html">GameCommand</a>)</td><td class="entry"><a class="el" href="class_game_command.html">GameCommand</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GameCommand</b>(IStateManager &amp;state_manager, std::unique_ptr&lt; GameBuilderDirector &gt; &amp;ptr_director, int players) (определено в <a class="el" href="class_game_command.html">GameCommand</a>)</td><td class="entry"><a class="el" href="class_game_command.html">GameCommand</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_state_manager</b> (определено в <a class="el" href="class_change_state_command.html">ChangeStateCommand</a>)</td><td class="entry"><a class="el" href="class_change_state_command.html">ChangeStateCommand</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~ISelectCommand</b>()=default (определено в <a class="el" href="class_i_select_command.html">ISelectCommand</a>)</td><td class="entry"><a class="el" href="class_i_select_command.html">ISelectCommand</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_game_command.html b/assets/docs/html/class_game_command.html
new file mode 100644
index 0000000000000000000000000000000000000000..b00665a5c1505af2836339890bfe499d7bf8de77
--- /dev/null
+++ b/assets/docs/html/class_game_command.html
@@ -0,0 +1,182 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс GameCommand</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_game_command.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_game_command-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс GameCommand</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Граф наследования:GameCommand:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_game_command.png" usemap="#GameCommand_map" alt=""/>
+  <map id="GameCommand_map" name="GameCommand_map">
+<area href="class_change_state_command.html" alt="ChangeStateCommand" shape="rect" coords="0,56,139,80"/>
+<area href="class_i_select_command.html" alt="ISelectCommand" shape="rect" coords="0,0,139,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:adf69daa5499e15fb09057630969da2f9" id="r_adf69daa5499e15fb09057630969da2f9"><td class="memItemLeft" align="right" valign="top"><a id="adf69daa5499e15fb09057630969da2f9" name="adf69daa5499e15fb09057630969da2f9"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><b>GameCommand</b> (<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;state_manager, std::unique_ptr&lt; <a class="el" href="class_game_builder_director.html">GameBuilderDirector</a> &gt; &amp;ptr_director, int players)</td></tr>
+<tr class="separator:adf69daa5499e15fb09057630969da2f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d7f3651dcf2323ab0c9d781069dcd95" id="r_a2d7f3651dcf2323ab0c9d781069dcd95"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2d7f3651dcf2323ab0c9d781069dcd95">execute</a> () override</td></tr>
+<tr class="separator:a2d7f3651dcf2323ab0c9d781069dcd95"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_change_state_command"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_change_state_command')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_change_state_command.html">ChangeStateCommand</a></td></tr>
+<tr class="memitem:a84df1216960a40853ed069ff5fc71a8c inherit pub_methods_class_change_state_command" id="r_a84df1216960a40853ed069ff5fc71a8c"><td class="memItemLeft" align="right" valign="top">
+&#160;</td><td class="memItemRight" valign="bottom"><b>ChangeStateCommand</b> (<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;state_manager)</td></tr>
+<tr class="separator:a84df1216960a40853ed069ff5fc71a8c inherit pub_methods_class_change_state_command"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Дополнительные унаследованные члены</h2></td></tr>
+<tr class="inherit_header pro_attribs_class_change_state_command"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_attribs_class_change_state_command')"><img src="closed.png" alt="-"/>&#160;Защищенные данные унаследованные от <a class="el" href="class_change_state_command.html">ChangeStateCommand</a></td></tr>
+<tr class="memitem:ac60993a1229fb3816483aa21887e0884 inherit pro_attribs_class_change_state_command" id="r_ac60993a1229fb3816483aa21887e0884"><td class="memItemLeft" align="right" valign="top">
+<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>m_state_manager</b></td></tr>
+<tr class="separator:ac60993a1229fb3816483aa21887e0884 inherit pro_attribs_class_change_state_command"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Методы</h2>
+<a id="a2d7f3651dcf2323ab0c9d781069dcd95" name="a2d7f3651dcf2323ab0c9d781069dcd95"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2d7f3651dcf2323ab0c9d781069dcd95">&#9670;&#160;</a></span>execute()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void GameCommand::execute </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="class_i_select_command.html">ISelectCommand</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов класса находятся в файле:<ul>
+<li>source/application/SelectCommand/<a class="el" href="_i_select_command_8h_source.html">ISelectCommand.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_game_command.html">GameCommand</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_game_command.png b/assets/docs/html/class_game_command.png
new file mode 100644
index 0000000000000000000000000000000000000000..bc667292262a3787f8816fa76eb269e27efd187b
Binary files /dev/null and b/assets/docs/html/class_game_command.png differ
diff --git a/assets/docs/html/class_game_state-members.html b/assets/docs/html/class_game_state-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..ba2d4ccfdf69a3d60b5f7534870c2622961be8c8
--- /dev/null
+++ b/assets/docs/html/class_game_state-members.html
@@ -0,0 +1,138 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_game_state.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">GameState Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_game_state.html">GameState</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>do_step</b>() override (определено в <a class="el" href="class_game_state.html">GameState</a>)</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_game_state.html#a180391dfe966058da0389146534e66d0">event_handling</a>() override</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_game_state.html#a90b51ee7191c9fd1fc5e207bc35f1153">GameState</a>(IStateManager &amp;state_manager, const sf::VideoMode &amp;video_mode, const std::string &amp;window_title)</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>get_score_count</b>() const (определено в <a class="el" href="class_game_state.html">GameState</a>)</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>IState</b>(IStateManager &amp;state_manager) (определено в <a class="el" href="class_i_state.html">IState</a>)</td><td class="entry"><a class="el" href="class_i_state.html">IState</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>IWindowKeeper</b>(const sf::VideoMode &amp;video_mode, const std::string &amp;window_title) (определено в <a class="el" href="class_i_window_keeper.html">IWindowKeeper</a>)</td><td class="entry"><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_current_music</b> (определено в <a class="el" href="class_game_state.html">GameState</a>)</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_state_manager</b> (определено в <a class="el" href="class_i_state.html">IState</a>)</td><td class="entry"><a class="el" href="class_i_state.html">IState</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_i_window_keeper.html#aef0780725b6f210bcbeb3b03da2445b8">m_window</a></td><td class="entry"><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>Music</b> перечисление (определено в <a class="el" href="class_game_state.html">GameState</a>)</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>process_key_pressed</b>(sf::Keyboard::Key code) (определено в <a class="el" href="class_game_state.html">GameState</a>)</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_game_state.html#a2c36ada0cae89f91d956e2c91b070893">render</a>() override</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_context</b>(GameContext &amp;&amp;context) (определено в <a class="el" href="class_game_state.html">GameState</a>)</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>set_maze</b>(Maze &amp;&amp;maze) (определено в <a class="el" href="class_game_state.html">GameState</a>)</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_game_state.html#a3610da76344c5c2cbcc5921f877226dc">update</a>() override</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~GameState</b>() override (определено в <a class="el" href="class_game_state.html">GameState</a>)</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~IState</b>()=default (определено в <a class="el" href="class_i_state.html">IState</a>)</td><td class="entry"><a class="el" href="class_i_state.html">IState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IWindowKeeper</b>()=default (определено в <a class="el" href="class_i_window_keeper.html">IWindowKeeper</a>)</td><td class="entry"><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_game_state.html b/assets/docs/html/class_game_state.html
new file mode 100644
index 0000000000000000000000000000000000000000..4852bc71412d73ebdcfec7318d360146e1b233df
--- /dev/null
+++ b/assets/docs/html/class_game_state.html
@@ -0,0 +1,351 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс GameState</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_game_state.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-types">Открытые типы</a> &#124;
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="#pub-attribs">Открытые атрибуты</a> &#124;
+<a href="class_game_state-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс GameState</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Взаимодействие врага с объектами лабиринта, что порождает игровые события  
+ <a href="#details">Подробнее...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_game_state_8h_source.html">GameState.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:GameState:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_game_state.png" usemap="#GameState_map" alt=""/>
+  <map id="GameState_map" name="GameState_map">
+<area href="class_i_state.html" alt="IState" shape="rect" coords="0,0,100,24"/>
+<area href="class_i_window_keeper.html" alt="IWindowKeeper" shape="rect" coords="110,0,210,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
+Открытые типы</h2></td></tr>
+<tr class="memitem:aa34cf16f95e6ee5a539a5865e7f2128a" id="r_aa34cf16f95e6ee5a539a5865e7f2128a"><td class="memItemLeft" align="right" valign="top"><a id="aa34cf16f95e6ee5a539a5865e7f2128a" name="aa34cf16f95e6ee5a539a5865e7f2128a"></a>enum class &#160;</td><td class="memItemRight" valign="bottom"><b>Music</b> { <b>NONE</b>
+, <b>INGAME</b>
+, <b>LOST</b>
+, <b>WIN</b>
+ }</td></tr>
+<tr class="separator:aa34cf16f95e6ee5a539a5865e7f2128a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a90b51ee7191c9fd1fc5e207bc35f1153" id="r_a90b51ee7191c9fd1fc5e207bc35f1153"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a90b51ee7191c9fd1fc5e207bc35f1153">GameState</a> (<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;state_manager, const sf::VideoMode &amp;video_mode, const std::string &amp;window_title)</td></tr>
+<tr class="separator:a90b51ee7191c9fd1fc5e207bc35f1153"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a180391dfe966058da0389146534e66d0" id="r_a180391dfe966058da0389146534e66d0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a180391dfe966058da0389146534e66d0">event_handling</a> () override</td></tr>
+<tr class="separator:a180391dfe966058da0389146534e66d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3610da76344c5c2cbcc5921f877226dc" id="r_a3610da76344c5c2cbcc5921f877226dc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3610da76344c5c2cbcc5921f877226dc">update</a> () override</td></tr>
+<tr class="separator:a3610da76344c5c2cbcc5921f877226dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2c36ada0cae89f91d956e2c91b070893" id="r_a2c36ada0cae89f91d956e2c91b070893"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2c36ada0cae89f91d956e2c91b070893">render</a> () override</td></tr>
+<tr class="separator:a2c36ada0cae89f91d956e2c91b070893"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a23e128aa6ff73027e0d4a9e6ea54bc7c" id="r_a23e128aa6ff73027e0d4a9e6ea54bc7c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a23e128aa6ff73027e0d4a9e6ea54bc7c">do_step</a> () override</td></tr>
+<tr class="separator:a23e128aa6ff73027e0d4a9e6ea54bc7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a08817a4fbfdf657fdc9a3757b5ef4e16" id="r_a08817a4fbfdf657fdc9a3757b5ef4e16"><td class="memItemLeft" align="right" valign="top"><a id="a08817a4fbfdf657fdc9a3757b5ef4e16" name="a08817a4fbfdf657fdc9a3757b5ef4e16"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_maze</b> (<a class="el" href="class_maze.html">Maze</a> &amp;&amp;maze)</td></tr>
+<tr class="separator:a08817a4fbfdf657fdc9a3757b5ef4e16"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac8566da5305714491587d128091909d9" id="r_ac8566da5305714491587d128091909d9"><td class="memItemLeft" align="right" valign="top"><a id="ac8566da5305714491587d128091909d9" name="ac8566da5305714491587d128091909d9"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_context</b> (<a class="el" href="struct_game_context.html">GameContext</a> &amp;&amp;context)</td></tr>
+<tr class="separator:ac8566da5305714491587d128091909d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3e8bd574be4a5538c3d18ecb543ddec" id="r_ad3e8bd574be4a5538c3d18ecb543ddec"><td class="memItemLeft" align="right" valign="top"><a id="ad3e8bd574be4a5538c3d18ecb543ddec" name="ad3e8bd574be4a5538c3d18ecb543ddec"></a>
+bool&#160;</td><td class="memItemRight" valign="bottom"><b>process_key_pressed</b> (sf::Keyboard::Key code)</td></tr>
+<tr class="separator:ad3e8bd574be4a5538c3d18ecb543ddec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab33b33278bf7a3967bcc6a42d693482a" id="r_ab33b33278bf7a3967bcc6a42d693482a"><td class="memItemLeft" align="right" valign="top"><a id="ab33b33278bf7a3967bcc6a42d693482a" name="ab33b33278bf7a3967bcc6a42d693482a"></a>
+const <a class="el" href="class_score_count.html">ScoreCount</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>get_score_count</b> () const</td></tr>
+<tr class="separator:ab33b33278bf7a3967bcc6a42d693482a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_i_state"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_i_state')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_i_state.html">IState</a></td></tr>
+<tr class="memitem:af6af0f026f832dd82a6989ba54c5bf25 inherit pub_methods_class_i_state" id="r_af6af0f026f832dd82a6989ba54c5bf25"><td class="memItemLeft" align="right" valign="top">
+&#160;</td><td class="memItemRight" valign="bottom"><b>IState</b> (<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;state_manager)</td></tr>
+<tr class="separator:af6af0f026f832dd82a6989ba54c5bf25 inherit pub_methods_class_i_state"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_i_window_keeper"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_i_window_keeper')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td></tr>
+<tr class="memitem:a5d2b968accf27ddf1b637e166dbf2243 inherit pub_methods_class_i_window_keeper" id="r_a5d2b968accf27ddf1b637e166dbf2243"><td class="memItemLeft" align="right" valign="top">
+&#160;</td><td class="memItemRight" valign="bottom"><b>IWindowKeeper</b> (const sf::VideoMode &amp;video_mode, const std::string &amp;window_title)</td></tr>
+<tr class="separator:a5d2b968accf27ddf1b637e166dbf2243 inherit pub_methods_class_i_window_keeper"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
+Открытые атрибуты</h2></td></tr>
+<tr class="memitem:ae5fdfc1894b6df21658937d12ed6582c" id="r_ae5fdfc1894b6df21658937d12ed6582c"><td class="memItemLeft" align="right" valign="top"><a id="ae5fdfc1894b6df21658937d12ed6582c" name="ae5fdfc1894b6df21658937d12ed6582c"></a>
+Music&#160;</td><td class="memItemRight" valign="bottom"><b>m_current_music</b> = Music::NONE</td></tr>
+<tr class="separator:ae5fdfc1894b6df21658937d12ed6582c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Дополнительные унаследованные члены</h2></td></tr>
+<tr class="inherit_header pro_attribs_class_i_state"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_attribs_class_i_state')"><img src="closed.png" alt="-"/>&#160;Защищенные данные унаследованные от <a class="el" href="class_i_state.html">IState</a></td></tr>
+<tr class="memitem:a394ae1a10e9e1d0bb9d0a14d59ef385f inherit pro_attribs_class_i_state" id="r_a394ae1a10e9e1d0bb9d0a14d59ef385f"><td class="memItemLeft" align="right" valign="top">
+<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>m_state_manager</b></td></tr>
+<tr class="separator:a394ae1a10e9e1d0bb9d0a14d59ef385f inherit pro_attribs_class_i_state"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_class_i_window_keeper"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_attribs_class_i_window_keeper')"><img src="closed.png" alt="-"/>&#160;Защищенные данные унаследованные от <a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td></tr>
+<tr class="memitem:aef0780725b6f210bcbeb3b03da2445b8 inherit pro_attribs_class_i_window_keeper" id="r_aef0780725b6f210bcbeb3b03da2445b8"><td class="memItemLeft" align="right" valign="top">sf::RenderWindow&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_window_keeper.html#aef0780725b6f210bcbeb3b03da2445b8">m_window</a></td></tr>
+<tr class="separator:aef0780725b6f210bcbeb3b03da2445b8 inherit pro_attribs_class_i_window_keeper"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p>Взаимодействие врага с объектами лабиринта, что порождает игровые события </p>
+</div><h2 class="groupheader">Конструктор(ы)</h2>
+<a id="a90b51ee7191c9fd1fc5e207bc35f1153" name="a90b51ee7191c9fd1fc5e207bc35f1153"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a90b51ee7191c9fd1fc5e207bc35f1153">&#9670;&#160;</a></span>GameState()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">GameState::GameState </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>state_manager</em></span>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const sf::VideoMode &amp;</td>          <td class="paramname"><span class="paramname"><em>video_mode</em></span>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const std::string &amp;</td>          <td class="paramname"><span class="paramname"><em>window_title</em></span>&#160;)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>зацикливание музыки </p>
+</blockquote>
+
+</div>
+</div>
+<h2 class="groupheader">Методы</h2>
+<a id="a23e128aa6ff73027e0d4a9e6ea54bc7c" name="a23e128aa6ff73027e0d4a9e6ea54bc7c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a23e128aa6ff73027e0d4a9e6ea54bc7c">&#9670;&#160;</a></span>do_step()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool GameState::do_step </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="class_i_state.html">IState</a>.</p>
+
+</div>
+</div>
+<a id="a180391dfe966058da0389146534e66d0" name="a180391dfe966058da0389146534e66d0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a180391dfe966058da0389146534e66d0">&#9670;&#160;</a></span>event_handling()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void GameState::event_handling </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>переключение состояния </p>
+</blockquote>
+
+<p>Замещает <a class="el" href="class_i_window_keeper.html">IWindowKeeper</a>.</p>
+
+</div>
+</div>
+<a id="a2c36ada0cae89f91d956e2c91b070893" name="a2c36ada0cae89f91d956e2c91b070893"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2c36ada0cae89f91d956e2c91b070893">&#9670;&#160;</a></span>render()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void GameState::render </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>обновление сцены </p>
+</blockquote>
+
+<p>Замещает <a class="el" href="class_i_window_keeper.html#a973ef4befa8fd3b1fbb7e05a2c5904da">IWindowKeeper</a>.</p>
+
+</div>
+</div>
+<a id="a3610da76344c5c2cbcc5921f877226dc" name="a3610da76344c5c2cbcc5921f877226dc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3610da76344c5c2cbcc5921f877226dc">&#9670;&#160;</a></span>update()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void GameState::update </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>обработка событий окна </p>
+</blockquote>
+
+<p>Замещает <a class="el" href="class_i_window_keeper.html#a46683ebaa51a36a8bb6bb22ed12b83b7">IWindowKeeper</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/State/<a class="el" href="_game_state_8h_source.html">GameState.h</a></li>
+<li>source/application/State/<b>GameState.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_game_state.html">GameState</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_game_state.js b/assets/docs/html/class_game_state.js
new file mode 100644
index 0000000000000000000000000000000000000000..29e1f867442ef5074cc23610e3b0ae4f33355ca4
--- /dev/null
+++ b/assets/docs/html/class_game_state.js
@@ -0,0 +1,7 @@
+var class_game_state =
+[
+    [ "GameState", "class_game_state.html#a90b51ee7191c9fd1fc5e207bc35f1153", null ],
+    [ "event_handling", "class_game_state.html#a180391dfe966058da0389146534e66d0", null ],
+    [ "render", "class_game_state.html#a2c36ada0cae89f91d956e2c91b070893", null ],
+    [ "update", "class_game_state.html#a3610da76344c5c2cbcc5921f877226dc", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/class_game_state.png b/assets/docs/html/class_game_state.png
new file mode 100644
index 0000000000000000000000000000000000000000..f80c99b02f5bef17f4eef1bb739673c3a275a1fb
Binary files /dev/null and b/assets/docs/html/class_game_state.png differ
diff --git a/assets/docs/html/class_i_entity-members.html b/assets/docs/html/class_i_entity-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..cc87411a376e4429289ff74b0ece282d2bb4a59e
--- /dev/null
+++ b/assets/docs/html/class_i_entity-members.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_i_entity.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">IEntity Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_i_entity.html">IEntity</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>draw_into</b>(sf::RenderWindow &amp;window)=0 (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>get_location</b>() (определено в <a class="el" href="class_i_entity.html">IEntity</a>)</td><td class="entry"><a class="el" href="class_i_entity.html">IEntity</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_ptr_room</b> (определено в <a class="el" href="class_i_entity.html">IEntity</a>)</td><td class="entry"><a class="el" href="class_i_entity.html">IEntity</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>prepare_for_drawing</b>()=0 (определено в <a class="el" href="struct_i_preparable.html">IPreparable</a>)</td><td class="entry"><a class="el" href="struct_i_preparable.html">IPreparable</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_location</b>(Room *ptr_room) (определено в <a class="el" href="class_i_entity.html">IEntity</a>)</td><td class="entry"><a class="el" href="class_i_entity.html">IEntity</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IDrawable</b>()=default (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_i_entity.html b/assets/docs/html/class_i_entity.html
new file mode 100644
index 0000000000000000000000000000000000000000..2a6757b00e8652f6a27f22dd9572df4377e8158a
--- /dev/null
+++ b/assets/docs/html/class_i_entity.html
@@ -0,0 +1,171 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс IEntity</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_i_entity.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="#pro-attribs">Защищенные данные</a> &#124;
+<a href="class_i_entity-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс IEntity</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт.">IEntity</a> любая сущность, которая может быть помощена в лабиринт.  
+ <a href="#details">Подробнее...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_i_entity_8h_source.html">IEntity.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:IEntity:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_i_entity.png" usemap="#IEntity_map" alt=""/>
+  <map id="IEntity_map" name="IEntity_map">
+<area href="struct_i_preparable.html" alt="IPreparable" shape="rect" coords="105,56,200,80"/>
+<area href="struct_i_drawable.html" title="Общий интерфейс для отрисовываемых сущностей и объектов" alt="IDrawable" shape="rect" coords="105,0,200,24"/>
+<area href="struct_i_dynamic_entity.html" title="Динамические сущности, наследник IEntity -&gt; может выполнять какие-то действия" alt="IDynamicEntity" shape="rect" coords="0,168,95,192"/>
+<area href="struct_i_static_entity.html" title="Статические сущности, наследник IEntity -&gt; неперемещаемые объекты, с которыми будет взаимодействовать..." alt="IStaticEntity" shape="rect" coords="105,168,200,192"/>
+<area href="class_pacman.html" alt="Pacman" shape="rect" coords="210,168,305,192"/>
+<area href="class_enemy.html" title="Конкретный наследник Enemy - враг. Если пакман наткнется хотя бы на одного врага, то он умрет -&gt; уров..." alt="Enemy" shape="rect" coords="0,224,95,248"/>
+<area href="class_food.html" title="Наследник IStaticEntity - еда." alt="Food" shape="rect" coords="105,224,200,248"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a548495c468f307c780941faa5b4c08a8" id="r_a548495c468f307c780941faa5b4c08a8"><td class="memItemLeft" align="right" valign="top"><a id="a548495c468f307c780941faa5b4c08a8" name="a548495c468f307c780941faa5b4c08a8"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_location</b> (<a class="el" href="class_room.html">Room</a> *ptr_room)</td></tr>
+<tr class="separator:a548495c468f307c780941faa5b4c08a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab24f318dbb232b2feb00115b7124e256" id="r_ab24f318dbb232b2feb00115b7124e256"><td class="memItemLeft" align="right" valign="top"><a id="ab24f318dbb232b2feb00115b7124e256" name="ab24f318dbb232b2feb00115b7124e256"></a>
+<a class="el" href="class_room.html">Room</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>get_location</b> ()</td></tr>
+<tr class="separator:ab24f318dbb232b2feb00115b7124e256"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_struct_i_preparable"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_struct_i_preparable')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="struct_i_preparable.html">IPreparable</a></td></tr>
+<tr class="memitem:a4966353adbbc641e0ba44a287d3a4410 inherit pub_methods_struct_i_preparable" id="r_a4966353adbbc641e0ba44a287d3a4410"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_i_preparable.html#a4966353adbbc641e0ba44a287d3a4410">prepare_for_drawing</a> ()=0</td></tr>
+<tr class="separator:a4966353adbbc641e0ba44a287d3a4410 inherit pub_methods_struct_i_preparable"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_struct_i_drawable"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_struct_i_drawable')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="struct_i_drawable.html">IDrawable</a></td></tr>
+<tr class="memitem:ada7415c7b262f490e05b41ffbf6e5dd5 inherit pub_methods_struct_i_drawable" id="r_ada7415c7b262f490e05b41ffbf6e5dd5"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_i_drawable.html#ada7415c7b262f490e05b41ffbf6e5dd5">draw_into</a> (sf::RenderWindow &amp;window)=0</td></tr>
+<tr class="separator:ada7415c7b262f490e05b41ffbf6e5dd5 inherit pub_methods_struct_i_drawable"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-attribs" name="pro-attribs"></a>
+Защищенные данные</h2></td></tr>
+<tr class="memitem:a7d0bfa7b8516df82bd6de6b6283f0315" id="r_a7d0bfa7b8516df82bd6de6b6283f0315"><td class="memItemLeft" align="right" valign="top"><a id="a7d0bfa7b8516df82bd6de6b6283f0315" name="a7d0bfa7b8516df82bd6de6b6283f0315"></a>
+<a class="el" href="class_room.html">Room</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>m_ptr_room</b></td></tr>
+<tr class="separator:a7d0bfa7b8516df82bd6de6b6283f0315"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p><a class="el" href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт.">IEntity</a> любая сущность, которая может быть помощена в лабиринт. </p>
+<p>Является отрисовываемой и обновляемой. </p>
+</div><hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Drawable/Entity/<a class="el" href="_i_entity_8h_source.html">IEntity.h</a></li>
+<li>source/application/Drawable/Entity/<b>IEntity.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_i_entity.html">IEntity</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_i_entity.png b/assets/docs/html/class_i_entity.png
new file mode 100644
index 0000000000000000000000000000000000000000..141230a7bc976fca5fc09772989a4fc819f8c1e4
Binary files /dev/null and b/assets/docs/html/class_i_entity.png differ
diff --git a/assets/docs/html/class_i_game_builder-members.html b/assets/docs/html/class_i_game_builder-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..bfd12344a2691b7c6e79e2b553608baaa5ccb5d9
--- /dev/null
+++ b/assets/docs/html/class_i_game_builder-members.html
@@ -0,0 +1,127 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_i_game_builder.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">IGameBuilder Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_i_game_builder.html">IGameBuilder</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>create_context</b>(float dynamic_objects_ratio, int players)=0 (определено в <a class="el" href="class_i_game_builder.html">IGameBuilder</a>)</td><td class="entry"><a class="el" href="class_i_game_builder.html">IGameBuilder</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>create_rooms</b>()=0 (определено в <a class="el" href="class_i_game_builder.html">IGameBuilder</a>)</td><td class="entry"><a class="el" href="class_i_game_builder.html">IGameBuilder</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>create_state</b>(IStateManager &amp;state_manager, const sf::VideoMode &amp;mode, const std::string &amp;window_title)=0 (определено в <a class="el" href="class_i_game_builder.html">IGameBuilder</a>)</td><td class="entry"><a class="el" href="class_i_game_builder.html">IGameBuilder</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>get_game</b>()=0 (определено в <a class="el" href="class_i_game_builder.html">IGameBuilder</a>)</td><td class="entry"><a class="el" href="class_i_game_builder.html">IGameBuilder</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_all_to_state</b>()=0 (определено в <a class="el" href="class_i_game_builder.html">IGameBuilder</a>)</td><td class="entry"><a class="el" href="class_i_game_builder.html">IGameBuilder</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>set_rooms_sides</b>()=0 (определено в <a class="el" href="class_i_game_builder.html">IGameBuilder</a>)</td><td class="entry"><a class="el" href="class_i_game_builder.html">IGameBuilder</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~IGameBuilder</b>()=default (определено в <a class="el" href="class_i_game_builder.html">IGameBuilder</a>)</td><td class="entry"><a class="el" href="class_i_game_builder.html">IGameBuilder</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_i_game_builder.html b/assets/docs/html/class_i_game_builder.html
new file mode 100644
index 0000000000000000000000000000000000000000..deb6b1c6d89f1e7d63467542252b295870235250
--- /dev/null
+++ b/assets/docs/html/class_i_game_builder.html
@@ -0,0 +1,327 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс IGameBuilder</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_i_game_builder.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_i_game_builder-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс IGameBuilder<span class="mlabels"><span class="mlabel abstract">abstract</span></span></div></div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Граф наследования:IGameBuilder:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_i_game_builder.png" usemap="#IGameBuilder_map" alt=""/>
+  <map id="IGameBuilder_map" name="IGameBuilder_map">
+<area href="class_common_builder.html" alt="CommonBuilder" shape="rect" coords="55,56,155,80"/>
+<area href="class_complex_builder.html" alt="ComplexBuilder" shape="rect" coords="0,112,100,136"/>
+<area href="class_simple_builder.html" alt="SimpleBuilder" shape="rect" coords="110,112,210,136"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a552c1a4aa029bcc59a8ee5c9f0ab6584" id="r_a552c1a4aa029bcc59a8ee5c9f0ab6584"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a552c1a4aa029bcc59a8ee5c9f0ab6584">create_rooms</a> ()=0</td></tr>
+<tr class="separator:a552c1a4aa029bcc59a8ee5c9f0ab6584"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa9e7feb88667318b226b8658270012b9" id="r_aa9e7feb88667318b226b8658270012b9"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa9e7feb88667318b226b8658270012b9">set_rooms_sides</a> ()=0</td></tr>
+<tr class="separator:aa9e7feb88667318b226b8658270012b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d2054ac9959aefd9006815711f87b68" id="r_a1d2054ac9959aefd9006815711f87b68"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1d2054ac9959aefd9006815711f87b68">create_context</a> (float dynamic_objects_ratio, int players)=0</td></tr>
+<tr class="separator:a1d2054ac9959aefd9006815711f87b68"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1b26261b23723d9ef338046c79e42b79" id="r_a1b26261b23723d9ef338046c79e42b79"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1b26261b23723d9ef338046c79e42b79">create_state</a> (<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;state_manager, const sf::VideoMode &amp;mode, const std::string &amp;window_title)=0</td></tr>
+<tr class="separator:a1b26261b23723d9ef338046c79e42b79"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a699840a2b19d1d6b338e5df80cfb4add" id="r_a699840a2b19d1d6b338e5df80cfb4add"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a699840a2b19d1d6b338e5df80cfb4add">set_all_to_state</a> ()=0</td></tr>
+<tr class="separator:a699840a2b19d1d6b338e5df80cfb4add"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf31953d4ca7f89137d91f06cf50935d" id="r_acf31953d4ca7f89137d91f06cf50935d"><td class="memItemLeft" align="right" valign="top">virtual std::unique_ptr&lt; <a class="el" href="class_game_state.html">GameState</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#acf31953d4ca7f89137d91f06cf50935d">get_game</a> ()=0</td></tr>
+<tr class="separator:acf31953d4ca7f89137d91f06cf50935d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Методы</h2>
+<a id="a1d2054ac9959aefd9006815711f87b68" name="a1d2054ac9959aefd9006815711f87b68"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1d2054ac9959aefd9006815711f87b68">&#9670;&#160;</a></span>create_context()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void IGameBuilder::create_context </td>
+          <td>(</td>
+          <td class="paramtype">float</td>          <td class="paramname"><span class="paramname"><em>dynamic_objects_ratio</em></span>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int</td>          <td class="paramname"><span class="paramname"><em>players</em></span>&#160;)</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel pure-virtual">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещается в <a class="el" href="class_common_builder.html#ace9b0433bd9b849970e2b96965818789">CommonBuilder</a>.</p>
+
+</div>
+</div>
+<a id="a552c1a4aa029bcc59a8ee5c9f0ab6584" name="a552c1a4aa029bcc59a8ee5c9f0ab6584"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a552c1a4aa029bcc59a8ee5c9f0ab6584">&#9670;&#160;</a></span>create_rooms()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void IGameBuilder::create_rooms </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel pure-virtual">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещается в <a class="el" href="class_complex_builder.html#ac0dfa4956df4c1d1d9a61aa186fc8ac0">ComplexBuilder</a> и <a class="el" href="class_simple_builder.html#ad02dcc4d85cec356f6169ce938242226">SimpleBuilder</a>.</p>
+
+</div>
+</div>
+<a id="a1b26261b23723d9ef338046c79e42b79" name="a1b26261b23723d9ef338046c79e42b79"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1b26261b23723d9ef338046c79e42b79">&#9670;&#160;</a></span>create_state()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void IGameBuilder::create_state </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>state_manager</em></span>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const sf::VideoMode &amp;</td>          <td class="paramname"><span class="paramname"><em>mode</em></span>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const std::string &amp;</td>          <td class="paramname"><span class="paramname"><em>window_title</em></span>&#160;)</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel pure-virtual">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещается в <a class="el" href="class_common_builder.html#a4e45999e05a45814ed25ed3adbbe07e0">CommonBuilder</a>.</p>
+
+</div>
+</div>
+<a id="acf31953d4ca7f89137d91f06cf50935d" name="acf31953d4ca7f89137d91f06cf50935d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acf31953d4ca7f89137d91f06cf50935d">&#9670;&#160;</a></span>get_game()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual std::unique_ptr&lt; <a class="el" href="class_game_state.html">GameState</a> &gt; IGameBuilder::get_game </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel pure-virtual">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещается в <a class="el" href="class_common_builder.html#aafef8d08b8bfdfccfde6ff56bfb99987">CommonBuilder</a>.</p>
+
+</div>
+</div>
+<a id="a699840a2b19d1d6b338e5df80cfb4add" name="a699840a2b19d1d6b338e5df80cfb4add"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a699840a2b19d1d6b338e5df80cfb4add">&#9670;&#160;</a></span>set_all_to_state()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void IGameBuilder::set_all_to_state </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel pure-virtual">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещается в <a class="el" href="class_common_builder.html#ae920c0a91e61aff620096c100e496da0">CommonBuilder</a>.</p>
+
+</div>
+</div>
+<a id="aa9e7feb88667318b226b8658270012b9" name="aa9e7feb88667318b226b8658270012b9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa9e7feb88667318b226b8658270012b9">&#9670;&#160;</a></span>set_rooms_sides()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void IGameBuilder::set_rooms_sides </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel pure-virtual">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещается в <a class="el" href="class_complex_builder.html#a93755bc2d5ac20722de6bce3d35aa336">ComplexBuilder</a> и <a class="el" href="class_simple_builder.html#aa1c6b39ff7d52a0f8cf811ef91d1feaa">SimpleBuilder</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов класса находятся в файле:<ul>
+<li>source/application/BobBuilder/<a class="el" href="_i_game_builder_8h_source.html">IGameBuilder.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_i_game_builder.html">IGameBuilder</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_i_game_builder.png b/assets/docs/html/class_i_game_builder.png
new file mode 100644
index 0000000000000000000000000000000000000000..9ff40b53971b1c1d12cc0b44539cb34acf66968f
Binary files /dev/null and b/assets/docs/html/class_i_game_builder.png differ
diff --git a/assets/docs/html/class_i_game_event-members.html b/assets/docs/html/class_i_game_event-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..9e46e38c6101289b8ac3f88223140a5b53aeac7b
--- /dev/null
+++ b/assets/docs/html/class_i_game_event-members.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_i_game_event.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">IGameEvent Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_i_game_event.html">IGameEvent</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>add_observer</b>(IObserver *observer) (определено в <a class="el" href="class_i_game_event.html">IGameEvent</a>)</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>handle</b>(GameContext *context)=0 (определено в <a class="el" href="class_i_game_event.html">IGameEvent</a>)</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>notify</b>() const (определено в <a class="el" href="class_i_game_event.html">IGameEvent</a>)</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">~IGameEvent</a>()=default</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_i_game_event.html b/assets/docs/html/class_i_game_event.html
new file mode 100644
index 0000000000000000000000000000000000000000..184f6543957c7be5399d728f2fe5deb9d12ce697
--- /dev/null
+++ b/assets/docs/html/class_i_game_event.html
@@ -0,0 +1,221 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс IGameEvent</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_i_game_event.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="#pro-methods">Защищенные члены</a> &#124;
+<a href="class_i_game_event-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс IGameEvent<span class="mlabels"><span class="mlabel abstract">abstract</span></span></div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Абстрактрый класс для различных игровых событий  
+ <a href="#details">Подробнее...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_i_game_event_8h_source.html">IGameEvent.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:IGameEvent:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_i_game_event.png" usemap="#IGameEvent_map" alt=""/>
+  <map id="IGameEvent_map" name="IGameEvent_map">
+<area href="class_delete_static_entity.html" title="Удаление еды." alt="DeleteStaticEntity" shape="rect" coords="0,56,157,80"/>
+<area href="class_lost_game.html" alt="LostGame" shape="rect" coords="167,56,324,80"/>
+<area href="class_screamer_composite_event.html" title="Совмещение двум событий: удаление еды и скример В ресурсах храним сущность, которую хотим удалить." alt="ScreamerCompositeEvent" shape="rect" coords="334,56,491,80"/>
+<area href="struct_screamer_event.html" title="Скример" alt="ScreamerEvent" shape="rect" coords="501,56,658,80"/>
+<area href="class_win_game.html" alt="WinGame" shape="rect" coords="668,56,825,80"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a498fa2b2247e79f8b5cceec6c9e58712" id="r_a498fa2b2247e79f8b5cceec6c9e58712"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a498fa2b2247e79f8b5cceec6c9e58712">handle</a> (<a class="el" href="struct_game_context.html">GameContext</a> *context)=0</td></tr>
+<tr class="separator:a498fa2b2247e79f8b5cceec6c9e58712"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae84f5f2b3d3bd7834e334c4e6fcde711" id="r_ae84f5f2b3d3bd7834e334c4e6fcde711"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae84f5f2b3d3bd7834e334c4e6fcde711">~IGameEvent</a> ()=default</td></tr>
+<tr class="separator:ae84f5f2b3d3bd7834e334c4e6fcde711"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b231dafdf4bdbc98f7d75b5205a8b99" id="r_a6b231dafdf4bdbc98f7d75b5205a8b99"><td class="memItemLeft" align="right" valign="top"><a id="a6b231dafdf4bdbc98f7d75b5205a8b99" name="a6b231dafdf4bdbc98f7d75b5205a8b99"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>add_observer</b> (<a class="el" href="class_i_observer.html">IObserver</a> *observer)</td></tr>
+<tr class="separator:a6b231dafdf4bdbc98f7d75b5205a8b99"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-methods" name="pro-methods"></a>
+Защищенные члены</h2></td></tr>
+<tr class="memitem:a1bc7533cd09ababa60363e5afbb7e787" id="r_a1bc7533cd09ababa60363e5afbb7e787"><td class="memItemLeft" align="right" valign="top"><a id="a1bc7533cd09ababa60363e5afbb7e787" name="a1bc7533cd09ababa60363e5afbb7e787"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>notify</b> () const</td></tr>
+<tr class="separator:a1bc7533cd09ababa60363e5afbb7e787"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p>Абстрактрый класс для различных игровых событий </p>
+<p>Конкретные наследники получают в аргумент обрабатываемый контекст, который могут менять </p>
+</div><h2 class="groupheader">Конструктор(ы)</h2>
+<a id="ae84f5f2b3d3bd7834e334c4e6fcde711" name="ae84f5f2b3d3bd7834e334c4e6fcde711"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae84f5f2b3d3bd7834e334c4e6fcde711">&#9670;&#160;</a></span>~IGameEvent()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual IGameEvent::~IGameEvent </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel virtual">virtual</span><span class="mlabel default">default</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>редактирование контекста игры </p>
+</blockquote>
+
+</div>
+</div>
+<h2 class="groupheader">Методы</h2>
+<a id="a498fa2b2247e79f8b5cceec6c9e58712" name="a498fa2b2247e79f8b5cceec6c9e58712"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a498fa2b2247e79f8b5cceec6c9e58712">&#9670;&#160;</a></span>handle()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void IGameEvent::handle </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="struct_game_context.html">GameContext</a> *</td>          <td class="paramname"><span class="paramname"><em>context</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel pure-virtual">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещается в <a class="el" href="class_delete_static_entity.html#aadc4bbbd570e947fca78e222dbfacb43">DeleteStaticEntity</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Event/<a class="el" href="_i_game_event_8h_source.html">IGameEvent.h</a></li>
+<li>source/application/Event/<b>IGameEvent.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_i_game_event.html">IGameEvent</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_i_game_event.js b/assets/docs/html/class_i_game_event.js
new file mode 100644
index 0000000000000000000000000000000000000000..a11602f6e71b4a864cbd2d7e1e869413f428a3fa
--- /dev/null
+++ b/assets/docs/html/class_i_game_event.js
@@ -0,0 +1,4 @@
+var class_i_game_event =
+[
+    [ "~IGameEvent", "class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/class_i_game_event.png b/assets/docs/html/class_i_game_event.png
new file mode 100644
index 0000000000000000000000000000000000000000..ca094e3a8e9255973dd74cb2576db4a44ae2265b
Binary files /dev/null and b/assets/docs/html/class_i_game_event.png differ
diff --git a/assets/docs/html/class_i_observer-members.html b/assets/docs/html/class_i_observer-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..d74e29ec8f506667e0f149f8ac7b5e05988246de
--- /dev/null
+++ b/assets/docs/html/class_i_observer-members.html
@@ -0,0 +1,122 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_i_observer.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">IObserver Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_i_observer.html">IObserver</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>on_notify</b>(const IGameEvent &amp;event)=0 (определено в <a class="el" href="class_i_observer.html">IObserver</a>)</td><td class="entry"><a class="el" href="class_i_observer.html">IObserver</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IObserver</b>()=default (определено в <a class="el" href="class_i_observer.html">IObserver</a>)</td><td class="entry"><a class="el" href="class_i_observer.html">IObserver</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_i_observer.html b/assets/docs/html/class_i_observer.html
new file mode 100644
index 0000000000000000000000000000000000000000..081866c2b6e5dc316addad1705b81f4bd0802c9b
--- /dev/null
+++ b/assets/docs/html/class_i_observer.html
@@ -0,0 +1,174 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс IObserver</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_i_observer.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_i_observer-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс IObserver<span class="mlabels"><span class="mlabel abstract">abstract</span></span></div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Паттерн Observer. Общий интерфейс для наблюдателей  
+ <a href="#details">Подробнее...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_i_observer_8h_source.html">IObserver.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:IObserver:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_i_observer.png" usemap="#IObserver_map" alt=""/>
+  <map id="IObserver_map" name="IObserver_map">
+<area href="class_score_count.html" title="Наблюдатель - счетчик еды. При съедании еды посылается уведомление и наблюдатель увеличивает счетчик ..." alt="ScoreCount" shape="rect" coords="0,56,79,80"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a1357257dc806c9ee8278225d9c4cd0c0" id="r_a1357257dc806c9ee8278225d9c4cd0c0"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1357257dc806c9ee8278225d9c4cd0c0">on_notify</a> (const <a class="el" href="class_i_game_event.html">IGameEvent</a> &amp;event)=0</td></tr>
+<tr class="separator:a1357257dc806c9ee8278225d9c4cd0c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p>Паттерн Observer. Общий интерфейс для наблюдателей </p>
+</div><h2 class="groupheader">Методы</h2>
+<a id="a1357257dc806c9ee8278225d9c4cd0c0" name="a1357257dc806c9ee8278225d9c4cd0c0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1357257dc806c9ee8278225d9c4cd0c0">&#9670;&#160;</a></span>on_notify()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void IObserver::on_notify </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="class_i_game_event.html">IGameEvent</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>event</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel pure-virtual">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещается в <a class="el" href="class_score_count.html#ac3920f1272e0d1df949eea48b04896c1">ScoreCount</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов класса находятся в файле:<ul>
+<li>source/application/Drawable/Entity/<a class="el" href="_i_observer_8h_source.html">IObserver.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_i_observer.html">IObserver</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_i_observer.png b/assets/docs/html/class_i_observer.png
new file mode 100644
index 0000000000000000000000000000000000000000..fa873c8141e222796989f18998612f26fa58eeed
Binary files /dev/null and b/assets/docs/html/class_i_observer.png differ
diff --git a/assets/docs/html/class_i_room_side-members.html b/assets/docs/html/class_i_room_side-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..5ce4886e540d4caef7f7a3872286c0f08aea0e18
--- /dev/null
+++ b/assets/docs/html/class_i_room_side-members.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_i_room_side.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">IRoomSide Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_i_room_side.html">IRoomSide</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>draw_into</b>(sf::RenderWindow &amp;window)=0 (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>enter</b>(IEntity *entity)=0 (определено в <a class="el" href="class_i_room_side.html">IRoomSide</a>)</td><td class="entry"><a class="el" href="class_i_room_side.html">IRoomSide</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>prepare_for_drawing</b>()=0 (определено в <a class="el" href="struct_i_preparable.html">IPreparable</a>)</td><td class="entry"><a class="el" href="struct_i_preparable.html">IPreparable</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IDrawable</b>()=default (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_i_room_side.html b/assets/docs/html/class_i_room_side.html
new file mode 100644
index 0000000000000000000000000000000000000000..0b8f765c52d80c7d8fe5e904f71d3be1b238707c
--- /dev/null
+++ b/assets/docs/html/class_i_room_side.html
@@ -0,0 +1,149 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс IRoomSide</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_i_room_side.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_i_room_side-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс IRoomSide<span class="mlabels"><span class="mlabel abstract">abstract</span></span></div></div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Граф наследования:IRoomSide:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_i_room_side.png" usemap="#IRoomSide_map" alt=""/>
+  <map id="IRoomSide_map" name="IRoomSide_map">
+<area href="struct_i_preparable.html" alt="IPreparable" shape="rect" coords="44,56,122,80"/>
+<area href="struct_i_drawable.html" title="Общий интерфейс для отрисовываемых сущностей и объектов" alt="IDrawable" shape="rect" coords="44,0,122,24"/>
+<area href="class_pass.html" title="проход, который знает о двух комнатах, которые он связывает" alt="Pass" shape="rect" coords="0,168,78,192"/>
+<area href="class_wall.html" title="стена, которая хранит в себе информацию о том в какой комнате находится" alt="Wall" shape="rect" coords="88,168,166,192"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a1be3c6d9825fd90324b28fe34b1d03cb" id="r_a1be3c6d9825fd90324b28fe34b1d03cb"><td class="memItemLeft" align="right" valign="top"><a id="a1be3c6d9825fd90324b28fe34b1d03cb" name="a1be3c6d9825fd90324b28fe34b1d03cb"></a>
+virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>enter</b> (<a class="el" href="class_i_entity.html">IEntity</a> *entity)=0</td></tr>
+<tr class="separator:a1be3c6d9825fd90324b28fe34b1d03cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_struct_i_preparable"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_struct_i_preparable')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="struct_i_preparable.html">IPreparable</a></td></tr>
+<tr class="memitem:a4966353adbbc641e0ba44a287d3a4410 inherit pub_methods_struct_i_preparable" id="r_a4966353adbbc641e0ba44a287d3a4410"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_i_preparable.html#a4966353adbbc641e0ba44a287d3a4410">prepare_for_drawing</a> ()=0</td></tr>
+<tr class="separator:a4966353adbbc641e0ba44a287d3a4410 inherit pub_methods_struct_i_preparable"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_struct_i_drawable"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_struct_i_drawable')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="struct_i_drawable.html">IDrawable</a></td></tr>
+<tr class="memitem:ada7415c7b262f490e05b41ffbf6e5dd5 inherit pub_methods_struct_i_drawable" id="r_ada7415c7b262f490e05b41ffbf6e5dd5"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_i_drawable.html#ada7415c7b262f490e05b41ffbf6e5dd5">draw_into</a> (sf::RenderWindow &amp;window)=0</td></tr>
+<tr class="separator:ada7415c7b262f490e05b41ffbf6e5dd5 inherit pub_methods_struct_i_drawable"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<hr/>Объявления и описания членов класса находятся в файле:<ul>
+<li>source/application/Drawable/Maze/<a class="el" href="_maze_8h_source.html">Maze.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_i_room_side.html">IRoomSide</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_i_room_side.png b/assets/docs/html/class_i_room_side.png
new file mode 100644
index 0000000000000000000000000000000000000000..fdf29989ec96d85ad6cbda08ee00a8d9646f017b
Binary files /dev/null and b/assets/docs/html/class_i_room_side.png differ
diff --git a/assets/docs/html/class_i_select_command-members.html b/assets/docs/html/class_i_select_command-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..494947f8a475a2b8f651abcb034b010dceed107a
--- /dev/null
+++ b/assets/docs/html/class_i_select_command-members.html
@@ -0,0 +1,122 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_i_select_command.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">ISelectCommand Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_i_select_command.html">ISelectCommand</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>execute</b>()=0 (определено в <a class="el" href="class_i_select_command.html">ISelectCommand</a>)</td><td class="entry"><a class="el" href="class_i_select_command.html">ISelectCommand</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~ISelectCommand</b>()=default (определено в <a class="el" href="class_i_select_command.html">ISelectCommand</a>)</td><td class="entry"><a class="el" href="class_i_select_command.html">ISelectCommand</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_i_select_command.html b/assets/docs/html/class_i_select_command.html
new file mode 100644
index 0000000000000000000000000000000000000000..47ec3fac7e1023522e35b763ee50460172b39557
--- /dev/null
+++ b/assets/docs/html/class_i_select_command.html
@@ -0,0 +1,142 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс ISelectCommand</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_i_select_command.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_i_select_command-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс ISelectCommand<span class="mlabels"><span class="mlabel abstract">abstract</span></span></div></div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Граф наследования:ISelectCommand:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_i_select_command.png" usemap="#ISelectCommand_map" alt=""/>
+  <map id="ISelectCommand_map" name="ISelectCommand_map">
+<area href="class_change_state_command.html" alt="ChangeStateCommand" shape="rect" coords="74,56,213,80"/>
+<area href="class_exit_command.html" alt="ExitCommand" shape="rect" coords="0,112,139,136"/>
+<area href="class_game_command.html" alt="GameCommand" shape="rect" coords="149,112,288,136"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a93b61a2d5bab30fd39dc457979caabea" id="r_a93b61a2d5bab30fd39dc457979caabea"><td class="memItemLeft" align="right" valign="top"><a id="a93b61a2d5bab30fd39dc457979caabea" name="a93b61a2d5bab30fd39dc457979caabea"></a>
+virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>execute</b> ()=0</td></tr>
+<tr class="separator:a93b61a2d5bab30fd39dc457979caabea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<hr/>Объявления и описания членов класса находятся в файле:<ul>
+<li>source/application/SelectCommand/<a class="el" href="_i_select_command_8h_source.html">ISelectCommand.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_i_select_command.html">ISelectCommand</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_i_select_command.png b/assets/docs/html/class_i_select_command.png
new file mode 100644
index 0000000000000000000000000000000000000000..ad563afc70c4f63ed3cc2fdcdaf1dc65e9adec60
Binary files /dev/null and b/assets/docs/html/class_i_select_command.png differ
diff --git a/assets/docs/html/class_i_state-members.html b/assets/docs/html/class_i_state-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..1d4e39c3592710b7981f60890f793335cf0aeb31
--- /dev/null
+++ b/assets/docs/html/class_i_state-members.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_i_state.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">IState Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_i_state.html">IState</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>do_step</b>()=0 (определено в <a class="el" href="class_i_state.html">IState</a>)</td><td class="entry"><a class="el" href="class_i_state.html">IState</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>IState</b>(IStateManager &amp;state_manager) (определено в <a class="el" href="class_i_state.html">IState</a>)</td><td class="entry"><a class="el" href="class_i_state.html">IState</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_state_manager</b> (определено в <a class="el" href="class_i_state.html">IState</a>)</td><td class="entry"><a class="el" href="class_i_state.html">IState</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IState</b>()=default (определено в <a class="el" href="class_i_state.html">IState</a>)</td><td class="entry"><a class="el" href="class_i_state.html">IState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_i_state.html b/assets/docs/html/class_i_state.html
new file mode 100644
index 0000000000000000000000000000000000000000..51104ceb9a4047a09f02261de127c4b96ba8712f
--- /dev/null
+++ b/assets/docs/html/class_i_state.html
@@ -0,0 +1,156 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс IState</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_i_state.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="#pro-attribs">Защищенные данные</a> &#124;
+<a href="class_i_state-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс IState<span class="mlabels"><span class="mlabel abstract">abstract</span></span></div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="_i_state_8h_source.html">IState.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:IState:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_i_state.png" usemap="#IState_map" alt=""/>
+  <map id="IState_map" name="IState_map">
+<area href="class_exit_state.html" title="Состояние, которое завершает игры. Для этого в do_step всегда возвращает false -&gt; так Application пой..." alt="ExitState" shape="rect" coords="0,56,75,80"/>
+<area href="class_game_state.html" title="Взаимодействие врага с объектами лабиринта, что порождает игровые события" alt="GameState" shape="rect" coords="85,56,160,80"/>
+<area href="struct_select_state.html" title="SelectState - состояние, при котором происходит выбор уровня и выход из игры." alt="SelectState" shape="rect" coords="170,56,245,80"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:af6af0f026f832dd82a6989ba54c5bf25" id="r_af6af0f026f832dd82a6989ba54c5bf25"><td class="memItemLeft" align="right" valign="top"><a id="af6af0f026f832dd82a6989ba54c5bf25" name="af6af0f026f832dd82a6989ba54c5bf25"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><b>IState</b> (<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;state_manager)</td></tr>
+<tr class="separator:af6af0f026f832dd82a6989ba54c5bf25"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4428898f0765e2c1478ac2898dc7ff5c" id="r_a4428898f0765e2c1478ac2898dc7ff5c"><td class="memItemLeft" align="right" valign="top"><a id="a4428898f0765e2c1478ac2898dc7ff5c" name="a4428898f0765e2c1478ac2898dc7ff5c"></a>
+virtual bool&#160;</td><td class="memItemRight" valign="bottom"><b>do_step</b> ()=0</td></tr>
+<tr class="separator:a4428898f0765e2c1478ac2898dc7ff5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-attribs" name="pro-attribs"></a>
+Защищенные данные</h2></td></tr>
+<tr class="memitem:a394ae1a10e9e1d0bb9d0a14d59ef385f" id="r_a394ae1a10e9e1d0bb9d0a14d59ef385f"><td class="memItemLeft" align="right" valign="top"><a id="a394ae1a10e9e1d0bb9d0a14d59ef385f" name="a394ae1a10e9e1d0bb9d0a14d59ef385f"></a>
+<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>m_state_manager</b></td></tr>
+<tr class="separator:a394ae1a10e9e1d0bb9d0a14d59ef385f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p>Смена состояний происходит через "машину состояний", реализованная через паттерн STATE </p>
+</div><hr/>Объявления и описания членов класса находятся в файле:<ul>
+<li>source/application/State/<a class="el" href="_i_state_8h_source.html">IState.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_i_state.html">IState</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_i_state.png b/assets/docs/html/class_i_state.png
new file mode 100644
index 0000000000000000000000000000000000000000..14acd15b25726b756d47c187120e15530b4bcd8a
Binary files /dev/null and b/assets/docs/html/class_i_state.png differ
diff --git a/assets/docs/html/class_i_visitable-members.html b/assets/docs/html/class_i_visitable-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..cc1cd17b79f25df1e98f532b2c553b7911b5bcf1
--- /dev/null
+++ b/assets/docs/html/class_i_visitable-members.html
@@ -0,0 +1,121 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_i_visitable.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">IVisitable Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_i_visitable.html">IVisitable</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>accept</b>(IVisitor *ptr_visitor)=0 (определено в <a class="el" href="class_i_visitable.html">IVisitable</a>)</td><td class="entry"><a class="el" href="class_i_visitable.html">IVisitable</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_i_visitable.html b/assets/docs/html/class_i_visitable.html
new file mode 100644
index 0000000000000000000000000000000000000000..ce8757d72a3332d2001cec63b2a54aa42165ddbc
--- /dev/null
+++ b/assets/docs/html/class_i_visitable.html
@@ -0,0 +1,170 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс IVisitable</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_i_visitable.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_i_visitable-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс IVisitable<span class="mlabels"><span class="mlabel abstract">abstract</span></span></div></div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Граф наследования:IVisitable:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_i_visitable.png" usemap="#IVisitable_map" alt=""/>
+  <map id="IVisitable_map" name="IVisitable_map">
+<area href="struct_i_dynamic_entity.html" title="Динамические сущности, наследник IEntity -&gt; может выполнять какие-то действия" alt="IDynamicEntity" shape="rect" coords="0,56,95,80"/>
+<area href="struct_i_static_entity.html" title="Статические сущности, наследник IEntity -&gt; неперемещаемые объекты, с которыми будет взаимодействовать..." alt="IStaticEntity" shape="rect" coords="105,56,200,80"/>
+<area href="class_enemy.html" title="Конкретный наследник Enemy - враг. Если пакман наткнется хотя бы на одного врага, то он умрет -&gt; уров..." alt="Enemy" shape="rect" coords="0,112,95,136"/>
+<area href="class_food.html" title="Наследник IStaticEntity - еда." alt="Food" shape="rect" coords="105,112,200,136"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a5eca8bc2f0a588e5a25498fd6e4badbf" id="r_a5eca8bc2f0a588e5a25498fd6e4badbf"><td class="memItemLeft" align="right" valign="top">virtual std::unique_ptr&lt; <a class="el" href="class_i_game_event.html">IGameEvent</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5eca8bc2f0a588e5a25498fd6e4badbf">accept</a> (<a class="el" href="class_i_visitor.html">IVisitor</a> *ptr_visitor)=0</td></tr>
+<tr class="separator:a5eca8bc2f0a588e5a25498fd6e4badbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Методы</h2>
+<a id="a5eca8bc2f0a588e5a25498fd6e4badbf" name="a5eca8bc2f0a588e5a25498fd6e4badbf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5eca8bc2f0a588e5a25498fd6e4badbf">&#9670;&#160;</a></span>accept()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual std::unique_ptr&lt; <a class="el" href="class_i_game_event.html">IGameEvent</a> &gt; IVisitable::accept </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="class_i_visitor.html">IVisitor</a> *</td>          <td class="paramname"><span class="paramname"><em>ptr_visitor</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel pure-virtual">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещается в <a class="el" href="class_enemy.html#a12c591e7c61ccafe8f0c0a5727434d2f">Enemy</a> и <a class="el" href="class_food.html#a66afb32708f97daf5bca2fae17ca3ad2">Food</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов класса находятся в файле:<ul>
+<li>source/application/Drawable/Entity/<a class="el" href="_i_entity_8h_source.html">IEntity.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_i_visitable.html">IVisitable</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_i_visitable.png b/assets/docs/html/class_i_visitable.png
new file mode 100644
index 0000000000000000000000000000000000000000..fbc52a20cd78a5591016def246ec55d295e198ae
Binary files /dev/null and b/assets/docs/html/class_i_visitable.png differ
diff --git a/assets/docs/html/class_i_visitor-members.html b/assets/docs/html/class_i_visitor-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..95a71dabfffd0fbede3318b09eb1aaa6792875ee
--- /dev/null
+++ b/assets/docs/html/class_i_visitor-members.html
@@ -0,0 +1,122 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_i_visitor.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">IVisitor Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_i_visitor.html">IVisitor</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>visit</b>(Food *ptr_entity)=0 (определено в <a class="el" href="class_i_visitor.html">IVisitor</a>)</td><td class="entry"><a class="el" href="class_i_visitor.html">IVisitor</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>visit</b>(Enemy *ptr_entity)=0 (определено в <a class="el" href="class_i_visitor.html">IVisitor</a>)</td><td class="entry"><a class="el" href="class_i_visitor.html">IVisitor</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_i_visitor.html b/assets/docs/html/class_i_visitor.html
new file mode 100644
index 0000000000000000000000000000000000000000..bb63f3bc2664bdf14404e992acabea01db2fc54b
--- /dev/null
+++ b/assets/docs/html/class_i_visitor.html
@@ -0,0 +1,177 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс IVisitor</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_i_visitor.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_i_visitor-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс IVisitor<span class="mlabels"><span class="mlabel abstract">abstract</span></span></div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: <a class="el" href="class_i_visitor.html" title="Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: IVisitor (посетит...">IVisitor</a> (посетитель) и <a class="el" href="class_i_visitable.html">IVisitable</a> (нечто посещаемое)  
+ <a href="#details">Подробнее...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_i_entity_8h_source.html">IEntity.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:IVisitor:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_i_visitor.png" usemap="#IVisitor_map" alt=""/>
+  <map id="IVisitor_map" name="IVisitor_map">
+<area href="class_pacman.html" alt="Pacman" shape="rect" coords="0,56,57,80"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a174fa4b935c2adda01244b21ab5cf915" id="r_a174fa4b935c2adda01244b21ab5cf915"><td class="memItemLeft" align="right" valign="top">virtual std::unique_ptr&lt; <a class="el" href="class_i_game_event.html">IGameEvent</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a174fa4b935c2adda01244b21ab5cf915">visit</a> (<a class="el" href="class_food.html">Food</a> *ptr_entity)=0</td></tr>
+<tr class="separator:a174fa4b935c2adda01244b21ab5cf915"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2aa4d23b41981e5c9c38509ad4273970" id="r_a2aa4d23b41981e5c9c38509ad4273970"><td class="memItemLeft" align="right" valign="top"><a id="a2aa4d23b41981e5c9c38509ad4273970" name="a2aa4d23b41981e5c9c38509ad4273970"></a>
+virtual std::unique_ptr&lt; <a class="el" href="class_i_game_event.html">IGameEvent</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>visit</b> (<a class="el" href="class_enemy.html">Enemy</a> *ptr_entity)=0</td></tr>
+<tr class="separator:a2aa4d23b41981e5c9c38509ad4273970"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p>Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: <a class="el" href="class_i_visitor.html" title="Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: IVisitor (посетит...">IVisitor</a> (посетитель) и <a class="el" href="class_i_visitable.html">IVisitable</a> (нечто посещаемое) </p>
+</div><h2 class="groupheader">Методы</h2>
+<a id="a174fa4b935c2adda01244b21ab5cf915" name="a174fa4b935c2adda01244b21ab5cf915"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a174fa4b935c2adda01244b21ab5cf915">&#9670;&#160;</a></span>visit()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual std::unique_ptr&lt; <a class="el" href="class_i_game_event.html">IGameEvent</a> &gt; IVisitor::visit </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="class_food.html">Food</a> *</td>          <td class="paramname"><span class="paramname"><em>ptr_entity</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel pure-virtual">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещается в <a class="el" href="class_pacman.html#ac4b928c45d22d9814a02b7a621c5ae7c">Pacman</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов класса находятся в файле:<ul>
+<li>source/application/Drawable/Entity/<a class="el" href="_i_entity_8h_source.html">IEntity.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_i_visitor.html">IVisitor</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_i_visitor.png b/assets/docs/html/class_i_visitor.png
new file mode 100644
index 0000000000000000000000000000000000000000..1c7799dcd53f27d91c02b72073691ab31a6a5063
Binary files /dev/null and b/assets/docs/html/class_i_visitor.png differ
diff --git a/assets/docs/html/class_i_window_keeper-members.html b/assets/docs/html/class_i_window_keeper-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..18a851bc14e6e7c3d11d93328da8ddc1479d6d43
--- /dev/null
+++ b/assets/docs/html/class_i_window_keeper-members.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_i_window_keeper.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">IWindowKeeper Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_i_window_keeper.html">IWindowKeeper</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>event_handling</b>()=0 (определено в <a class="el" href="class_i_window_keeper.html">IWindowKeeper</a>)</td><td class="entry"><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>IWindowKeeper</b>(const sf::VideoMode &amp;video_mode, const std::string &amp;window_title) (определено в <a class="el" href="class_i_window_keeper.html">IWindowKeeper</a>)</td><td class="entry"><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_i_window_keeper.html#aef0780725b6f210bcbeb3b03da2445b8">m_window</a></td><td class="entry"><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_i_window_keeper.html#a973ef4befa8fd3b1fbb7e05a2c5904da">render</a>()=0</td><td class="entry"><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_i_window_keeper.html#a46683ebaa51a36a8bb6bb22ed12b83b7">update</a>()=0</td><td class="entry"><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IWindowKeeper</b>()=default (определено в <a class="el" href="class_i_window_keeper.html">IWindowKeeper</a>)</td><td class="entry"><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_i_window_keeper.html b/assets/docs/html/class_i_window_keeper.html
new file mode 100644
index 0000000000000000000000000000000000000000..059b7d11d9e1ca0ca3d7612cca78a76a6cf3fc3b
--- /dev/null
+++ b/assets/docs/html/class_i_window_keeper.html
@@ -0,0 +1,276 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс IWindowKeeper</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_i_window_keeper.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="#pro-methods">Защищенные члены</a> &#124;
+<a href="#pro-attribs">Защищенные данные</a> &#124;
+<a href="class_i_window_keeper-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс IWindowKeeper<span class="mlabels"><span class="mlabel abstract">abstract</span></span></div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="_i_window_keeper_8h_source.html">IWindowKeeper.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:IWindowKeeper:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_i_window_keeper.png" usemap="#IWindowKeeper_map" alt=""/>
+  <map id="IWindowKeeper_map" name="IWindowKeeper_map">
+<area href="class_game_state.html" title="Взаимодействие врага с объектами лабиринта, что порождает игровые события" alt="GameState" shape="rect" coords="0,56,100,80"/>
+<area href="struct_select_state.html" title="SelectState - состояние, при котором происходит выбор уровня и выход из игры." alt="SelectState" shape="rect" coords="110,56,210,80"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a5d2b968accf27ddf1b637e166dbf2243" id="r_a5d2b968accf27ddf1b637e166dbf2243"><td class="memItemLeft" align="right" valign="top"><a id="a5d2b968accf27ddf1b637e166dbf2243" name="a5d2b968accf27ddf1b637e166dbf2243"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><b>IWindowKeeper</b> (const sf::VideoMode &amp;video_mode, const std::string &amp;window_title)</td></tr>
+<tr class="separator:a5d2b968accf27ddf1b637e166dbf2243"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-methods" name="pro-methods"></a>
+Защищенные члены</h2></td></tr>
+<tr class="memitem:ab275378083e3b5a04a47af2a2f20169a" id="r_ab275378083e3b5a04a47af2a2f20169a"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab275378083e3b5a04a47af2a2f20169a">event_handling</a> ()=0</td></tr>
+<tr class="separator:ab275378083e3b5a04a47af2a2f20169a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a46683ebaa51a36a8bb6bb22ed12b83b7" id="r_a46683ebaa51a36a8bb6bb22ed12b83b7"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a46683ebaa51a36a8bb6bb22ed12b83b7">update</a> ()=0</td></tr>
+<tr class="separator:a46683ebaa51a36a8bb6bb22ed12b83b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a973ef4befa8fd3b1fbb7e05a2c5904da" id="r_a973ef4befa8fd3b1fbb7e05a2c5904da"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a973ef4befa8fd3b1fbb7e05a2c5904da">render</a> ()=0</td></tr>
+<tr class="separator:a973ef4befa8fd3b1fbb7e05a2c5904da"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-attribs" name="pro-attribs"></a>
+Защищенные данные</h2></td></tr>
+<tr class="memitem:aef0780725b6f210bcbeb3b03da2445b8" id="r_aef0780725b6f210bcbeb3b03da2445b8"><td class="memItemLeft" align="right" valign="top">sf::RenderWindow&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aef0780725b6f210bcbeb3b03da2445b8">m_window</a></td></tr>
+<tr class="separator:aef0780725b6f210bcbeb3b03da2445b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a> задает интерфейс для работы с каждый кадром окна. </p>
+</div><h2 class="groupheader">Методы</h2>
+<a id="ab275378083e3b5a04a47af2a2f20169a" name="ab275378083e3b5a04a47af2a2f20169a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab275378083e3b5a04a47af2a2f20169a">&#9670;&#160;</a></span>event_handling()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void IWindowKeeper::event_handling </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel protected">protected</span><span class="mlabel pure-virtual">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещается в <a class="el" href="class_game_state.html#a180391dfe966058da0389146534e66d0">GameState</a>.</p>
+
+</div>
+</div>
+<a id="a973ef4befa8fd3b1fbb7e05a2c5904da" name="a973ef4befa8fd3b1fbb7e05a2c5904da"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a973ef4befa8fd3b1fbb7e05a2c5904da">&#9670;&#160;</a></span>render()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void IWindowKeeper::render </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel protected">protected</span><span class="mlabel pure-virtual">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>обновление сцены </p>
+</blockquote>
+
+<p>Замещается в <a class="el" href="class_game_state.html#a2c36ada0cae89f91d956e2c91b070893">GameState</a> и <a class="el" href="struct_select_state.html#a52b35ea72577fb2d5429daf43f9110e7">SelectState</a>.</p>
+
+</div>
+</div>
+<a id="a46683ebaa51a36a8bb6bb22ed12b83b7" name="a46683ebaa51a36a8bb6bb22ed12b83b7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a46683ebaa51a36a8bb6bb22ed12b83b7">&#9670;&#160;</a></span>update()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void IWindowKeeper::update </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel protected">protected</span><span class="mlabel pure-virtual">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>обработка событий окна </p>
+</blockquote>
+
+<p>Замещается в <a class="el" href="class_game_state.html#a3610da76344c5c2cbcc5921f877226dc">GameState</a> и <a class="el" href="struct_select_state.html#af82dbfa9bc9fc892d55baabc3f5b5243">SelectState</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Данные класса</h2>
+<a id="aef0780725b6f210bcbeb3b03da2445b8" name="aef0780725b6f210bcbeb3b03da2445b8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aef0780725b6f210bcbeb3b03da2445b8">&#9670;&#160;</a></span>m_window</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">sf::RenderWindow IWindowKeeper::m_window</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel protected">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>отрисовка сцены в окно </p>
+</blockquote>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/State/<a class="el" href="_i_window_keeper_8h_source.html">IWindowKeeper.h</a></li>
+<li>source/application/State/<b>IWindowKeeper.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_i_window_keeper.js b/assets/docs/html/class_i_window_keeper.js
new file mode 100644
index 0000000000000000000000000000000000000000..cbaa8022a41fd65529091538d28428bbef7fc99c
--- /dev/null
+++ b/assets/docs/html/class_i_window_keeper.js
@@ -0,0 +1,6 @@
+var class_i_window_keeper =
+[
+    [ "render", "class_i_window_keeper.html#a973ef4befa8fd3b1fbb7e05a2c5904da", null ],
+    [ "update", "class_i_window_keeper.html#a46683ebaa51a36a8bb6bb22ed12b83b7", null ],
+    [ "m_window", "class_i_window_keeper.html#aef0780725b6f210bcbeb3b03da2445b8", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/class_i_window_keeper.png b/assets/docs/html/class_i_window_keeper.png
new file mode 100644
index 0000000000000000000000000000000000000000..e86f60f9922f25620ec416f2c85d09d65e875cf0
Binary files /dev/null and b/assets/docs/html/class_i_window_keeper.png differ
diff --git a/assets/docs/html/class_lost_game-members.html b/assets/docs/html/class_lost_game-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..7b05a1fc3dfeba117e66911b2a7ff57bd0d1063a
--- /dev/null
+++ b/assets/docs/html/class_lost_game-members.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_lost_game.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">LostGame Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_lost_game.html">LostGame</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>add_observer</b>(IObserver *observer) (определено в <a class="el" href="class_i_game_event.html">IGameEvent</a>)</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>handle</b>(GameContext *context) override (определено в <a class="el" href="class_lost_game.html">LostGame</a>)</td><td class="entry"><a class="el" href="class_lost_game.html">LostGame</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>notify</b>() const (определено в <a class="el" href="class_i_game_event.html">IGameEvent</a>)</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">~IGameEvent</a>()=default</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_lost_game.html b/assets/docs/html/class_lost_game.html
new file mode 100644
index 0000000000000000000000000000000000000000..2dbcee1aba747034d107a8f1aa73adb2551e8a17
--- /dev/null
+++ b/assets/docs/html/class_lost_game.html
@@ -0,0 +1,186 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс LostGame</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_lost_game.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_lost_game-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс LostGame</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="_i_game_event_8h_source.html">IGameEvent.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:LostGame:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_lost_game.png" usemap="#LostGame_map" alt=""/>
+  <map id="LostGame_map" name="LostGame_map">
+<area href="class_i_game_event.html" title="Абстрактрый класс для различных игровых событий" alt="IGameEvent" shape="rect" coords="0,0,79,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a95437d53c28656796057b44208561b65" id="r_a95437d53c28656796057b44208561b65"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a95437d53c28656796057b44208561b65">handle</a> (<a class="el" href="struct_game_context.html">GameContext</a> *context) override</td></tr>
+<tr class="separator:a95437d53c28656796057b44208561b65"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_i_game_event"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_i_game_event')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_i_game_event.html">IGameEvent</a></td></tr>
+<tr class="memitem:ae84f5f2b3d3bd7834e334c4e6fcde711 inherit pub_methods_class_i_game_event" id="r_ae84f5f2b3d3bd7834e334c4e6fcde711"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">~IGameEvent</a> ()=default</td></tr>
+<tr class="separator:ae84f5f2b3d3bd7834e334c4e6fcde711 inherit pub_methods_class_i_game_event"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b231dafdf4bdbc98f7d75b5205a8b99 inherit pub_methods_class_i_game_event" id="r_a6b231dafdf4bdbc98f7d75b5205a8b99"><td class="memItemLeft" align="right" valign="top">
+void&#160;</td><td class="memItemRight" valign="bottom"><b>add_observer</b> (<a class="el" href="class_i_observer.html">IObserver</a> *observer)</td></tr>
+<tr class="separator:a6b231dafdf4bdbc98f7d75b5205a8b99 inherit pub_methods_class_i_game_event"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Дополнительные унаследованные члены</h2></td></tr>
+<tr class="inherit_header pro_methods_class_i_game_event"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_methods_class_i_game_event')"><img src="closed.png" alt="-"/>&#160;Защищенные члены унаследованные от <a class="el" href="class_i_game_event.html">IGameEvent</a></td></tr>
+<tr class="memitem:a1bc7533cd09ababa60363e5afbb7e787 inherit pro_methods_class_i_game_event" id="r_a1bc7533cd09ababa60363e5afbb7e787"><td class="memItemLeft" align="right" valign="top">
+void&#160;</td><td class="memItemRight" valign="bottom"><b>notify</b> () const</td></tr>
+<tr class="separator:a1bc7533cd09ababa60363e5afbb7e787 inherit pro_methods_class_i_game_event"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p>@dbrief Событие, которое меняет состояние игры на LOST.</p>
+<p>Порождает при взаимодействии <a class="el" href="class_pacman.html">Pacman</a> с <a class="el" href="class_enemy.html" title="Конкретный наследник Enemy - враг. Если пакман наткнется хотя бы на одного врага, то он умрет -&gt; уров...">Enemy</a> </p>
+</div><h2 class="groupheader">Методы</h2>
+<a id="a95437d53c28656796057b44208561b65" name="a95437d53c28656796057b44208561b65"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a95437d53c28656796057b44208561b65">&#9670;&#160;</a></span>handle()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void LostGame::handle </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="struct_game_context.html">GameContext</a> *</td>          <td class="paramname"><span class="paramname"><em>context</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="class_i_game_event.html">IGameEvent</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Event/<a class="el" href="_i_game_event_8h_source.html">IGameEvent.h</a></li>
+<li>source/application/Event/<b>IGameEvent.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_lost_game.html">LostGame</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_lost_game.png b/assets/docs/html/class_lost_game.png
new file mode 100644
index 0000000000000000000000000000000000000000..7fd270c42a5dd5d7ab42f68be5231bdd90112c4d
Binary files /dev/null and b/assets/docs/html/class_lost_game.png differ
diff --git a/assets/docs/html/class_maze-members.html b/assets/docs/html/class_maze-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..a9ebee12b8c270196cbb3ba3d9e929f482fdc4ba
--- /dev/null
+++ b/assets/docs/html/class_maze-members.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_maze.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Maze Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_maze.html">Maze</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>draw_into</b>(sf::RenderWindow &amp;m_window) override (определено в <a class="el" href="class_maze.html">Maze</a>)</td><td class="entry"><a class="el" href="class_maze.html">Maze</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>Maze</b>()=default (определено в <a class="el" href="class_maze.html">Maze</a>)</td><td class="entry"><a class="el" href="class_maze.html">Maze</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Maze</b>(std::vector&lt; Room * &gt; &amp;rooms) (определено в <a class="el" href="class_maze.html">Maze</a>)</td><td class="entry"><a class="el" href="class_maze.html">Maze</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IDrawable</b>()=default (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_maze.html b/assets/docs/html/class_maze.html
new file mode 100644
index 0000000000000000000000000000000000000000..ba3f166dcab0fe97df0350356b5ac1c5cbd1e8ce
--- /dev/null
+++ b/assets/docs/html/class_maze.html
@@ -0,0 +1,171 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс Maze</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_maze.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_maze-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс Maze</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Граф наследования:Maze:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_maze.png" usemap="#Maze_map" alt=""/>
+  <map id="Maze_map" name="Maze_map">
+<area href="struct_i_drawable.html" title="Общий интерфейс для отрисовываемых сущностей и объектов" alt="IDrawable" shape="rect" coords="0,0,69,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a99e23a50028fa7184adfbdb0eba53835" id="r_a99e23a50028fa7184adfbdb0eba53835"><td class="memItemLeft" align="right" valign="top"><a id="a99e23a50028fa7184adfbdb0eba53835" name="a99e23a50028fa7184adfbdb0eba53835"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><b>Maze</b> (std::vector&lt; <a class="el" href="class_room.html">Room</a> * &gt; &amp;rooms)</td></tr>
+<tr class="separator:a99e23a50028fa7184adfbdb0eba53835"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad777acc2ba0195a8bb7be674f895b379" id="r_ad777acc2ba0195a8bb7be674f895b379"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad777acc2ba0195a8bb7be674f895b379">draw_into</a> (sf::RenderWindow &amp;m_window) override</td></tr>
+<tr class="separator:ad777acc2ba0195a8bb7be674f895b379"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Методы</h2>
+<a id="ad777acc2ba0195a8bb7be674f895b379" name="ad777acc2ba0195a8bb7be674f895b379"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad777acc2ba0195a8bb7be674f895b379">&#9670;&#160;</a></span>draw_into()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Maze::draw_into </td>
+          <td>(</td>
+          <td class="paramtype">sf::RenderWindow &amp;</td>          <td class="paramname"><span class="paramname"><em>m_window</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="struct_i_drawable.html">IDrawable</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Drawable/Maze/<a class="el" href="_maze_8h_source.html">Maze.h</a></li>
+<li>source/application/Drawable/Maze/<b>Maze.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_maze.html">Maze</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_maze.png b/assets/docs/html/class_maze.png
new file mode 100644
index 0000000000000000000000000000000000000000..47aaf10d650236beade40b3d5a440f307523f436
Binary files /dev/null and b/assets/docs/html/class_maze.png differ
diff --git a/assets/docs/html/class_menu-members.html b/assets/docs/html/class_menu-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..6848fb63db542bc28f851cf54e15fdd444fc2136
--- /dev/null
+++ b/assets/docs/html/class_menu-members.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_menu.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Menu Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_menu.html">Menu</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_menu.html#a4868e5ef14960d420dc79c307d1a78cb">draw_into</a>(sf::RenderWindow &amp;window) override</td><td class="entry"><a class="el" href="class_menu.html">Menu</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_menu.html#aa9374182bab451e7f7bb8cc02b0db0ee">Menu</a>(IStateManager &amp;state_manager)</td><td class="entry"><a class="el" href="class_menu.html">Menu</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_menu.html#a9174cfc103dba0ee0613196385691872">process_mouse</a>(sf::Vector2f pos, bool is_pressed)</td><td class="entry"><a class="el" href="class_menu.html">Menu</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IDrawable</b>()=default (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_menu.html b/assets/docs/html/class_menu.html
new file mode 100644
index 0000000000000000000000000000000000000000..1bc2d785d462507d2a5f5df89c34383006b221d1
--- /dev/null
+++ b/assets/docs/html/class_menu.html
@@ -0,0 +1,237 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс Menu</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_menu.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_menu-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс Menu</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Граф наследования:Menu:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_menu.png" usemap="#Menu_map" alt=""/>
+  <map id="Menu_map" name="Menu_map">
+<area href="struct_i_drawable.html" title="Общий интерфейс для отрисовываемых сущностей и объектов" alt="IDrawable" shape="rect" coords="0,0,69,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:aa9374182bab451e7f7bb8cc02b0db0ee" id="r_aa9374182bab451e7f7bb8cc02b0db0ee"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa9374182bab451e7f7bb8cc02b0db0ee">Menu</a> (<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;state_manager)</td></tr>
+<tr class="separator:aa9374182bab451e7f7bb8cc02b0db0ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4868e5ef14960d420dc79c307d1a78cb" id="r_a4868e5ef14960d420dc79c307d1a78cb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4868e5ef14960d420dc79c307d1a78cb">draw_into</a> (sf::RenderWindow &amp;window) override</td></tr>
+<tr class="memdesc:a4868e5ef14960d420dc79c307d1a78cb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Отрисовка меню.  <br /></td></tr>
+<tr class="separator:a4868e5ef14960d420dc79c307d1a78cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9174cfc103dba0ee0613196385691872" id="r_a9174cfc103dba0ee0613196385691872"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a9174cfc103dba0ee0613196385691872">process_mouse</a> (sf::Vector2f pos, bool is_pressed)</td></tr>
+<tr class="separator:a9174cfc103dba0ee0613196385691872"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Конструктор(ы)</h2>
+<a id="aa9374182bab451e7f7bb8cc02b0db0ee" name="aa9374182bab451e7f7bb8cc02b0db0ee"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa9374182bab451e7f7bb8cc02b0db0ee">&#9670;&#160;</a></span>Menu()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Menu::Menu </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>state_manager</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="params"><dt>Аргументы</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">state_manager</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+<p>Создаем конкретный строителей, создаем директора, которому назначается строитель. Далее директор отправляется в конструктор команды <a class="el" href="class_game_command.html">GameCommand</a> Кнопке <a class="el" href="class_button.html">Button</a> назначаем команду </p>
+
+</div>
+</div>
+<h2 class="groupheader">Методы</h2>
+<a id="a4868e5ef14960d420dc79c307d1a78cb" name="a4868e5ef14960d420dc79c307d1a78cb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4868e5ef14960d420dc79c307d1a78cb">&#9670;&#160;</a></span>draw_into()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Menu::draw_into </td>
+          <td>(</td>
+          <td class="paramtype">sf::RenderWindow &amp;</td>          <td class="paramname"><span class="paramname"><em>window</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Отрисовка меню. </p>
+<p>Паттерн Composite. Делегируем отрисовку содержащимся в меню кнопкам. </p>
+
+<p>Замещает <a class="el" href="struct_i_drawable.html">IDrawable</a>.</p>
+
+</div>
+</div>
+<a id="a9174cfc103dba0ee0613196385691872" name="a9174cfc103dba0ee0613196385691872"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9174cfc103dba0ee0613196385691872">&#9670;&#160;</a></span>process_mouse()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Menu::process_mouse </td>
+          <td>(</td>
+          <td class="paramtype">sf::Vector2f</td>          <td class="paramname"><span class="paramname"><em>pos</em></span>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bool</td>          <td class="paramname"><span class="paramname"><em>is_pressed</em></span>&#160;)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>выбор уровня </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>exit </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>выбор количества игроков </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>выбор темы приложения </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>создание команды при нажатии на go to game </p>
+</blockquote>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Drawable/DrawMenu/Menu/<a class="el" href="_menu_8h_source.html">Menu.h</a></li>
+<li>source/application/Drawable/DrawMenu/Menu/<b>Menu.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_menu.html">Menu</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_menu.js b/assets/docs/html/class_menu.js
new file mode 100644
index 0000000000000000000000000000000000000000..7f3c7f73ee688e128ff384e516d006ea3b95df19
--- /dev/null
+++ b/assets/docs/html/class_menu.js
@@ -0,0 +1,6 @@
+var class_menu =
+[
+    [ "Menu", "class_menu.html#aa9374182bab451e7f7bb8cc02b0db0ee", null ],
+    [ "draw_into", "class_menu.html#a4868e5ef14960d420dc79c307d1a78cb", null ],
+    [ "process_mouse", "class_menu.html#a9174cfc103dba0ee0613196385691872", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/class_menu.png b/assets/docs/html/class_menu.png
new file mode 100644
index 0000000000000000000000000000000000000000..94b4d600312aebe02e7373755a2a122f76851146
Binary files /dev/null and b/assets/docs/html/class_menu.png differ
diff --git a/assets/docs/html/class_menu_game-members.html b/assets/docs/html/class_menu_game-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..736e85c96aa7725f723c78de08f065fe9e4f3c88
--- /dev/null
+++ b/assets/docs/html/class_menu_game-members.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_menu_game.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">MenuGame Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_menu_game.html">MenuGame</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>draw_button</b>(sf::RenderWindow &amp;window) (определено в <a class="el" href="class_menu_game.html">MenuGame</a>)</td><td class="entry"><a class="el" href="class_menu_game.html">MenuGame</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>draw_into</b>(sf::RenderWindow &amp;window, const ScoreCount &amp;scores_one, const ScoreCount &amp;scores_two) (определено в <a class="el" href="class_menu_game.html">MenuGame</a>)</td><td class="entry"><a class="el" href="class_menu_game.html">MenuGame</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>is_clicked</b>(int x, int y) (определено в <a class="el" href="class_menu_game.html">MenuGame</a>)</td><td class="entry"><a class="el" href="class_menu_game.html">MenuGame</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>MenuGame</b>() (определено в <a class="el" href="class_menu_game.html">MenuGame</a>)</td><td class="entry"><a class="el" href="class_menu_game.html">MenuGame</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_menu_game.html b/assets/docs/html/class_menu_game.html
new file mode 100644
index 0000000000000000000000000000000000000000..974a7e5012c1af9cab7ecf20182d04b5e9823361
--- /dev/null
+++ b/assets/docs/html/class_menu_game.html
@@ -0,0 +1,138 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс MenuGame</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_menu_game.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_menu_game-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс MenuGame</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:ae2e957856817502dced86bbd42f4bceb" id="r_ae2e957856817502dced86bbd42f4bceb"><td class="memItemLeft" align="right" valign="top"><a id="ae2e957856817502dced86bbd42f4bceb" name="ae2e957856817502dced86bbd42f4bceb"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>draw_into</b> (sf::RenderWindow &amp;window, const <a class="el" href="class_score_count.html">ScoreCount</a> &amp;scores_one, const <a class="el" href="class_score_count.html">ScoreCount</a> &amp;scores_two)</td></tr>
+<tr class="separator:ae2e957856817502dced86bbd42f4bceb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a27268ef73f9c87cde7982a482b956a4a" id="r_a27268ef73f9c87cde7982a482b956a4a"><td class="memItemLeft" align="right" valign="top"><a id="a27268ef73f9c87cde7982a482b956a4a" name="a27268ef73f9c87cde7982a482b956a4a"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>draw_button</b> (sf::RenderWindow &amp;window)</td></tr>
+<tr class="separator:a27268ef73f9c87cde7982a482b956a4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab52036850f0b5e437b7e50cfcd1409bb" id="r_ab52036850f0b5e437b7e50cfcd1409bb"><td class="memItemLeft" align="right" valign="top"><a id="ab52036850f0b5e437b7e50cfcd1409bb" name="ab52036850f0b5e437b7e50cfcd1409bb"></a>
+bool&#160;</td><td class="memItemRight" valign="bottom"><b>is_clicked</b> (int x, int y)</td></tr>
+<tr class="separator:ab52036850f0b5e437b7e50cfcd1409bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Drawable/DrawMenu/Menu/<a class="el" href="_menu_in_game_8h_source.html">MenuInGame.h</a></li>
+<li>source/application/Drawable/DrawMenu/Menu/<b>MenuInGame.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_menu_game.html">MenuGame</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_my_texture-members.html b/assets/docs/html/class_my_texture-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..fdf32e740ef4f6cb006ac94d026901bdc8c0ec2b
--- /dev/null
+++ b/assets/docs/html/class_my_texture-members.html
@@ -0,0 +1,131 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_my_texture.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">MyTexture Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_my_texture.html">MyTexture</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Direction</b> перечисление (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>DOWN</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_texture</b>()=0 (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>LEFT</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_direction</b> (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>MyTexture</b>()=default (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>MyTexture</b>(const MyTexture &amp;)=delete (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>operator=</b>(const MyTexture &amp;)=delete (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>RIGHT</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>set_direction</b>(Direction direction) (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>UP</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_my_texture.html b/assets/docs/html/class_my_texture.html
new file mode 100644
index 0000000000000000000000000000000000000000..1a5466414e0c0e01b2d2207ec6d8a6e83fa70aab
--- /dev/null
+++ b/assets/docs/html/class_my_texture.html
@@ -0,0 +1,170 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс MyTexture</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_my_texture.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-types">Открытые типы</a> &#124;
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="#pro-attribs">Защищенные данные</a> &#124;
+<a href="class_my_texture-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс MyTexture<span class="mlabels"><span class="mlabel abstract">abstract</span></span></div></div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Граф наследования:MyTexture:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_my_texture.png" usemap="#MyTexture_map" alt=""/>
+  <map id="MyTexture_map" name="MyTexture_map">
+<area href="class_background_texture.html" alt="BackgroundTexture" shape="rect" coords="0,56,122,80"/>
+<area href="class_enemy_texture.html" alt="EnemyTexture" shape="rect" coords="132,56,254,80"/>
+<area href="class_food_texture.html" alt="FoodTexture" shape="rect" coords="264,56,386,80"/>
+<area href="class_pacman_texture.html" alt="PacmanTexture" shape="rect" coords="396,56,518,80"/>
+<area href="class_pacman_texture2.html" alt="PacmanTexture2" shape="rect" coords="528,56,650,80"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
+Открытые типы</h2></td></tr>
+<tr class="memitem:a316c15cca20dd7993c379b6e5bcf4913" id="r_a316c15cca20dd7993c379b6e5bcf4913"><td class="memItemLeft" align="right" valign="top"><a id="a316c15cca20dd7993c379b6e5bcf4913" name="a316c15cca20dd7993c379b6e5bcf4913"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><b>Direction</b> { <b>UP</b>
+, <b>DOWN</b>
+, <b>RIGHT</b>
+, <b>LEFT</b>
+ }</td></tr>
+<tr class="separator:a316c15cca20dd7993c379b6e5bcf4913"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a38f94921ba45ae9e80072d88fba35479" id="r_a38f94921ba45ae9e80072d88fba35479"><td class="memItemLeft" align="right" valign="top"><a id="a38f94921ba45ae9e80072d88fba35479" name="a38f94921ba45ae9e80072d88fba35479"></a>
+virtual sf::Texture &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>get_texture</b> ()=0</td></tr>
+<tr class="separator:a38f94921ba45ae9e80072d88fba35479"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab6327857e381e8f9ff6ea9d4a01c62c8" id="r_ab6327857e381e8f9ff6ea9d4a01c62c8"><td class="memItemLeft" align="right" valign="top"><a id="ab6327857e381e8f9ff6ea9d4a01c62c8" name="ab6327857e381e8f9ff6ea9d4a01c62c8"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><b>MyTexture</b> (const <a class="el" href="class_my_texture.html">MyTexture</a> &amp;)=delete</td></tr>
+<tr class="separator:ab6327857e381e8f9ff6ea9d4a01c62c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2968e7cbf400c6d3d210724ef0eb99b6" id="r_a2968e7cbf400c6d3d210724ef0eb99b6"><td class="memItemLeft" align="right" valign="top"><a id="a2968e7cbf400c6d3d210724ef0eb99b6" name="a2968e7cbf400c6d3d210724ef0eb99b6"></a>
+<a class="el" href="class_my_texture.html">MyTexture</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="class_my_texture.html">MyTexture</a> &amp;)=delete</td></tr>
+<tr class="separator:a2968e7cbf400c6d3d210724ef0eb99b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aadd40b268663d9064d45de162004fac6" id="r_aadd40b268663d9064d45de162004fac6"><td class="memItemLeft" align="right" valign="top"><a id="aadd40b268663d9064d45de162004fac6" name="aadd40b268663d9064d45de162004fac6"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_direction</b> (Direction direction)</td></tr>
+<tr class="separator:aadd40b268663d9064d45de162004fac6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-attribs" name="pro-attribs"></a>
+Защищенные данные</h2></td></tr>
+<tr class="memitem:a9c56deb491e39a56350cc8029567d001" id="r_a9c56deb491e39a56350cc8029567d001"><td class="memItemLeft" align="right" valign="top"><a id="a9c56deb491e39a56350cc8029567d001" name="a9c56deb491e39a56350cc8029567d001"></a>
+Direction&#160;</td><td class="memItemRight" valign="bottom"><b>m_direction</b> = UP</td></tr>
+<tr class="separator:a9c56deb491e39a56350cc8029567d001"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<hr/>Объявления и описания членов класса находятся в файле:<ul>
+<li>source/application/Drawable/Entity/<a class="el" href="_my_texture_8h_source.html">MyTexture.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_my_texture.html">MyTexture</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_my_texture.png b/assets/docs/html/class_my_texture.png
new file mode 100644
index 0000000000000000000000000000000000000000..6f172b4f6708f4cfd32f5216c46668dbb6e083f5
Binary files /dev/null and b/assets/docs/html/class_my_texture.png differ
diff --git a/assets/docs/html/class_pacman-members.html b/assets/docs/html/class_pacman-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..34c554f6ef095cf410dc20d728fc033888853c14
--- /dev/null
+++ b/assets/docs/html/class_pacman-members.html
@@ -0,0 +1,131 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_pacman.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Pacman Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_pacman.html">Pacman</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>draw_into</b>(sf::RenderWindow &amp;window) override (определено в <a class="el" href="class_pacman.html">Pacman</a>)</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>get_location</b>() (определено в <a class="el" href="class_i_entity.html">IEntity</a>)</td><td class="entry"><a class="el" href="class_i_entity.html">IEntity</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_ptr_room</b> (определено в <a class="el" href="class_i_entity.html">IEntity</a>)</td><td class="entry"><a class="el" href="class_i_entity.html">IEntity</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_pacman.html#aa957cbb7b0ad1bc1f6ef2aac82423cd8">move</a>(Room::Direction direction)</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2">Pacman</a>(MyTexture *texture)</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_pacman.html#ad41930fae2878425f80e4fea614f3a3d">prepare_for_drawing</a>() override</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_location</b>(Room *ptr_room) (определено в <a class="el" href="class_i_entity.html">IEntity</a>)</td><td class="entry"><a class="el" href="class_i_entity.html">IEntity</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_pacman.html#ac4b928c45d22d9814a02b7a621c5ae7c">visit</a>(Food *ptr_entity) override</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>visit</b>(Enemy *ptr_entity) override (определено в <a class="el" href="class_pacman.html">Pacman</a>)</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IDrawable</b>()=default (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~Pacman</b>() override=default (определено в <a class="el" href="class_pacman.html">Pacman</a>)</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_pacman.html b/assets/docs/html/class_pacman.html
new file mode 100644
index 0000000000000000000000000000000000000000..6983fa2289abe90cd64a05c060b12da10008adca
--- /dev/null
+++ b/assets/docs/html/class_pacman.html
@@ -0,0 +1,344 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс Pacman</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_pacman.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_pacman-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс Pacman</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Граф наследования:Pacman:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_pacman.png" usemap="#Pacman_map" alt=""/>
+  <map id="Pacman_map" name="Pacman_map">
+<area href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт." alt="IEntity" shape="rect" coords="0,112,78,136"/>
+<area href="class_i_visitor.html" title="Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: IVisitor (посетит..." alt="IVisitor" shape="rect" coords="88,112,166,136"/>
+<area href="struct_i_preparable.html" alt="IPreparable" shape="rect" coords="0,56,78,80"/>
+<area href="struct_i_drawable.html" title="Общий интерфейс для отрисовываемых сущностей и объектов" alt="IDrawable" shape="rect" coords="0,0,78,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a72fa328d22c8fa39cf6b941ec10cd8a2" id="r_a72fa328d22c8fa39cf6b941ec10cd8a2"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a72fa328d22c8fa39cf6b941ec10cd8a2">Pacman</a> (<a class="el" href="class_my_texture.html">MyTexture</a> *texture)</td></tr>
+<tr class="memdesc:a72fa328d22c8fa39cf6b941ec10cd8a2"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_pacman.html">Pacman</a> - главный герой. В конструкторе в пакмана загружаем звук, который он будет издавать при поедании еды  <br /></td></tr>
+<tr class="separator:a72fa328d22c8fa39cf6b941ec10cd8a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa957cbb7b0ad1bc1f6ef2aac82423cd8" id="r_aa957cbb7b0ad1bc1f6ef2aac82423cd8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa957cbb7b0ad1bc1f6ef2aac82423cd8">move</a> (Room::Direction direction)</td></tr>
+<tr class="memdesc:aa957cbb7b0ad1bc1f6ef2aac82423cd8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Перемещение пакмана  <br /></td></tr>
+<tr class="separator:aa957cbb7b0ad1bc1f6ef2aac82423cd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad41930fae2878425f80e4fea614f3a3d" id="r_ad41930fae2878425f80e4fea614f3a3d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad41930fae2878425f80e4fea614f3a3d">prepare_for_drawing</a> () override</td></tr>
+<tr class="memdesc:ad41930fae2878425f80e4fea614f3a3d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Подготовка перед отрисовкой. Загружает текстуру в m_sprite и назначаем позицию, куда его расположить  <br /></td></tr>
+<tr class="separator:ad41930fae2878425f80e4fea614f3a3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a397a22f37f8e68d4fd013afad849d270" id="r_a397a22f37f8e68d4fd013afad849d270"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a397a22f37f8e68d4fd013afad849d270">draw_into</a> (sf::RenderWindow &amp;window) override</td></tr>
+<tr class="separator:a397a22f37f8e68d4fd013afad849d270"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac4b928c45d22d9814a02b7a621c5ae7c" id="r_ac4b928c45d22d9814a02b7a621c5ae7c"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="class_i_game_event.html">IGameEvent</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac4b928c45d22d9814a02b7a621c5ae7c">visit</a> (<a class="el" href="class_food.html">Food</a> *ptr_entity) override</td></tr>
+<tr class="memdesc:ac4b928c45d22d9814a02b7a621c5ae7c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Посещение пакманом еды Проводим взаимодействие, только если еда и пакман находятся в одной комнате, иначе возвращаем пустое событие  <br /></td></tr>
+<tr class="separator:ac4b928c45d22d9814a02b7a621c5ae7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad41a3b2493a209cc237d4ddcb1e1eb24" id="r_ad41a3b2493a209cc237d4ddcb1e1eb24"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="class_i_game_event.html">IGameEvent</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad41a3b2493a209cc237d4ddcb1e1eb24">visit</a> (<a class="el" href="class_enemy.html">Enemy</a> *ptr_entity) override</td></tr>
+<tr class="separator:ad41a3b2493a209cc237d4ddcb1e1eb24"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_i_entity"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_i_entity')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_i_entity.html">IEntity</a></td></tr>
+<tr class="memitem:a548495c468f307c780941faa5b4c08a8 inherit pub_methods_class_i_entity" id="r_a548495c468f307c780941faa5b4c08a8"><td class="memItemLeft" align="right" valign="top">
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_location</b> (<a class="el" href="class_room.html">Room</a> *ptr_room)</td></tr>
+<tr class="separator:a548495c468f307c780941faa5b4c08a8 inherit pub_methods_class_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab24f318dbb232b2feb00115b7124e256 inherit pub_methods_class_i_entity" id="r_ab24f318dbb232b2feb00115b7124e256"><td class="memItemLeft" align="right" valign="top">
+<a class="el" href="class_room.html">Room</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>get_location</b> ()</td></tr>
+<tr class="separator:ab24f318dbb232b2feb00115b7124e256 inherit pub_methods_class_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Дополнительные унаследованные члены</h2></td></tr>
+<tr class="inherit_header pro_attribs_class_i_entity"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_attribs_class_i_entity')"><img src="closed.png" alt="-"/>&#160;Защищенные данные унаследованные от <a class="el" href="class_i_entity.html">IEntity</a></td></tr>
+<tr class="memitem:a7d0bfa7b8516df82bd6de6b6283f0315 inherit pro_attribs_class_i_entity" id="r_a7d0bfa7b8516df82bd6de6b6283f0315"><td class="memItemLeft" align="right" valign="top">
+<a class="el" href="class_room.html">Room</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>m_ptr_room</b></td></tr>
+<tr class="separator:a7d0bfa7b8516df82bd6de6b6283f0315 inherit pro_attribs_class_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Конструктор(ы)</h2>
+<a id="a72fa328d22c8fa39cf6b941ec10cd8a2" name="a72fa328d22c8fa39cf6b941ec10cd8a2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a72fa328d22c8fa39cf6b941ec10cd8a2">&#9670;&#160;</a></span>Pacman()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">Pacman::Pacman </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="class_my_texture.html">MyTexture</a> *</td>          <td class="paramname"><span class="paramname"><em>texture</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel explicit">explicit</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p><a class="el" href="class_pacman.html">Pacman</a> - главный герой. В конструкторе в пакмана загружаем звук, который он будет издавать при поедании еды </p>
+<dl class="params"><dt>Аргументы</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">texture</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<h2 class="groupheader">Методы</h2>
+<a id="a397a22f37f8e68d4fd013afad849d270" name="a397a22f37f8e68d4fd013afad849d270"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a397a22f37f8e68d4fd013afad849d270">&#9670;&#160;</a></span>draw_into()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Pacman::draw_into </td>
+          <td>(</td>
+          <td class="paramtype">sf::RenderWindow &amp;</td>          <td class="paramname"><span class="paramname"><em>window</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="struct_i_drawable.html">IDrawable</a>.</p>
+
+</div>
+</div>
+<a id="aa957cbb7b0ad1bc1f6ef2aac82423cd8" name="aa957cbb7b0ad1bc1f6ef2aac82423cd8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa957cbb7b0ad1bc1f6ef2aac82423cd8">&#9670;&#160;</a></span>move()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Pacman::move </td>
+          <td>(</td>
+          <td class="paramtype">Room::Direction</td>          <td class="paramname"><span class="paramname"><em>direction</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Перемещение пакмана </p>
+<dl class="params"><dt>Аргументы</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">direction</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+<p>Для того, чтобы совершить перемещение, которое от него требуется, он спрашиваем у проассоциированной с ним комнаты сторону и передает в нее себя, а она меняет его положение, если это оказался <a class="el" href="class_pass.html" title="проход, который знает о двух комнатах, которые он связывает">Pass</a>, или оставляет его на месте, если это <a class="el" href="class_wall.html" title="стена, которая хранит в себе информацию о том в какой комнате находится">Wall</a> </p>
+
+</div>
+</div>
+<a id="ad41930fae2878425f80e4fea614f3a3d" name="ad41930fae2878425f80e4fea614f3a3d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad41930fae2878425f80e4fea614f3a3d">&#9670;&#160;</a></span>prepare_for_drawing()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Pacman::prepare_for_drawing </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Подготовка перед отрисовкой. Загружает текстуру в m_sprite и назначаем позицию, куда его расположить </p>
+
+<p>Замещает <a class="el" href="struct_i_preparable.html">IPreparable</a>.</p>
+
+</div>
+</div>
+<a id="ad41a3b2493a209cc237d4ddcb1e1eb24" name="ad41a3b2493a209cc237d4ddcb1e1eb24"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad41a3b2493a209cc237d4ddcb1e1eb24">&#9670;&#160;</a></span>visit() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::unique_ptr&lt; <a class="el" href="class_i_game_event.html">IGameEvent</a> &gt; Pacman::visit </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="class_enemy.html">Enemy</a> *</td>          <td class="paramname"><span class="paramname"><em>ptr_entity</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="class_i_visitor.html">IVisitor</a>.</p>
+
+</div>
+</div>
+<a id="ac4b928c45d22d9814a02b7a621c5ae7c" name="ac4b928c45d22d9814a02b7a621c5ae7c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac4b928c45d22d9814a02b7a621c5ae7c">&#9670;&#160;</a></span>visit() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::unique_ptr&lt; <a class="el" href="class_i_game_event.html">IGameEvent</a> &gt; Pacman::visit </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="class_food.html">Food</a> *</td>          <td class="paramname"><span class="paramname"><em>ptr_entity</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Посещение пакманом еды Проводим взаимодействие, только если еда и пакман находятся в одной комнате, иначе возвращаем пустое событие </p>
+
+<p>Замещает <a class="el" href="class_i_visitor.html">IVisitor</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Drawable/Entity/<a class="el" href="_pacman_8h_source.html">Pacman.h</a></li>
+<li>source/application/Drawable/Entity/<b>Pacman.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_pacman.html">Pacman</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_pacman.js b/assets/docs/html/class_pacman.js
new file mode 100644
index 0000000000000000000000000000000000000000..e8ca41f539fb3127bee32fff17f009a6b2bb5022
--- /dev/null
+++ b/assets/docs/html/class_pacman.js
@@ -0,0 +1,7 @@
+var class_pacman =
+[
+    [ "Pacman", "class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2", null ],
+    [ "move", "class_pacman.html#aa957cbb7b0ad1bc1f6ef2aac82423cd8", null ],
+    [ "prepare_for_drawing", "class_pacman.html#ad41930fae2878425f80e4fea614f3a3d", null ],
+    [ "visit", "class_pacman.html#ac4b928c45d22d9814a02b7a621c5ae7c", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/class_pacman.png b/assets/docs/html/class_pacman.png
new file mode 100644
index 0000000000000000000000000000000000000000..157c5b81c49606d1ed9eeee662465b6987b72c34
Binary files /dev/null and b/assets/docs/html/class_pacman.png differ
diff --git a/assets/docs/html/class_pacman_texture-members.html b/assets/docs/html/class_pacman_texture-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..236fc2650bb8fc86d5f490f61f21d0b5ff2f56e8
--- /dev/null
+++ b/assets/docs/html/class_pacman_texture-members.html
@@ -0,0 +1,132 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_pacman_texture.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">PacmanTexture Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_pacman_texture.html">PacmanTexture</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Direction</b> перечисление (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>DOWN</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_texture</b>() override (определено в <a class="el" href="class_pacman_texture.html">PacmanTexture</a>)</td><td class="entry"><a class="el" href="class_pacman_texture.html">PacmanTexture</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>instance</b>() (определено в <a class="el" href="class_pacman_texture.html">PacmanTexture</a>)</td><td class="entry"><a class="el" href="class_pacman_texture.html">PacmanTexture</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>LEFT</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_direction</b> (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>MyTexture</b>()=default (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>MyTexture</b>(const MyTexture &amp;)=delete (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(const MyTexture &amp;)=delete (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>RIGHT</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_direction</b>(Direction direction) (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>UP</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_pacman_texture.html b/assets/docs/html/class_pacman_texture.html
new file mode 100644
index 0000000000000000000000000000000000000000..6e256776f65fb48322cff926832e5c76cbf3d84d
--- /dev/null
+++ b/assets/docs/html/class_pacman_texture.html
@@ -0,0 +1,199 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс PacmanTexture</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_pacman_texture.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="#pub-static-methods">Открытые статические члены</a> &#124;
+<a href="class_pacman_texture-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс PacmanTexture</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Граф наследования:PacmanTexture:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_pacman_texture.png" usemap="#PacmanTexture_map" alt=""/>
+  <map id="PacmanTexture_map" name="PacmanTexture_map">
+<area href="class_my_texture.html" alt="MyTexture" shape="rect" coords="0,0,99,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a01b842cc01554f73ef30a80f151b22c1" id="r_a01b842cc01554f73ef30a80f151b22c1"><td class="memItemLeft" align="right" valign="top">sf::Texture &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a01b842cc01554f73ef30a80f151b22c1">get_texture</a> () override</td></tr>
+<tr class="separator:a01b842cc01554f73ef30a80f151b22c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_my_texture"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_my_texture')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_my_texture.html">MyTexture</a></td></tr>
+<tr class="memitem:ab6327857e381e8f9ff6ea9d4a01c62c8 inherit pub_methods_class_my_texture" id="r_ab6327857e381e8f9ff6ea9d4a01c62c8"><td class="memItemLeft" align="right" valign="top">
+&#160;</td><td class="memItemRight" valign="bottom"><b>MyTexture</b> (const <a class="el" href="class_my_texture.html">MyTexture</a> &amp;)=delete</td></tr>
+<tr class="separator:ab6327857e381e8f9ff6ea9d4a01c62c8 inherit pub_methods_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2968e7cbf400c6d3d210724ef0eb99b6 inherit pub_methods_class_my_texture" id="r_a2968e7cbf400c6d3d210724ef0eb99b6"><td class="memItemLeft" align="right" valign="top">
+<a class="el" href="class_my_texture.html">MyTexture</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="class_my_texture.html">MyTexture</a> &amp;)=delete</td></tr>
+<tr class="separator:a2968e7cbf400c6d3d210724ef0eb99b6 inherit pub_methods_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aadd40b268663d9064d45de162004fac6 inherit pub_methods_class_my_texture" id="r_aadd40b268663d9064d45de162004fac6"><td class="memItemLeft" align="right" valign="top">
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_direction</b> (Direction direction)</td></tr>
+<tr class="separator:aadd40b268663d9064d45de162004fac6 inherit pub_methods_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
+Открытые статические члены</h2></td></tr>
+<tr class="memitem:a2d7c594d92a525f298725be1be9788a5" id="r_a2d7c594d92a525f298725be1be9788a5"><td class="memItemLeft" align="right" valign="top"><a id="a2d7c594d92a525f298725be1be9788a5" name="a2d7c594d92a525f298725be1be9788a5"></a>
+static <a class="el" href="class_pacman_texture.html">PacmanTexture</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>instance</b> ()</td></tr>
+<tr class="separator:a2d7c594d92a525f298725be1be9788a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Дополнительные унаследованные члены</h2></td></tr>
+<tr class="inherit_header pub_types_class_my_texture"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_types_class_my_texture')"><img src="closed.png" alt="-"/>&#160;Открытые типы унаследованные от <a class="el" href="class_my_texture.html">MyTexture</a></td></tr>
+<tr class="memitem:a316c15cca20dd7993c379b6e5bcf4913 inherit pub_types_class_my_texture" id="r_a316c15cca20dd7993c379b6e5bcf4913"><td class="memItemLeft" align="right" valign="top"><a id="a316c15cca20dd7993c379b6e5bcf4913" name="a316c15cca20dd7993c379b6e5bcf4913"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><b>Direction</b> { <b>UP</b>
+, <b>DOWN</b>
+, <b>RIGHT</b>
+, <b>LEFT</b>
+ }</td></tr>
+<tr class="separator:a316c15cca20dd7993c379b6e5bcf4913 inherit pub_types_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_class_my_texture"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_attribs_class_my_texture')"><img src="closed.png" alt="-"/>&#160;Защищенные данные унаследованные от <a class="el" href="class_my_texture.html">MyTexture</a></td></tr>
+<tr class="memitem:a9c56deb491e39a56350cc8029567d001 inherit pro_attribs_class_my_texture" id="r_a9c56deb491e39a56350cc8029567d001"><td class="memItemLeft" align="right" valign="top">
+Direction&#160;</td><td class="memItemRight" valign="bottom"><b>m_direction</b> = UP</td></tr>
+<tr class="separator:a9c56deb491e39a56350cc8029567d001 inherit pro_attribs_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Методы</h2>
+<a id="a01b842cc01554f73ef30a80f151b22c1" name="a01b842cc01554f73ef30a80f151b22c1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a01b842cc01554f73ef30a80f151b22c1">&#9670;&#160;</a></span>get_texture()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">sf::Texture &amp; PacmanTexture::get_texture </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="class_my_texture.html">MyTexture</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Drawable/Entity/<a class="el" href="_my_texture_8h_source.html">MyTexture.h</a></li>
+<li>source/application/Drawable/Entity/<b>MyTexture.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_pacman_texture.html">PacmanTexture</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_pacman_texture.png b/assets/docs/html/class_pacman_texture.png
new file mode 100644
index 0000000000000000000000000000000000000000..7c6ef102a8e8f540a215aa7e4b6bc781423dc48b
Binary files /dev/null and b/assets/docs/html/class_pacman_texture.png differ
diff --git a/assets/docs/html/class_pacman_texture2-members.html b/assets/docs/html/class_pacman_texture2-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..8901f65a86726f863b26259d3835ecf770a05c90
--- /dev/null
+++ b/assets/docs/html/class_pacman_texture2-members.html
@@ -0,0 +1,132 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_pacman_texture2.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">PacmanTexture2 Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_pacman_texture2.html">PacmanTexture2</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Direction</b> перечисление (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>DOWN</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_texture</b>() override (определено в <a class="el" href="class_pacman_texture2.html">PacmanTexture2</a>)</td><td class="entry"><a class="el" href="class_pacman_texture2.html">PacmanTexture2</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>instance</b>() (определено в <a class="el" href="class_pacman_texture2.html">PacmanTexture2</a>)</td><td class="entry"><a class="el" href="class_pacman_texture2.html">PacmanTexture2</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>LEFT</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_direction</b> (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>MyTexture</b>()=default (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>MyTexture</b>(const MyTexture &amp;)=delete (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(const MyTexture &amp;)=delete (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>RIGHT</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_direction</b>(Direction direction) (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>UP</b> элементы перечисления (определено в <a class="el" href="class_my_texture.html">MyTexture</a>)</td><td class="entry"><a class="el" href="class_my_texture.html">MyTexture</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_pacman_texture2.html b/assets/docs/html/class_pacman_texture2.html
new file mode 100644
index 0000000000000000000000000000000000000000..53b5b3fd5e52acdce26376fedc7c16d7262b68c8
--- /dev/null
+++ b/assets/docs/html/class_pacman_texture2.html
@@ -0,0 +1,199 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс PacmanTexture2</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_pacman_texture2.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="#pub-static-methods">Открытые статические члены</a> &#124;
+<a href="class_pacman_texture2-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс PacmanTexture2</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Граф наследования:PacmanTexture2:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_pacman_texture2.png" usemap="#PacmanTexture2_map" alt=""/>
+  <map id="PacmanTexture2_map" name="PacmanTexture2_map">
+<area href="class_my_texture.html" alt="MyTexture" shape="rect" coords="0,0,106,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a0d035a680b105a14130e79376ea63f5d" id="r_a0d035a680b105a14130e79376ea63f5d"><td class="memItemLeft" align="right" valign="top">sf::Texture &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0d035a680b105a14130e79376ea63f5d">get_texture</a> () override</td></tr>
+<tr class="separator:a0d035a680b105a14130e79376ea63f5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_my_texture"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_my_texture')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_my_texture.html">MyTexture</a></td></tr>
+<tr class="memitem:ab6327857e381e8f9ff6ea9d4a01c62c8 inherit pub_methods_class_my_texture" id="r_ab6327857e381e8f9ff6ea9d4a01c62c8"><td class="memItemLeft" align="right" valign="top">
+&#160;</td><td class="memItemRight" valign="bottom"><b>MyTexture</b> (const <a class="el" href="class_my_texture.html">MyTexture</a> &amp;)=delete</td></tr>
+<tr class="separator:ab6327857e381e8f9ff6ea9d4a01c62c8 inherit pub_methods_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2968e7cbf400c6d3d210724ef0eb99b6 inherit pub_methods_class_my_texture" id="r_a2968e7cbf400c6d3d210724ef0eb99b6"><td class="memItemLeft" align="right" valign="top">
+<a class="el" href="class_my_texture.html">MyTexture</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="class_my_texture.html">MyTexture</a> &amp;)=delete</td></tr>
+<tr class="separator:a2968e7cbf400c6d3d210724ef0eb99b6 inherit pub_methods_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aadd40b268663d9064d45de162004fac6 inherit pub_methods_class_my_texture" id="r_aadd40b268663d9064d45de162004fac6"><td class="memItemLeft" align="right" valign="top">
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_direction</b> (Direction direction)</td></tr>
+<tr class="separator:aadd40b268663d9064d45de162004fac6 inherit pub_methods_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
+Открытые статические члены</h2></td></tr>
+<tr class="memitem:ad3744306d61673f64671e076f2e4fa3e" id="r_ad3744306d61673f64671e076f2e4fa3e"><td class="memItemLeft" align="right" valign="top"><a id="ad3744306d61673f64671e076f2e4fa3e" name="ad3744306d61673f64671e076f2e4fa3e"></a>
+static <a class="el" href="class_pacman_texture2.html">PacmanTexture2</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>instance</b> ()</td></tr>
+<tr class="separator:ad3744306d61673f64671e076f2e4fa3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Дополнительные унаследованные члены</h2></td></tr>
+<tr class="inherit_header pub_types_class_my_texture"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_types_class_my_texture')"><img src="closed.png" alt="-"/>&#160;Открытые типы унаследованные от <a class="el" href="class_my_texture.html">MyTexture</a></td></tr>
+<tr class="memitem:a316c15cca20dd7993c379b6e5bcf4913 inherit pub_types_class_my_texture" id="r_a316c15cca20dd7993c379b6e5bcf4913"><td class="memItemLeft" align="right" valign="top"><a id="a316c15cca20dd7993c379b6e5bcf4913" name="a316c15cca20dd7993c379b6e5bcf4913"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><b>Direction</b> { <b>UP</b>
+, <b>DOWN</b>
+, <b>RIGHT</b>
+, <b>LEFT</b>
+ }</td></tr>
+<tr class="separator:a316c15cca20dd7993c379b6e5bcf4913 inherit pub_types_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_class_my_texture"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_attribs_class_my_texture')"><img src="closed.png" alt="-"/>&#160;Защищенные данные унаследованные от <a class="el" href="class_my_texture.html">MyTexture</a></td></tr>
+<tr class="memitem:a9c56deb491e39a56350cc8029567d001 inherit pro_attribs_class_my_texture" id="r_a9c56deb491e39a56350cc8029567d001"><td class="memItemLeft" align="right" valign="top">
+Direction&#160;</td><td class="memItemRight" valign="bottom"><b>m_direction</b> = UP</td></tr>
+<tr class="separator:a9c56deb491e39a56350cc8029567d001 inherit pro_attribs_class_my_texture"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Методы</h2>
+<a id="a0d035a680b105a14130e79376ea63f5d" name="a0d035a680b105a14130e79376ea63f5d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0d035a680b105a14130e79376ea63f5d">&#9670;&#160;</a></span>get_texture()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">sf::Texture &amp; PacmanTexture2::get_texture </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="class_my_texture.html">MyTexture</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Drawable/Entity/<a class="el" href="_my_texture_8h_source.html">MyTexture.h</a></li>
+<li>source/application/Drawable/Entity/<b>MyTexture.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_pacman_texture2.html">PacmanTexture2</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_pacman_texture2.png b/assets/docs/html/class_pacman_texture2.png
new file mode 100644
index 0000000000000000000000000000000000000000..8f08fb4585ac666f657ab594c798de755d25c793
Binary files /dev/null and b/assets/docs/html/class_pacman_texture2.png differ
diff --git a/assets/docs/html/class_pass-members.html b/assets/docs/html/class_pass-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..f6fb159eeca74762daeef4463090b094a63f3ea7
--- /dev/null
+++ b/assets/docs/html/class_pass-members.html
@@ -0,0 +1,125 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_pass.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Pass Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_pass.html">Pass</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>draw_into</b>(sf::RenderWindow &amp;m_window) override (определено в <a class="el" href="class_pass.html">Pass</a>)</td><td class="entry"><a class="el" href="class_pass.html">Pass</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>enter</b>(IEntity *entity) override (определено в <a class="el" href="class_pass.html">Pass</a>)</td><td class="entry"><a class="el" href="class_pass.html">Pass</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Pass</b>(Room &amp;room1, Room &amp;room2) (определено в <a class="el" href="class_pass.html">Pass</a>)</td><td class="entry"><a class="el" href="class_pass.html">Pass</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>prepare_for_drawing</b>() override (определено в <a class="el" href="class_pass.html">Pass</a>)</td><td class="entry"><a class="el" href="class_pass.html">Pass</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~IDrawable</b>()=default (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_pass.html b/assets/docs/html/class_pass.html
new file mode 100644
index 0000000000000000000000000000000000000000..f9f3f24f4bb0245db1c7f7a93059467f824ec940
--- /dev/null
+++ b/assets/docs/html/class_pass.html
@@ -0,0 +1,238 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс Pass</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_pass.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_pass-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс Pass</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>проход, который знает о двух комнатах, которые он связывает  
+ <a href="#details">Подробнее...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_maze_8h_source.html">Maze.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:Pass:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_pass.png" usemap="#Pass_map" alt=""/>
+  <map id="Pass_map" name="Pass_map">
+<area href="class_i_room_side.html" alt="IRoomSide" shape="rect" coords="0,112,78,136"/>
+<area href="struct_i_preparable.html" alt="IPreparable" shape="rect" coords="0,56,78,80"/>
+<area href="struct_i_drawable.html" title="Общий интерфейс для отрисовываемых сущностей и объектов" alt="IDrawable" shape="rect" coords="0,0,78,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a4b49a313c74be0c2c3bd0d009b396da1" id="r_a4b49a313c74be0c2c3bd0d009b396da1"><td class="memItemLeft" align="right" valign="top"><a id="a4b49a313c74be0c2c3bd0d009b396da1" name="a4b49a313c74be0c2c3bd0d009b396da1"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><b>Pass</b> (<a class="el" href="class_room.html">Room</a> &amp;room1, <a class="el" href="class_room.html">Room</a> &amp;room2)</td></tr>
+<tr class="separator:a4b49a313c74be0c2c3bd0d009b396da1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3fc0bf1281f3ef40ceb9baa33a1dc01e" id="r_a3fc0bf1281f3ef40ceb9baa33a1dc01e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3fc0bf1281f3ef40ceb9baa33a1dc01e">draw_into</a> (sf::RenderWindow &amp;m_window) override</td></tr>
+<tr class="separator:a3fc0bf1281f3ef40ceb9baa33a1dc01e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a347144284c5982851ef99a2e1007af6a" id="r_a347144284c5982851ef99a2e1007af6a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a347144284c5982851ef99a2e1007af6a">enter</a> (<a class="el" href="class_i_entity.html">IEntity</a> *entity) override</td></tr>
+<tr class="separator:a347144284c5982851ef99a2e1007af6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a658fc7220f2a25e2dfb8e09dd65d141b" id="r_a658fc7220f2a25e2dfb8e09dd65d141b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a658fc7220f2a25e2dfb8e09dd65d141b">prepare_for_drawing</a> () override</td></tr>
+<tr class="separator:a658fc7220f2a25e2dfb8e09dd65d141b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p>проход, который знает о двух комнатах, которые он связывает </p>
+</div><h2 class="groupheader">Методы</h2>
+<a id="a3fc0bf1281f3ef40ceb9baa33a1dc01e" name="a3fc0bf1281f3ef40ceb9baa33a1dc01e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3fc0bf1281f3ef40ceb9baa33a1dc01e">&#9670;&#160;</a></span>draw_into()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Pass::draw_into </td>
+          <td>(</td>
+          <td class="paramtype">sf::RenderWindow &amp;</td>          <td class="paramname"><span class="paramname"><em>m_window</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="struct_i_drawable.html">IDrawable</a>.</p>
+
+</div>
+</div>
+<a id="a347144284c5982851ef99a2e1007af6a" name="a347144284c5982851ef99a2e1007af6a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a347144284c5982851ef99a2e1007af6a">&#9670;&#160;</a></span>enter()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Pass::enter </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="class_i_entity.html">IEntity</a> *</td>          <td class="paramname"><span class="paramname"><em>entity</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="class_i_room_side.html">IRoomSide</a>.</p>
+
+</div>
+</div>
+<a id="a658fc7220f2a25e2dfb8e09dd65d141b" name="a658fc7220f2a25e2dfb8e09dd65d141b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a658fc7220f2a25e2dfb8e09dd65d141b">&#9670;&#160;</a></span>prepare_for_drawing()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Pass::prepare_for_drawing </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="struct_i_preparable.html">IPreparable</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Drawable/Maze/<a class="el" href="_maze_8h_source.html">Maze.h</a></li>
+<li>source/application/Drawable/Maze/<b>Maze.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_pass.html">Pass</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_pass.png b/assets/docs/html/class_pass.png
new file mode 100644
index 0000000000000000000000000000000000000000..8529adecae4174084721e7193091164355f90784
Binary files /dev/null and b/assets/docs/html/class_pass.png differ
diff --git a/assets/docs/html/class_room-members.html b/assets/docs/html/class_room-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..d88b3f181f25d9dc315efb11453b26794a73faae
--- /dev/null
+++ b/assets/docs/html/class_room-members.html
@@ -0,0 +1,137 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_room.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Room Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_room.html">Room</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Direction</b> перечисление (определено в <a class="el" href="class_room.html">Room</a>)</td><td class="entry"><a class="el" href="class_room.html">Room</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>DOWN</b> элементы перечисления (определено в <a class="el" href="class_room.html">Room</a>)</td><td class="entry"><a class="el" href="class_room.html">Room</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>draw_into</b>(sf::RenderWindow &amp;m_window) override (определено в <a class="el" href="class_room.html">Room</a>)</td><td class="entry"><a class="el" href="class_room.html">Room</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>get_direction</b>(IRoomSide *ptr_side) (определено в <a class="el" href="class_room.html">Room</a>)</td><td class="entry"><a class="el" href="class_room.html">Room</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_position</b>() (определено в <a class="el" href="class_room.html">Room</a>)</td><td class="entry"><a class="el" href="class_room.html">Room</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>get_side</b>(Direction side) (определено в <a class="el" href="class_room.html">Room</a>)</td><td class="entry"><a class="el" href="class_room.html">Room</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_size</b>() (определено в <a class="el" href="class_room.html">Room</a>)</td><td class="entry"><a class="el" href="class_room.html">Room</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>INVALID</b> элементы перечисления (определено в <a class="el" href="class_room.html">Room</a>)</td><td class="entry"><a class="el" href="class_room.html">Room</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>LEFT</b> элементы перечисления (определено в <a class="el" href="class_room.html">Room</a>)</td><td class="entry"><a class="el" href="class_room.html">Room</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_rectangle</b> (определено в <a class="el" href="class_room.html">Room</a>)</td><td class="entry"><a class="el" href="class_room.html">Room</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_sides</b> (определено в <a class="el" href="class_room.html">Room</a>)</td><td class="entry"><a class="el" href="class_room.html">Room</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>RIGHT</b> элементы перечисления (определено в <a class="el" href="class_room.html">Room</a>)</td><td class="entry"><a class="el" href="class_room.html">Room</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Room</b>(float size) (определено в <a class="el" href="class_room.html">Room</a>)</td><td class="entry"><a class="el" href="class_room.html">Room</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>set_position</b>(sf::Vector2f pos) (определено в <a class="el" href="class_room.html">Room</a>)</td><td class="entry"><a class="el" href="class_room.html">Room</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_side</b>(Direction side, std::shared_ptr&lt; IRoomSide &gt; ptr_side) (определено в <a class="el" href="class_room.html">Room</a>)</td><td class="entry"><a class="el" href="class_room.html">Room</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>UP</b> элементы перечисления (определено в <a class="el" href="class_room.html">Room</a>)</td><td class="entry"><a class="el" href="class_room.html">Room</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~IDrawable</b>()=default (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_room.html b/assets/docs/html/class_room.html
new file mode 100644
index 0000000000000000000000000000000000000000..b52594635921903f35289b3e5cd15747b4fa448a
--- /dev/null
+++ b/assets/docs/html/class_room.html
@@ -0,0 +1,213 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс Room</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_room.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-types">Открытые типы</a> &#124;
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="#pub-attribs">Открытые атрибуты</a> &#124;
+<a href="class_room-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс Room</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Граф наследования:Room:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_room.png" usemap="#Room_map" alt=""/>
+  <map id="Room_map" name="Room_map">
+<area href="struct_i_drawable.html" title="Общий интерфейс для отрисовываемых сущностей и объектов" alt="IDrawable" shape="rect" coords="0,0,69,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
+Открытые типы</h2></td></tr>
+<tr class="memitem:a3d9f3182976192072a0286ab029b2428" id="r_a3d9f3182976192072a0286ab029b2428"><td class="memItemLeft" align="right" valign="top"><a id="a3d9f3182976192072a0286ab029b2428" name="a3d9f3182976192072a0286ab029b2428"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><b>Direction</b> { <br />
+&#160;&#160;<b>INVALID</b> = -1
+, <b>LEFT</b>
+, <b>RIGHT</b>
+, <b>UP</b>
+, <br />
+&#160;&#160;<b>DOWN</b>
+<br />
+ }</td></tr>
+<tr class="separator:a3d9f3182976192072a0286ab029b2428"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a171b66968d50efaf109b1b70ed4a2f36" id="r_a171b66968d50efaf109b1b70ed4a2f36"><td class="memItemLeft" align="right" valign="top"><a id="a171b66968d50efaf109b1b70ed4a2f36" name="a171b66968d50efaf109b1b70ed4a2f36"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><b>Room</b> (float size)</td></tr>
+<tr class="separator:a171b66968d50efaf109b1b70ed4a2f36"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a30335554197f2924abab883c7044218b" id="r_a30335554197f2924abab883c7044218b"><td class="memItemLeft" align="right" valign="top"><a id="a30335554197f2924abab883c7044218b" name="a30335554197f2924abab883c7044218b"></a>
+float&#160;</td><td class="memItemRight" valign="bottom"><b>get_size</b> ()</td></tr>
+<tr class="separator:a30335554197f2924abab883c7044218b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:addc73f207642e1d60604bbed64e7cc40" id="r_addc73f207642e1d60604bbed64e7cc40"><td class="memItemLeft" align="right" valign="top"><a id="addc73f207642e1d60604bbed64e7cc40" name="addc73f207642e1d60604bbed64e7cc40"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_position</b> (sf::Vector2f pos)</td></tr>
+<tr class="separator:addc73f207642e1d60604bbed64e7cc40"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4e555dd8bf53e479eacb0d84bff77e01" id="r_a4e555dd8bf53e479eacb0d84bff77e01"><td class="memItemLeft" align="right" valign="top"><a id="a4e555dd8bf53e479eacb0d84bff77e01" name="a4e555dd8bf53e479eacb0d84bff77e01"></a>
+sf::Vector2f&#160;</td><td class="memItemRight" valign="bottom"><b>get_position</b> ()</td></tr>
+<tr class="separator:a4e555dd8bf53e479eacb0d84bff77e01"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab91862faa61d3a19d265c3886fea7c48" id="r_ab91862faa61d3a19d265c3886fea7c48"><td class="memItemLeft" align="right" valign="top"><a id="ab91862faa61d3a19d265c3886fea7c48" name="ab91862faa61d3a19d265c3886fea7c48"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_side</b> (Direction side, std::shared_ptr&lt; <a class="el" href="class_i_room_side.html">IRoomSide</a> &gt; ptr_side)</td></tr>
+<tr class="separator:ab91862faa61d3a19d265c3886fea7c48"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0b1a1ddcaf1c9f1af37501329ca95b3c" id="r_a0b1a1ddcaf1c9f1af37501329ca95b3c"><td class="memItemLeft" align="right" valign="top"><a id="a0b1a1ddcaf1c9f1af37501329ca95b3c" name="a0b1a1ddcaf1c9f1af37501329ca95b3c"></a>
+<a class="el" href="class_i_room_side.html">IRoomSide</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>get_side</b> (Direction side)</td></tr>
+<tr class="separator:a0b1a1ddcaf1c9f1af37501329ca95b3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac37fbc976e8b636050962f2c9e3358f1" id="r_ac37fbc976e8b636050962f2c9e3358f1"><td class="memItemLeft" align="right" valign="top"><a id="ac37fbc976e8b636050962f2c9e3358f1" name="ac37fbc976e8b636050962f2c9e3358f1"></a>
+Direction&#160;</td><td class="memItemRight" valign="bottom"><b>get_direction</b> (<a class="el" href="class_i_room_side.html">IRoomSide</a> *ptr_side)</td></tr>
+<tr class="separator:ac37fbc976e8b636050962f2c9e3358f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f88b6256c45efa1af6441ad4192f839" id="r_a6f88b6256c45efa1af6441ad4192f839"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6f88b6256c45efa1af6441ad4192f839">draw_into</a> (sf::RenderWindow &amp;m_window) override</td></tr>
+<tr class="separator:a6f88b6256c45efa1af6441ad4192f839"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
+Открытые атрибуты</h2></td></tr>
+<tr class="memitem:a07f9e5133a6da10b89ee9f668f990f1f" id="r_a07f9e5133a6da10b89ee9f668f990f1f"><td class="memItemLeft" align="right" valign="top"><a id="a07f9e5133a6da10b89ee9f668f990f1f" name="a07f9e5133a6da10b89ee9f668f990f1f"></a>
+std::array&lt; std::shared_ptr&lt; <a class="el" href="class_i_room_side.html">IRoomSide</a> &gt;, 4 &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>m_sides</b></td></tr>
+<tr class="separator:a07f9e5133a6da10b89ee9f668f990f1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa48bb50a4266befba8f13b6f5b5f7dff" id="r_aa48bb50a4266befba8f13b6f5b5f7dff"><td class="memItemLeft" align="right" valign="top"><a id="aa48bb50a4266befba8f13b6f5b5f7dff" name="aa48bb50a4266befba8f13b6f5b5f7dff"></a>
+sf::RectangleShape&#160;</td><td class="memItemRight" valign="bottom"><b>m_rectangle</b></td></tr>
+<tr class="separator:aa48bb50a4266befba8f13b6f5b5f7dff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Методы</h2>
+<a id="a6f88b6256c45efa1af6441ad4192f839" name="a6f88b6256c45efa1af6441ad4192f839"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6f88b6256c45efa1af6441ad4192f839">&#9670;&#160;</a></span>draw_into()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Room::draw_into </td>
+          <td>(</td>
+          <td class="paramtype">sf::RenderWindow &amp;</td>          <td class="paramname"><span class="paramname"><em>m_window</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="struct_i_drawable.html">IDrawable</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Drawable/Maze/<a class="el" href="_maze_8h_source.html">Maze.h</a></li>
+<li>source/application/Drawable/Maze/<b>Maze.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_room.html">Room</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_room.png b/assets/docs/html/class_room.png
new file mode 100644
index 0000000000000000000000000000000000000000..99998effaa92d7dd7d3e49a36048cf2384f2b21b
Binary files /dev/null and b/assets/docs/html/class_room.png differ
diff --git a/assets/docs/html/class_score_count-members.html b/assets/docs/html/class_score_count-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..c2a5dffc1320bc286f2f77e157812ca1826f4755
--- /dev/null
+++ b/assets/docs/html/class_score_count-members.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_score_count.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">ScoreCount Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_score_count.html">ScoreCount</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_player_one</b>() const (определено в <a class="el" href="class_score_count.html">ScoreCount</a>)</td><td class="entry"><a class="el" href="class_score_count.html">ScoreCount</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>get_player_two</b>() const (определено в <a class="el" href="class_score_count.html">ScoreCount</a>)</td><td class="entry"><a class="el" href="class_score_count.html">ScoreCount</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>is_active</b>() const (определено в <a class="el" href="class_score_count.html">ScoreCount</a>)</td><td class="entry"><a class="el" href="class_score_count.html">ScoreCount</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_score_count.html#ac3920f1272e0d1df949eea48b04896c1">on_notify</a>(const IGameEvent &amp;event) override</td><td class="entry"><a class="el" href="class_score_count.html">ScoreCount</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ScoreCount</b>(int player) (определено в <a class="el" href="class_score_count.html">ScoreCount</a>)</td><td class="entry"><a class="el" href="class_score_count.html">ScoreCount</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IObserver</b>()=default (определено в <a class="el" href="class_i_observer.html">IObserver</a>)</td><td class="entry"><a class="el" href="class_i_observer.html">IObserver</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_score_count.html b/assets/docs/html/class_score_count.html
new file mode 100644
index 0000000000000000000000000000000000000000..6142936b6b0553e51347ddadb0f16f980cbb0858
--- /dev/null
+++ b/assets/docs/html/class_score_count.html
@@ -0,0 +1,190 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс ScoreCount</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_score_count.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_score_count-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс ScoreCount</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Наблюдатель - счетчик еды. При съедании еды посылается уведомление и наблюдатель увеличивает счетчик для конкретного игрока  
+ <a href="#details">Подробнее...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_i_observer_8h_source.html">IObserver.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:ScoreCount:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_score_count.png" usemap="#ScoreCount_map" alt=""/>
+  <map id="ScoreCount_map" name="ScoreCount_map">
+<area href="class_i_observer.html" title="Паттерн Observer. Общий интерфейс для наблюдателей" alt="IObserver" shape="rect" coords="0,0,79,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:ae69d2cd4ebe0a9616ce1a8406a4d1d48" id="r_ae69d2cd4ebe0a9616ce1a8406a4d1d48"><td class="memItemLeft" align="right" valign="top"><a id="ae69d2cd4ebe0a9616ce1a8406a4d1d48" name="ae69d2cd4ebe0a9616ce1a8406a4d1d48"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><b>ScoreCount</b> (int player)</td></tr>
+<tr class="separator:ae69d2cd4ebe0a9616ce1a8406a4d1d48"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3920f1272e0d1df949eea48b04896c1" id="r_ac3920f1272e0d1df949eea48b04896c1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac3920f1272e0d1df949eea48b04896c1">on_notify</a> (const <a class="el" href="class_i_game_event.html">IGameEvent</a> &amp;event) override</td></tr>
+<tr class="separator:ac3920f1272e0d1df949eea48b04896c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aba12684d8e89ea53fe405acb6cf61e25" id="r_aba12684d8e89ea53fe405acb6cf61e25"><td class="memItemLeft" align="right" valign="top"><a id="aba12684d8e89ea53fe405acb6cf61e25" name="aba12684d8e89ea53fe405acb6cf61e25"></a>
+bool&#160;</td><td class="memItemRight" valign="bottom"><b>is_active</b> () const</td></tr>
+<tr class="separator:aba12684d8e89ea53fe405acb6cf61e25"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a82849b394da5b2548b3d031e6d1ab6a7" id="r_a82849b394da5b2548b3d031e6d1ab6a7"><td class="memItemLeft" align="right" valign="top"><a id="a82849b394da5b2548b3d031e6d1ab6a7" name="a82849b394da5b2548b3d031e6d1ab6a7"></a>
+int&#160;</td><td class="memItemRight" valign="bottom"><b>get_player_one</b> () const</td></tr>
+<tr class="separator:a82849b394da5b2548b3d031e6d1ab6a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2806d889a1f90da1be6ef4c24cf52776" id="r_a2806d889a1f90da1be6ef4c24cf52776"><td class="memItemLeft" align="right" valign="top"><a id="a2806d889a1f90da1be6ef4c24cf52776" name="a2806d889a1f90da1be6ef4c24cf52776"></a>
+int&#160;</td><td class="memItemRight" valign="bottom"><b>get_player_two</b> () const</td></tr>
+<tr class="separator:a2806d889a1f90da1be6ef4c24cf52776"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p>Наблюдатель - счетчик еды. При съедании еды посылается уведомление и наблюдатель увеличивает счетчик для конкретного игрока </p>
+</div><h2 class="groupheader">Методы</h2>
+<a id="ac3920f1272e0d1df949eea48b04896c1" name="ac3920f1272e0d1df949eea48b04896c1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac3920f1272e0d1df949eea48b04896c1">&#9670;&#160;</a></span>on_notify()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void ScoreCount::on_notify </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="class_i_game_event.html">IGameEvent</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>event</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>при <a class="el" href="class_delete_static_entity.html" title="Удаление еды.">DeleteStaticEntity</a> обновляем счетчик для каждого игрока </p>
+</blockquote>
+
+<p>Замещает <a class="el" href="class_i_observer.html">IObserver</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Drawable/Entity/<a class="el" href="_i_observer_8h_source.html">IObserver.h</a></li>
+<li>source/application/Drawable/Entity/<b>IObserver.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_score_count.html">ScoreCount</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_score_count.js b/assets/docs/html/class_score_count.js
new file mode 100644
index 0000000000000000000000000000000000000000..4306e79bf0994fcc4d3d01f7e9b0647c62d3de44
--- /dev/null
+++ b/assets/docs/html/class_score_count.js
@@ -0,0 +1,4 @@
+var class_score_count =
+[
+    [ "on_notify", "class_score_count.html#ac3920f1272e0d1df949eea48b04896c1", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/class_score_count.png b/assets/docs/html/class_score_count.png
new file mode 100644
index 0000000000000000000000000000000000000000..20ac0cdae390ef5818705b655d257fcf97d7e5c2
Binary files /dev/null and b/assets/docs/html/class_score_count.png differ
diff --git a/assets/docs/html/class_screamer_composite_event-members.html b/assets/docs/html/class_screamer_composite_event-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..8a34078a662bef11d1ba65aa38eb06d4a8f2cc12
--- /dev/null
+++ b/assets/docs/html/class_screamer_composite_event-members.html
@@ -0,0 +1,125 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_screamer_composite_event.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">ScreamerCompositeEvent Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_screamer_composite_event.html">ScreamerCompositeEvent</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>add_observer</b>(IObserver *observer) (определено в <a class="el" href="class_i_game_event.html">IGameEvent</a>)</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>handle</b>(GameContext *context) override (определено в <a class="el" href="class_screamer_composite_event.html">ScreamerCompositeEvent</a>)</td><td class="entry"><a class="el" href="class_screamer_composite_event.html">ScreamerCompositeEvent</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>notify</b>() const (определено в <a class="el" href="class_i_game_event.html">IGameEvent</a>)</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>ScreamerCompositeEvent</b>(IStaticEntity *food) (определено в <a class="el" href="class_screamer_composite_event.html">ScreamerCompositeEvent</a>)</td><td class="entry"><a class="el" href="class_screamer_composite_event.html">ScreamerCompositeEvent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">~IGameEvent</a>()=default</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_screamer_composite_event.html b/assets/docs/html/class_screamer_composite_event.html
new file mode 100644
index 0000000000000000000000000000000000000000..b6e8cc543919a561e840a1cb223276bea8c860e6
--- /dev/null
+++ b/assets/docs/html/class_screamer_composite_event.html
@@ -0,0 +1,190 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс ScreamerCompositeEvent</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_screamer_composite_event.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_screamer_composite_event-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс ScreamerCompositeEvent</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Совмещение двум событий: удаление еды и скример В ресурсах храним сущность, которую хотим удалить.  
+ <a href="#details">Подробнее...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_i_game_event_8h_source.html">IGameEvent.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:ScreamerCompositeEvent:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_screamer_composite_event.png" usemap="#ScreamerCompositeEvent_map" alt=""/>
+  <map id="ScreamerCompositeEvent_map" name="ScreamerCompositeEvent_map">
+<area href="class_i_game_event.html" title="Абстрактрый класс для различных игровых событий" alt="IGameEvent" shape="rect" coords="0,0,157,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a629dc77276711cb69af329db4343069a" id="r_a629dc77276711cb69af329db4343069a"><td class="memItemLeft" align="right" valign="top"><a id="a629dc77276711cb69af329db4343069a" name="a629dc77276711cb69af329db4343069a"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><b>ScreamerCompositeEvent</b> (<a class="el" href="struct_i_static_entity.html">IStaticEntity</a> *food)</td></tr>
+<tr class="separator:a629dc77276711cb69af329db4343069a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:accd32731043225bc3bc2352957ca58ce" id="r_accd32731043225bc3bc2352957ca58ce"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#accd32731043225bc3bc2352957ca58ce">handle</a> (<a class="el" href="struct_game_context.html">GameContext</a> *context) override</td></tr>
+<tr class="separator:accd32731043225bc3bc2352957ca58ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_i_game_event"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_i_game_event')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_i_game_event.html">IGameEvent</a></td></tr>
+<tr class="memitem:ae84f5f2b3d3bd7834e334c4e6fcde711 inherit pub_methods_class_i_game_event" id="r_ae84f5f2b3d3bd7834e334c4e6fcde711"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">~IGameEvent</a> ()=default</td></tr>
+<tr class="separator:ae84f5f2b3d3bd7834e334c4e6fcde711 inherit pub_methods_class_i_game_event"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b231dafdf4bdbc98f7d75b5205a8b99 inherit pub_methods_class_i_game_event" id="r_a6b231dafdf4bdbc98f7d75b5205a8b99"><td class="memItemLeft" align="right" valign="top">
+void&#160;</td><td class="memItemRight" valign="bottom"><b>add_observer</b> (<a class="el" href="class_i_observer.html">IObserver</a> *observer)</td></tr>
+<tr class="separator:a6b231dafdf4bdbc98f7d75b5205a8b99 inherit pub_methods_class_i_game_event"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Дополнительные унаследованные члены</h2></td></tr>
+<tr class="inherit_header pro_methods_class_i_game_event"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_methods_class_i_game_event')"><img src="closed.png" alt="-"/>&#160;Защищенные члены унаследованные от <a class="el" href="class_i_game_event.html">IGameEvent</a></td></tr>
+<tr class="memitem:a1bc7533cd09ababa60363e5afbb7e787 inherit pro_methods_class_i_game_event" id="r_a1bc7533cd09ababa60363e5afbb7e787"><td class="memItemLeft" align="right" valign="top">
+void&#160;</td><td class="memItemRight" valign="bottom"><b>notify</b> () const</td></tr>
+<tr class="separator:a1bc7533cd09ababa60363e5afbb7e787 inherit pro_methods_class_i_game_event"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p>Совмещение двум событий: удаление еды и скример В ресурсах храним сущность, которую хотим удалить. </p>
+</div><h2 class="groupheader">Методы</h2>
+<a id="accd32731043225bc3bc2352957ca58ce" name="accd32731043225bc3bc2352957ca58ce"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#accd32731043225bc3bc2352957ca58ce">&#9670;&#160;</a></span>handle()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void ScreamerCompositeEvent::handle </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="struct_game_context.html">GameContext</a> *</td>          <td class="paramname"><span class="paramname"><em>context</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="class_i_game_event.html">IGameEvent</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов класса находятся в файле:<ul>
+<li>source/application/Event/<a class="el" href="_i_game_event_8h_source.html">IGameEvent.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_screamer_composite_event.html">ScreamerCompositeEvent</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_screamer_composite_event.png b/assets/docs/html/class_screamer_composite_event.png
new file mode 100644
index 0000000000000000000000000000000000000000..846acc5f284054a52341a08e0ddf3e6f9e4e26d8
Binary files /dev/null and b/assets/docs/html/class_screamer_composite_event.png differ
diff --git a/assets/docs/html/class_simple_builder-members.html b/assets/docs/html/class_simple_builder-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..b42e0dbb2ba417e4cbfccea021fb8ef577e7c78f
--- /dev/null
+++ b/assets/docs/html/class_simple_builder-members.html
@@ -0,0 +1,134 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_simple_builder.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">SimpleBuilder Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_simple_builder.html">SimpleBuilder</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>CommonBuilder</b>(float width, float height, float room_size) (определено в <a class="el" href="class_simple_builder.html">SimpleBuilder</a>)</td><td class="entry"><a class="el" href="class_simple_builder.html">SimpleBuilder</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_common_builder.html#ace9b0433bd9b849970e2b96965818789">create_context</a>(float dynamic_objects_ratio, int players) override</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_simple_builder.html#ad02dcc4d85cec356f6169ce938242226">create_rooms</a>() override</td><td class="entry"><a class="el" href="class_simple_builder.html">SimpleBuilder</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_common_builder.html#a4e45999e05a45814ed25ed3adbbe07e0">create_state</a>(IStateManager &amp;state_manager, const sf::VideoMode &amp;mode, const std::string &amp;window_title) override</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_common_builder.html#aafef8d08b8bfdfccfde6ff56bfb99987">get_game</a>() override</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_context</b> (определено в <a class="el" href="class_common_builder.html">CommonBuilder</a>)</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_game_state</b> (определено в <a class="el" href="class_common_builder.html">CommonBuilder</a>)</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_height</b> (определено в <a class="el" href="class_common_builder.html">CommonBuilder</a>)</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_room_size</b> (определено в <a class="el" href="class_common_builder.html">CommonBuilder</a>)</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_rooms</b> (определено в <a class="el" href="class_common_builder.html">CommonBuilder</a>)</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_width</b> (определено в <a class="el" href="class_common_builder.html">CommonBuilder</a>)</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_common_builder.html#ae920c0a91e61aff620096c100e496da0">set_all_to_state</a>() override</td><td class="entry"><a class="el" href="class_common_builder.html">CommonBuilder</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_simple_builder.html#aa1c6b39ff7d52a0f8cf811ef91d1feaa">set_rooms_sides</a>() override</td><td class="entry"><a class="el" href="class_simple_builder.html">SimpleBuilder</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IGameBuilder</b>()=default (определено в <a class="el" href="class_i_game_builder.html">IGameBuilder</a>)</td><td class="entry"><a class="el" href="class_i_game_builder.html">IGameBuilder</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_simple_builder.html b/assets/docs/html/class_simple_builder.html
new file mode 100644
index 0000000000000000000000000000000000000000..660657048d80873bed43d1a2db6e746c5e7c682c
--- /dev/null
+++ b/assets/docs/html/class_simple_builder.html
@@ -0,0 +1,270 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс SimpleBuilder</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_simple_builder.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_simple_builder-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс SimpleBuilder</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="_game_builders_8h_source.html">GameBuilders.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:SimpleBuilder:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_simple_builder.png" usemap="#SimpleBuilder_map" alt=""/>
+  <map id="SimpleBuilder_map" name="SimpleBuilder_map">
+<area href="class_common_builder.html" alt="CommonBuilder" shape="rect" coords="0,56,100,80"/>
+<area href="class_i_game_builder.html" alt="IGameBuilder" shape="rect" coords="0,0,100,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:ad02dcc4d85cec356f6169ce938242226" id="r_ad02dcc4d85cec356f6169ce938242226"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad02dcc4d85cec356f6169ce938242226">create_rooms</a> () override</td></tr>
+<tr class="memdesc:ad02dcc4d85cec356f6169ce938242226"><td class="mdescLeft">&#160;</td><td class="mdescRight">Создаем все комнаты  <br /></td></tr>
+<tr class="separator:ad02dcc4d85cec356f6169ce938242226"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa1c6b39ff7d52a0f8cf811ef91d1feaa" id="r_aa1c6b39ff7d52a0f8cf811ef91d1feaa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa1c6b39ff7d52a0f8cf811ef91d1feaa">set_rooms_sides</a> () override</td></tr>
+<tr class="separator:aa1c6b39ff7d52a0f8cf811ef91d1feaa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a02bd852f1888116967ca1185e40bfba8" id="r_a02bd852f1888116967ca1185e40bfba8"><td class="memItemLeft" align="right" valign="top"><a id="a02bd852f1888116967ca1185e40bfba8" name="a02bd852f1888116967ca1185e40bfba8"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><b>CommonBuilder</b> (float width, float height, float room_size)</td></tr>
+<tr class="separator:a02bd852f1888116967ca1185e40bfba8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_common_builder"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_common_builder')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_common_builder.html">CommonBuilder</a></td></tr>
+<tr class="memitem:a02bd852f1888116967ca1185e40bfba8 inherit pub_methods_class_common_builder" id="r_a02bd852f1888116967ca1185e40bfba8"><td class="memItemLeft" align="right" valign="top">
+&#160;</td><td class="memItemRight" valign="bottom"><b>CommonBuilder</b> (float width, float height, float room_size)</td></tr>
+<tr class="separator:a02bd852f1888116967ca1185e40bfba8 inherit pub_methods_class_common_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ace9b0433bd9b849970e2b96965818789 inherit pub_methods_class_common_builder" id="r_ace9b0433bd9b849970e2b96965818789"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_common_builder.html#ace9b0433bd9b849970e2b96965818789">create_context</a> (float dynamic_objects_ratio, int players) override</td></tr>
+<tr class="memdesc:ace9b0433bd9b849970e2b96965818789 inherit pub_methods_class_common_builder"><td class="mdescLeft">&#160;</td><td class="mdescRight">Создает контекст для игры  <br /></td></tr>
+<tr class="separator:ace9b0433bd9b849970e2b96965818789 inherit pub_methods_class_common_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4e45999e05a45814ed25ed3adbbe07e0 inherit pub_methods_class_common_builder" id="r_a4e45999e05a45814ed25ed3adbbe07e0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_common_builder.html#a4e45999e05a45814ed25ed3adbbe07e0">create_state</a> (<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;state_manager, const sf::VideoMode &amp;mode, const std::string &amp;window_title) override</td></tr>
+<tr class="memdesc:a4e45999e05a45814ed25ed3adbbe07e0 inherit pub_methods_class_common_builder"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cоздаем состояние <a class="el" href="class_game_state.html" title="Взаимодействие врага с объектами лабиринта, что порождает игровые события">GameState</a>, используя имя, режим окна и сслыку на менеджер состояний  <br /></td></tr>
+<tr class="separator:a4e45999e05a45814ed25ed3adbbe07e0 inherit pub_methods_class_common_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae920c0a91e61aff620096c100e496da0 inherit pub_methods_class_common_builder" id="r_ae920c0a91e61aff620096c100e496da0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_common_builder.html#ae920c0a91e61aff620096c100e496da0">set_all_to_state</a> () override</td></tr>
+<tr class="memdesc:ae920c0a91e61aff620096c100e496da0 inherit pub_methods_class_common_builder"><td class="mdescLeft">&#160;</td><td class="mdescRight">Созданный лабиринт и контекст назначаем созданному состоянию игры <a class="el" href="class_game_state.html" title="Взаимодействие врага с объектами лабиринта, что порождает игровые события">GameState</a>.  <br /></td></tr>
+<tr class="separator:ae920c0a91e61aff620096c100e496da0 inherit pub_methods_class_common_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aafef8d08b8bfdfccfde6ff56bfb99987 inherit pub_methods_class_common_builder" id="r_aafef8d08b8bfdfccfde6ff56bfb99987"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="class_game_state.html">GameState</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_common_builder.html#aafef8d08b8bfdfccfde6ff56bfb99987">get_game</a> () override</td></tr>
+<tr class="memdesc:aafef8d08b8bfdfccfde6ff56bfb99987 inherit pub_methods_class_common_builder"><td class="mdescLeft">&#160;</td><td class="mdescRight">Получить результат строителя.  <br /></td></tr>
+<tr class="separator:aafef8d08b8bfdfccfde6ff56bfb99987 inherit pub_methods_class_common_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Дополнительные унаследованные члены</h2></td></tr>
+<tr class="inherit_header pro_attribs_class_common_builder"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_attribs_class_common_builder')"><img src="closed.png" alt="-"/>&#160;Защищенные данные унаследованные от <a class="el" href="class_common_builder.html">CommonBuilder</a></td></tr>
+<tr class="memitem:a21d4002b40948223e8e8fedf44a04b1a inherit pro_attribs_class_common_builder" id="r_a21d4002b40948223e8e8fedf44a04b1a"><td class="memItemLeft" align="right" valign="top">
+float&#160;</td><td class="memItemRight" valign="bottom"><b>m_width</b></td></tr>
+<tr class="separator:a21d4002b40948223e8e8fedf44a04b1a inherit pro_attribs_class_common_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac5552f46ab0d3ad530075981ead5746a inherit pro_attribs_class_common_builder" id="r_ac5552f46ab0d3ad530075981ead5746a"><td class="memItemLeft" align="right" valign="top">
+float&#160;</td><td class="memItemRight" valign="bottom"><b>m_height</b></td></tr>
+<tr class="separator:ac5552f46ab0d3ad530075981ead5746a inherit pro_attribs_class_common_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1bc23e74a5489c805205cf6d81d81ef3 inherit pro_attribs_class_common_builder" id="r_a1bc23e74a5489c805205cf6d81d81ef3"><td class="memItemLeft" align="right" valign="top">
+float&#160;</td><td class="memItemRight" valign="bottom"><b>m_room_size</b></td></tr>
+<tr class="separator:a1bc23e74a5489c805205cf6d81d81ef3 inherit pro_attribs_class_common_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a48bbe8e10616593bf3f259240ba3f6e8 inherit pro_attribs_class_common_builder" id="r_a48bbe8e10616593bf3f259240ba3f6e8"><td class="memItemLeft" align="right" valign="top">
+std::vector&lt; std::vector&lt; <a class="el" href="class_room.html">Room</a> * &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>m_rooms</b></td></tr>
+<tr class="separator:a48bbe8e10616593bf3f259240ba3f6e8 inherit pro_attribs_class_common_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a51ab687d8edc6364c84975af07bff3c2 inherit pro_attribs_class_common_builder" id="r_a51ab687d8edc6364c84975af07bff3c2"><td class="memItemLeft" align="right" valign="top">
+<a class="el" href="struct_game_context.html">GameContext</a>&#160;</td><td class="memItemRight" valign="bottom"><b>m_context</b></td></tr>
+<tr class="separator:a51ab687d8edc6364c84975af07bff3c2 inherit pro_attribs_class_common_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a47bb45f702c8b0848120670d4c7192da inherit pro_attribs_class_common_builder" id="r_a47bb45f702c8b0848120670d4c7192da"><td class="memItemLeft" align="right" valign="top">
+std::unique_ptr&lt; <a class="el" href="class_game_state.html">GameState</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>m_game_state</b></td></tr>
+<tr class="separator:a47bb45f702c8b0848120670d4c7192da inherit pro_attribs_class_common_builder"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><blockquote class="doxtable">
+<p>простой строитель для уровней EASY и MEDIUM </p>
+</blockquote>
+</div><h2 class="groupheader">Методы</h2>
+<a id="ad02dcc4d85cec356f6169ce938242226" name="ad02dcc4d85cec356f6169ce938242226"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad02dcc4d85cec356f6169ce938242226">&#9670;&#160;</a></span>create_rooms()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void SimpleBuilder::create_rooms </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Создаем все комнаты </p>
+<p>Сетку комнат храним в классе <a class="el" href="class_common_builder.html">CommonBuilder</a> В <a class="el" href="class_simple_builder.html">SimpleBuilder</a> все возможное пространство заполняем комнатами. В <a class="el" href="#aa1c6b39ff7d52a0f8cf811ef91d1feaa">set_rooms_sides()</a> создаем проходы вправо/влево и вверх/вниз, стены делаем только на контуре. В <a class="el" href="class_complex_builder.html">ComplexBuilder</a> формирует "решетчатый" лабиринт по алгоритму Эллера </p>
+<blockquote class="doxtable">
+<p>слева "менюшка" и справа игра </p>
+</blockquote>
+
+<p>Замещает <a class="el" href="class_i_game_builder.html">IGameBuilder</a>.</p>
+
+</div>
+</div>
+<a id="aa1c6b39ff7d52a0f8cf811ef91d1feaa" name="aa1c6b39ff7d52a0f8cf811ef91d1feaa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa1c6b39ff7d52a0f8cf811ef91d1feaa">&#9670;&#160;</a></span>set_rooms_sides()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void SimpleBuilder::set_rooms_sides </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>нулевая строка -&gt; создаем стену сверху </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>создаем проходы сверху и снизу </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>если строка в нулевом столбце -&gt; создаем стену слева </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>создаем проходы вправо и влево </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>если последняя строка -&gt; создаем стену снизу </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>если комнаты в последнем столбце -&gt; создаем стену справа </p>
+</blockquote>
+
+<p>Замещает <a class="el" href="class_i_game_builder.html">IGameBuilder</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/BobBuilder/<a class="el" href="_game_builders_8h_source.html">GameBuilders.h</a></li>
+<li>source/application/BobBuilder/<b>GameBuilders.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_simple_builder.html">SimpleBuilder</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_simple_builder.js b/assets/docs/html/class_simple_builder.js
new file mode 100644
index 0000000000000000000000000000000000000000..aa1910d6403dc4e2d147ace1bfba39874523ab7a
--- /dev/null
+++ b/assets/docs/html/class_simple_builder.js
@@ -0,0 +1,5 @@
+var class_simple_builder =
+[
+    [ "create_rooms", "class_simple_builder.html#ad02dcc4d85cec356f6169ce938242226", null ],
+    [ "set_rooms_sides", "class_simple_builder.html#aa1c6b39ff7d52a0f8cf811ef91d1feaa", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/class_simple_builder.png b/assets/docs/html/class_simple_builder.png
new file mode 100644
index 0000000000000000000000000000000000000000..105452b026bd08401d185da616e74c487eca7df7
Binary files /dev/null and b/assets/docs/html/class_simple_builder.png differ
diff --git a/assets/docs/html/class_theme_manager-members.html b/assets/docs/html/class_theme_manager-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..086bc517f1e5866a2a6abd1e0e963513a67cc769
--- /dev/null
+++ b/assets/docs/html/class_theme_manager-members.html
@@ -0,0 +1,137 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_theme_manager.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">ThemeManager Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_theme_manager.html">ThemeManager</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>applyTheme</b>() (определено в <a class="el" href="class_theme_manager.html">ThemeManager</a>)</td><td class="entry"><a class="el" href="class_theme_manager.html">ThemeManager</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>getButtonFillColor</b>() const (определено в <a class="el" href="class_theme_manager.html">ThemeManager</a>)</td><td class="entry"><a class="el" href="class_theme_manager.html">ThemeManager</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>getButtonOutlineColor</b>() const (определено в <a class="el" href="class_theme_manager.html">ThemeManager</a>)</td><td class="entry"><a class="el" href="class_theme_manager.html">ThemeManager</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>getButtonScoreColor</b>() const (определено в <a class="el" href="class_theme_manager.html">ThemeManager</a>)</td><td class="entry"><a class="el" href="class_theme_manager.html">ThemeManager</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>getButtonSelectionColor</b>() const (определено в <a class="el" href="class_theme_manager.html">ThemeManager</a>)</td><td class="entry"><a class="el" href="class_theme_manager.html">ThemeManager</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>getButtonTextColor</b>() const (определено в <a class="el" href="class_theme_manager.html">ThemeManager</a>)</td><td class="entry"><a class="el" href="class_theme_manager.html">ThemeManager</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>getGameBackgroundInGameColor</b>() const (определено в <a class="el" href="class_theme_manager.html">ThemeManager</a>)</td><td class="entry"><a class="el" href="class_theme_manager.html">ThemeManager</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>getGameBackgroundLostColor</b>() const (определено в <a class="el" href="class_theme_manager.html">ThemeManager</a>)</td><td class="entry"><a class="el" href="class_theme_manager.html">ThemeManager</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>getGameBackgroundWinColor</b>() const (определено в <a class="el" href="class_theme_manager.html">ThemeManager</a>)</td><td class="entry"><a class="el" href="class_theme_manager.html">ThemeManager</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>getRoomColor</b>() const (определено в <a class="el" href="class_theme_manager.html">ThemeManager</a>)</td><td class="entry"><a class="el" href="class_theme_manager.html">ThemeManager</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>getTitleTextColor</b>() const (определено в <a class="el" href="class_theme_manager.html">ThemeManager</a>)</td><td class="entry"><a class="el" href="class_theme_manager.html">ThemeManager</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>getWallColor</b>() const (определено в <a class="el" href="class_theme_manager.html">ThemeManager</a>)</td><td class="entry"><a class="el" href="class_theme_manager.html">ThemeManager</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Instance</b>() (определено в <a class="el" href="class_theme_manager.html">ThemeManager</a>)</td><td class="entry"><a class="el" href="class_theme_manager.html">ThemeManager</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>operator=</b>(const ThemeManager &amp;)=delete (определено в <a class="el" href="class_theme_manager.html">ThemeManager</a>)</td><td class="entry"><a class="el" href="class_theme_manager.html">ThemeManager</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_theme</b>(Theme newTheme) (определено в <a class="el" href="class_theme_manager.html">ThemeManager</a>)</td><td class="entry"><a class="el" href="class_theme_manager.html">ThemeManager</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>Theme</b> перечисление (определено в <a class="el" href="class_theme_manager.html">ThemeManager</a>)</td><td class="entry"><a class="el" href="class_theme_manager.html">ThemeManager</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ThemeManager</b>(const ThemeManager &amp;)=delete (определено в <a class="el" href="class_theme_manager.html">ThemeManager</a>)</td><td class="entry"><a class="el" href="class_theme_manager.html">ThemeManager</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_theme_manager.html b/assets/docs/html/class_theme_manager.html
new file mode 100644
index 0000000000000000000000000000000000000000..c2bdf19e4e18594fa7b4011311080f1abc250ca0
--- /dev/null
+++ b/assets/docs/html/class_theme_manager.html
@@ -0,0 +1,189 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс ThemeManager</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_theme_manager.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-types">Открытые типы</a> &#124;
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="#pub-static-methods">Открытые статические члены</a> &#124;
+<a href="class_theme_manager-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс ThemeManager</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
+Открытые типы</h2></td></tr>
+<tr class="memitem:a553e6ecb7306fe4187042ad899de5a5d" id="r_a553e6ecb7306fe4187042ad899de5a5d"><td class="memItemLeft" align="right" valign="top"><a id="a553e6ecb7306fe4187042ad899de5a5d" name="a553e6ecb7306fe4187042ad899de5a5d"></a>enum class &#160;</td><td class="memItemRight" valign="bottom"><b>Theme</b> { <b>LIGHT</b>
+, <b>DARK</b>
+ }</td></tr>
+<tr class="separator:a553e6ecb7306fe4187042ad899de5a5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:ace0bdcd77a53c0888255c79e75e10a3c" id="r_ace0bdcd77a53c0888255c79e75e10a3c"><td class="memItemLeft" align="right" valign="top"><a id="ace0bdcd77a53c0888255c79e75e10a3c" name="ace0bdcd77a53c0888255c79e75e10a3c"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><b>ThemeManager</b> (const <a class="el" href="class_theme_manager.html">ThemeManager</a> &amp;)=delete</td></tr>
+<tr class="separator:ace0bdcd77a53c0888255c79e75e10a3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afdab143edaf4754eee092a6dd6401956" id="r_afdab143edaf4754eee092a6dd6401956"><td class="memItemLeft" align="right" valign="top"><a id="afdab143edaf4754eee092a6dd6401956" name="afdab143edaf4754eee092a6dd6401956"></a>
+<a class="el" href="class_theme_manager.html">ThemeManager</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="class_theme_manager.html">ThemeManager</a> &amp;)=delete</td></tr>
+<tr class="separator:afdab143edaf4754eee092a6dd6401956"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a232c2f9fcd0a97c1874498b0d9ba901f" id="r_a232c2f9fcd0a97c1874498b0d9ba901f"><td class="memItemLeft" align="right" valign="top"><a id="a232c2f9fcd0a97c1874498b0d9ba901f" name="a232c2f9fcd0a97c1874498b0d9ba901f"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>applyTheme</b> ()</td></tr>
+<tr class="separator:a232c2f9fcd0a97c1874498b0d9ba901f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a707dacf955a9383ad24ddcad9455a3" id="r_a4a707dacf955a9383ad24ddcad9455a3"><td class="memItemLeft" align="right" valign="top"><a id="a4a707dacf955a9383ad24ddcad9455a3" name="a4a707dacf955a9383ad24ddcad9455a3"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_theme</b> (Theme newTheme)</td></tr>
+<tr class="separator:a4a707dacf955a9383ad24ddcad9455a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea739b049b8a136c9c9828862cf6a529" id="r_aea739b049b8a136c9c9828862cf6a529"><td class="memItemLeft" align="right" valign="top"><a id="aea739b049b8a136c9c9828862cf6a529" name="aea739b049b8a136c9c9828862cf6a529"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>getButtonFillColor</b> () const</td></tr>
+<tr class="separator:aea739b049b8a136c9c9828862cf6a529"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a98a33ccd83165f31304c43e2f6757a38" id="r_a98a33ccd83165f31304c43e2f6757a38"><td class="memItemLeft" align="right" valign="top"><a id="a98a33ccd83165f31304c43e2f6757a38" name="a98a33ccd83165f31304c43e2f6757a38"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>getButtonOutlineColor</b> () const</td></tr>
+<tr class="separator:a98a33ccd83165f31304c43e2f6757a38"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a373a82fb4d1e7d3f95747b0c4bac9ecc" id="r_a373a82fb4d1e7d3f95747b0c4bac9ecc"><td class="memItemLeft" align="right" valign="top"><a id="a373a82fb4d1e7d3f95747b0c4bac9ecc" name="a373a82fb4d1e7d3f95747b0c4bac9ecc"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>getButtonTextColor</b> () const</td></tr>
+<tr class="separator:a373a82fb4d1e7d3f95747b0c4bac9ecc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4812b9418a6cdc178e622eed8a9a293d" id="r_a4812b9418a6cdc178e622eed8a9a293d"><td class="memItemLeft" align="right" valign="top"><a id="a4812b9418a6cdc178e622eed8a9a293d" name="a4812b9418a6cdc178e622eed8a9a293d"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>getButtonSelectionColor</b> () const</td></tr>
+<tr class="separator:a4812b9418a6cdc178e622eed8a9a293d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a547e730a466a5c2be377f773ae295868" id="r_a547e730a466a5c2be377f773ae295868"><td class="memItemLeft" align="right" valign="top"><a id="a547e730a466a5c2be377f773ae295868" name="a547e730a466a5c2be377f773ae295868"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>getTitleTextColor</b> () const</td></tr>
+<tr class="separator:a547e730a466a5c2be377f773ae295868"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5f18a2d0e0f0fb0deab56171118bc86f" id="r_a5f18a2d0e0f0fb0deab56171118bc86f"><td class="memItemLeft" align="right" valign="top"><a id="a5f18a2d0e0f0fb0deab56171118bc86f" name="a5f18a2d0e0f0fb0deab56171118bc86f"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>getGameBackgroundInGameColor</b> () const</td></tr>
+<tr class="separator:a5f18a2d0e0f0fb0deab56171118bc86f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6a53d5c5d795ced65b9e60c0b9d87283" id="r_a6a53d5c5d795ced65b9e60c0b9d87283"><td class="memItemLeft" align="right" valign="top"><a id="a6a53d5c5d795ced65b9e60c0b9d87283" name="a6a53d5c5d795ced65b9e60c0b9d87283"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>getGameBackgroundWinColor</b> () const</td></tr>
+<tr class="separator:a6a53d5c5d795ced65b9e60c0b9d87283"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af18bc14ba94d14fbde043a129ca08dbb" id="r_af18bc14ba94d14fbde043a129ca08dbb"><td class="memItemLeft" align="right" valign="top"><a id="af18bc14ba94d14fbde043a129ca08dbb" name="af18bc14ba94d14fbde043a129ca08dbb"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>getGameBackgroundLostColor</b> () const</td></tr>
+<tr class="separator:af18bc14ba94d14fbde043a129ca08dbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5d1ab723963308ce449c8deb14abe6f1" id="r_a5d1ab723963308ce449c8deb14abe6f1"><td class="memItemLeft" align="right" valign="top"><a id="a5d1ab723963308ce449c8deb14abe6f1" name="a5d1ab723963308ce449c8deb14abe6f1"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>getRoomColor</b> () const</td></tr>
+<tr class="separator:a5d1ab723963308ce449c8deb14abe6f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a896047c582cc80db54e928d64c2677a7" id="r_a896047c582cc80db54e928d64c2677a7"><td class="memItemLeft" align="right" valign="top"><a id="a896047c582cc80db54e928d64c2677a7" name="a896047c582cc80db54e928d64c2677a7"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>getWallColor</b> () const</td></tr>
+<tr class="separator:a896047c582cc80db54e928d64c2677a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a808fdd4a46065f5c41ab5ced7d299ac7" id="r_a808fdd4a46065f5c41ab5ced7d299ac7"><td class="memItemLeft" align="right" valign="top"><a id="a808fdd4a46065f5c41ab5ced7d299ac7" name="a808fdd4a46065f5c41ab5ced7d299ac7"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>getButtonScoreColor</b> () const</td></tr>
+<tr class="separator:a808fdd4a46065f5c41ab5ced7d299ac7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
+Открытые статические члены</h2></td></tr>
+<tr class="memitem:a42780ddd22847733e994ca2ff9831198" id="r_a42780ddd22847733e994ca2ff9831198"><td class="memItemLeft" align="right" valign="top"><a id="a42780ddd22847733e994ca2ff9831198" name="a42780ddd22847733e994ca2ff9831198"></a>
+static <a class="el" href="class_theme_manager.html">ThemeManager</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>Instance</b> ()</td></tr>
+<tr class="separator:a42780ddd22847733e994ca2ff9831198"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/State/<a class="el" href="_theme_manager_8h_source.html">ThemeManager.h</a></li>
+<li>source/application/State/<b>ThemeManager.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_theme_manager.html">ThemeManager</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_wall-members.html b/assets/docs/html/class_wall-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..f071bcc198c9ca76d4e54fefe5c43e199b68293a
--- /dev/null
+++ b/assets/docs/html/class_wall-members.html
@@ -0,0 +1,125 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_wall.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Wall Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_wall.html">Wall</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>draw_into</b>(sf::RenderWindow &amp;m_window) override (определено в <a class="el" href="class_wall.html">Wall</a>)</td><td class="entry"><a class="el" href="class_wall.html">Wall</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>enter</b>(IEntity *entity) override (определено в <a class="el" href="class_wall.html">Wall</a>)</td><td class="entry"><a class="el" href="class_wall.html">Wall</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>prepare_for_drawing</b>() override (определено в <a class="el" href="class_wall.html">Wall</a>)</td><td class="entry"><a class="el" href="class_wall.html">Wall</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>Wall</b>(Room &amp;room) (определено в <a class="el" href="class_wall.html">Wall</a>)</td><td class="entry"><a class="el" href="class_wall.html">Wall</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~IDrawable</b>()=default (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_wall.html b/assets/docs/html/class_wall.html
new file mode 100644
index 0000000000000000000000000000000000000000..50856f24b642c948e8231a961b9ce060ec40ef07
--- /dev/null
+++ b/assets/docs/html/class_wall.html
@@ -0,0 +1,238 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс Wall</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_wall.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_wall-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс Wall</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>стена, которая хранит в себе информацию о том в какой комнате находится  
+ <a href="#details">Подробнее...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_maze_8h_source.html">Maze.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:Wall:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_wall.png" usemap="#Wall_map" alt=""/>
+  <map id="Wall_map" name="Wall_map">
+<area href="class_i_room_side.html" alt="IRoomSide" shape="rect" coords="0,112,78,136"/>
+<area href="struct_i_preparable.html" alt="IPreparable" shape="rect" coords="0,56,78,80"/>
+<area href="struct_i_drawable.html" title="Общий интерфейс для отрисовываемых сущностей и объектов" alt="IDrawable" shape="rect" coords="0,0,78,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a58c52c74006bda8060a4c063da2446b6" id="r_a58c52c74006bda8060a4c063da2446b6"><td class="memItemLeft" align="right" valign="top"><a id="a58c52c74006bda8060a4c063da2446b6" name="a58c52c74006bda8060a4c063da2446b6"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><b>Wall</b> (<a class="el" href="class_room.html">Room</a> &amp;room)</td></tr>
+<tr class="separator:a58c52c74006bda8060a4c063da2446b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aabfdc679775d360edde26ed9082c01e7" id="r_aabfdc679775d360edde26ed9082c01e7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aabfdc679775d360edde26ed9082c01e7">prepare_for_drawing</a> () override</td></tr>
+<tr class="separator:aabfdc679775d360edde26ed9082c01e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae373a74bfc3c95094fc007aa4c06664b" id="r_ae373a74bfc3c95094fc007aa4c06664b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae373a74bfc3c95094fc007aa4c06664b">draw_into</a> (sf::RenderWindow &amp;m_window) override</td></tr>
+<tr class="separator:ae373a74bfc3c95094fc007aa4c06664b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd2b9bb0448bdfb1e16ba490e0e37fb0" id="r_abd2b9bb0448bdfb1e16ba490e0e37fb0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#abd2b9bb0448bdfb1e16ba490e0e37fb0">enter</a> (<a class="el" href="class_i_entity.html">IEntity</a> *entity) override</td></tr>
+<tr class="separator:abd2b9bb0448bdfb1e16ba490e0e37fb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p>стена, которая хранит в себе информацию о том в какой комнате находится </p>
+</div><h2 class="groupheader">Методы</h2>
+<a id="ae373a74bfc3c95094fc007aa4c06664b" name="ae373a74bfc3c95094fc007aa4c06664b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae373a74bfc3c95094fc007aa4c06664b">&#9670;&#160;</a></span>draw_into()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Wall::draw_into </td>
+          <td>(</td>
+          <td class="paramtype">sf::RenderWindow &amp;</td>          <td class="paramname"><span class="paramname"><em>m_window</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="struct_i_drawable.html">IDrawable</a>.</p>
+
+</div>
+</div>
+<a id="abd2b9bb0448bdfb1e16ba490e0e37fb0" name="abd2b9bb0448bdfb1e16ba490e0e37fb0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abd2b9bb0448bdfb1e16ba490e0e37fb0">&#9670;&#160;</a></span>enter()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Wall::enter </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="class_i_entity.html">IEntity</a> *</td>          <td class="paramname"><span class="paramname"><em>entity</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="class_i_room_side.html">IRoomSide</a>.</p>
+
+</div>
+</div>
+<a id="aabfdc679775d360edde26ed9082c01e7" name="aabfdc679775d360edde26ed9082c01e7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aabfdc679775d360edde26ed9082c01e7">&#9670;&#160;</a></span>prepare_for_drawing()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Wall::prepare_for_drawing </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="struct_i_preparable.html">IPreparable</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Drawable/Maze/<a class="el" href="_maze_8h_source.html">Maze.h</a></li>
+<li>source/application/Drawable/Maze/<b>Maze.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_wall.html">Wall</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_wall.png b/assets/docs/html/class_wall.png
new file mode 100644
index 0000000000000000000000000000000000000000..7c24078cb00fbd1667455aa866da5ecd0fff8688
Binary files /dev/null and b/assets/docs/html/class_wall.png differ
diff --git a/assets/docs/html/class_win_game-members.html b/assets/docs/html/class_win_game-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..7ef3e8a7ff8527d6bf68e1b3b75cc84da91bae2e
--- /dev/null
+++ b/assets/docs/html/class_win_game-members.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_win_game.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">WinGame Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_win_game.html">WinGame</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>add_observer</b>(IObserver *observer) (определено в <a class="el" href="class_i_game_event.html">IGameEvent</a>)</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>handle</b>(GameContext *context) override (определено в <a class="el" href="class_win_game.html">WinGame</a>)</td><td class="entry"><a class="el" href="class_win_game.html">WinGame</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>notify</b>() const (определено в <a class="el" href="class_i_game_event.html">IGameEvent</a>)</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">~IGameEvent</a>()=default</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_win_game.html b/assets/docs/html/class_win_game.html
new file mode 100644
index 0000000000000000000000000000000000000000..090195474ddda054cd1fdac2e8044bf4558c5304
--- /dev/null
+++ b/assets/docs/html/class_win_game.html
@@ -0,0 +1,185 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс WinGame</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_win_game.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_win_game-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс WinGame</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="_i_game_event_8h_source.html">IGameEvent.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:WinGame:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_win_game.png" usemap="#WinGame_map" alt=""/>
+  <map id="WinGame_map" name="WinGame_map">
+<area href="class_i_game_event.html" title="Абстрактрый класс для различных игровых событий" alt="IGameEvent" shape="rect" coords="0,0,79,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a21ca68898147bb00b749257758ed58b6" id="r_a21ca68898147bb00b749257758ed58b6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a21ca68898147bb00b749257758ed58b6">handle</a> (<a class="el" href="struct_game_context.html">GameContext</a> *context) override</td></tr>
+<tr class="separator:a21ca68898147bb00b749257758ed58b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_i_game_event"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_i_game_event')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_i_game_event.html">IGameEvent</a></td></tr>
+<tr class="memitem:ae84f5f2b3d3bd7834e334c4e6fcde711 inherit pub_methods_class_i_game_event" id="r_ae84f5f2b3d3bd7834e334c4e6fcde711"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">~IGameEvent</a> ()=default</td></tr>
+<tr class="separator:ae84f5f2b3d3bd7834e334c4e6fcde711 inherit pub_methods_class_i_game_event"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b231dafdf4bdbc98f7d75b5205a8b99 inherit pub_methods_class_i_game_event" id="r_a6b231dafdf4bdbc98f7d75b5205a8b99"><td class="memItemLeft" align="right" valign="top">
+void&#160;</td><td class="memItemRight" valign="bottom"><b>add_observer</b> (<a class="el" href="class_i_observer.html">IObserver</a> *observer)</td></tr>
+<tr class="separator:a6b231dafdf4bdbc98f7d75b5205a8b99 inherit pub_methods_class_i_game_event"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Дополнительные унаследованные члены</h2></td></tr>
+<tr class="inherit_header pro_methods_class_i_game_event"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_methods_class_i_game_event')"><img src="closed.png" alt="-"/>&#160;Защищенные члены унаследованные от <a class="el" href="class_i_game_event.html">IGameEvent</a></td></tr>
+<tr class="memitem:a1bc7533cd09ababa60363e5afbb7e787 inherit pro_methods_class_i_game_event" id="r_a1bc7533cd09ababa60363e5afbb7e787"><td class="memItemLeft" align="right" valign="top">
+void&#160;</td><td class="memItemRight" valign="bottom"><b>notify</b> () const</td></tr>
+<tr class="separator:a1bc7533cd09ababa60363e5afbb7e787 inherit pro_methods_class_i_game_event"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p>@dbrief Событие, которое меняет состояние игры на WIN </p>
+</div><h2 class="groupheader">Методы</h2>
+<a id="a21ca68898147bb00b749257758ed58b6" name="a21ca68898147bb00b749257758ed58b6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a21ca68898147bb00b749257758ed58b6">&#9670;&#160;</a></span>handle()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void WinGame::handle </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="struct_game_context.html">GameContext</a> *</td>          <td class="paramname"><span class="paramname"><em>context</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="class_i_game_event.html">IGameEvent</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Event/<a class="el" href="_i_game_event_8h_source.html">IGameEvent.h</a></li>
+<li>source/application/Event/<b>IGameEvent.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_win_game.html">WinGame</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/class_win_game.png b/assets/docs/html/class_win_game.png
new file mode 100644
index 0000000000000000000000000000000000000000..305ce601693a088c3669ad625bf65b7b49e6920e
Binary files /dev/null and b/assets/docs/html/class_win_game.png differ
diff --git a/assets/docs/html/classes.html b/assets/docs/html/classes.html
new file mode 100644
index 0000000000000000000000000000000000000000..49a500fce1c9a02d1f174793397a02ef63d4d593
--- /dev/null
+++ b/assets/docs/html/classes.html
@@ -0,0 +1,165 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Алфавитный указатель классов</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('classes.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Алфавитный указатель классов</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="qindex"><a class="qindex" href="#letter_A">A</a>&#160;|&#160;<a class="qindex" href="#letter_B">B</a>&#160;|&#160;<a class="qindex" href="#letter_C">C</a>&#160;|&#160;<a class="qindex" href="#letter_D">D</a>&#160;|&#160;<a class="qindex" href="#letter_E">E</a>&#160;|&#160;<a class="qindex" href="#letter_F">F</a>&#160;|&#160;<a class="qindex" href="#letter_G">G</a>&#160;|&#160;<a class="qindex" href="#letter_I">I</a>&#160;|&#160;<a class="qindex" href="#letter_L">L</a>&#160;|&#160;<a class="qindex" href="#letter_M">M</a>&#160;|&#160;<a class="qindex" href="#letter_P">P</a>&#160;|&#160;<a class="qindex" href="#letter_R">R</a>&#160;|&#160;<a class="qindex" href="#letter_S">S</a>&#160;|&#160;<a class="qindex" href="#letter_T">T</a>&#160;|&#160;<a class="qindex" href="#letter_W">W</a></div>
+<div class="classindex">
+<dl class="classindex even">
+<dt class="alphachar"><a id="letter_A" name="letter_A">A</a></dt>
+<dd><a class="el" href="class_application.html">Application</a></dd></dl>
+<dl class="classindex odd">
+<dt class="alphachar"><a id="letter_B" name="letter_B">B</a></dt>
+<dd><a class="el" href="class_background_texture.html">BackgroundTexture</a></dd><dd><a class="el" href="class_button.html">Button</a></dd></dl>
+<dl class="classindex even">
+<dt class="alphachar"><a id="letter_C" name="letter_C">C</a></dt>
+<dd><a class="el" href="class_change_state_command.html">ChangeStateCommand</a></dd><dd><a class="el" href="class_choose_button.html">ChooseButton</a></dd><dd><a class="el" href="class_common_builder.html">CommonBuilder</a></dd><dd><a class="el" href="class_complex_builder.html">ComplexBuilder</a></dd><dd><a class="el" href="class_context_manager.html">ContextManager</a></dd></dl>
+<dl class="classindex odd">
+<dt class="alphachar"><a id="letter_D" name="letter_D">D</a></dt>
+<dd><a class="el" href="class_delete_static_entity.html">DeleteStaticEntity</a></dd></dl>
+<dl class="classindex even">
+<dt class="alphachar"><a id="letter_E" name="letter_E">E</a></dt>
+<dd><a class="el" href="class_enemy.html">Enemy</a></dd><dd><a class="el" href="class_enemy_texture.html">EnemyTexture</a></dd><dd><a class="el" href="class_exit_command.html">ExitCommand</a></dd><dd><a class="el" href="class_exit_state.html">ExitState</a></dd></dl>
+<dl class="classindex odd">
+<dt class="alphachar"><a id="letter_F" name="letter_F">F</a></dt>
+<dd><a class="el" href="class_food.html">Food</a></dd><dd><a class="el" href="class_food_texture.html">FoodTexture</a></dd></dl>
+<dl class="classindex even">
+<dt class="alphachar"><a id="letter_G" name="letter_G">G</a></dt>
+<dd><a class="el" href="class_game_builder_director.html">GameBuilderDirector</a></dd><dd><a class="el" href="class_game_command.html">GameCommand</a></dd><dd><a class="el" href="struct_game_context.html">GameContext</a></dd><dd><a class="el" href="class_game_state.html">GameState</a></dd></dl>
+<dl class="classindex odd">
+<dt class="alphachar"><a id="letter_I" name="letter_I">I</a></dt>
+<dd><a class="el" href="struct_i_drawable.html">IDrawable</a></dd><dd><a class="el" href="struct_i_dynamic_entity.html">IDynamicEntity</a></dd><dd><a class="el" href="class_i_entity.html">IEntity</a></dd><dd><a class="el" href="class_i_game_builder.html">IGameBuilder</a></dd><dd><a class="el" href="class_i_game_event.html">IGameEvent</a></dd><dd><a class="el" href="class_i_observer.html">IObserver</a></dd><dd><a class="el" href="struct_i_preparable.html">IPreparable</a></dd><dd><a class="el" href="class_i_room_side.html">IRoomSide</a></dd><dd><a class="el" href="class_i_select_command.html">ISelectCommand</a></dd><dd><a class="el" href="class_i_state.html">IState</a></dd><dd><a class="el" href="struct_i_state_manager.html">IStateManager</a></dd><dd><a class="el" href="struct_i_static_entity.html">IStaticEntity</a></dd><dd><a class="el" href="class_i_visitable.html">IVisitable</a></dd><dd><a class="el" href="class_i_visitor.html">IVisitor</a></dd><dd><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></dd></dl>
+<dl class="classindex even">
+<dt class="alphachar"><a id="letter_L" name="letter_L">L</a></dt>
+<dd><a class="el" href="class_lost_game.html">LostGame</a></dd></dl>
+<dl class="classindex odd">
+<dt class="alphachar"><a id="letter_M" name="letter_M">M</a></dt>
+<dd><a class="el" href="class_maze.html">Maze</a></dd><dd><a class="el" href="class_menu.html">Menu</a></dd><dd><a class="el" href="class_menu_game.html">MenuGame</a></dd><dd><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></dd><dd><a class="el" href="class_my_texture.html">MyTexture</a></dd></dl>
+<dl class="classindex even">
+<dt class="alphachar"><a id="letter_P" name="letter_P">P</a></dt>
+<dd><a class="el" href="class_pacman.html">Pacman</a></dd><dd><a class="el" href="class_pacman_texture.html">PacmanTexture</a></dd><dd><a class="el" href="class_pacman_texture2.html">PacmanTexture2</a></dd><dd><a class="el" href="class_pass.html">Pass</a></dd></dl>
+<dl class="classindex odd">
+<dt class="alphachar"><a id="letter_R" name="letter_R">R</a></dt>
+<dd><a class="el" href="class_room.html">Room</a></dd></dl>
+<dl class="classindex even">
+<dt class="alphachar"><a id="letter_S" name="letter_S">S</a></dt>
+<dd><a class="el" href="class_score_count.html">ScoreCount</a></dd><dd><a class="el" href="class_screamer_composite_event.html">ScreamerCompositeEvent</a></dd><dd><a class="el" href="struct_screamer_event.html">ScreamerEvent</a></dd><dd><a class="el" href="struct_select_state.html">SelectState</a></dd><dd><a class="el" href="class_simple_builder.html">SimpleBuilder</a></dd></dl>
+<dl class="classindex odd">
+<dt class="alphachar"><a id="letter_T" name="letter_T">T</a></dt>
+<dd><a class="el" href="struct_theme_colors.html">ThemeColors</a></dd><dd><a class="el" href="class_theme_manager.html">ThemeManager</a></dd></dl>
+<dl class="classindex even">
+<dt class="alphachar"><a id="letter_W" name="letter_W">W</a></dt>
+<dd><a class="el" href="class_wall.html">Wall</a></dd><dd><a class="el" href="class_win_game.html">WinGame</a></dd></dl>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/clipboard.js b/assets/docs/html/clipboard.js
new file mode 100644
index 0000000000000000000000000000000000000000..3617e9b029677cef9287b494a6be6243e5c473c0
--- /dev/null
+++ b/assets/docs/html/clipboard.js
@@ -0,0 +1,61 @@
+/**
+
+The code below is based on the Doxygen Awesome project, see
+https://github.com/jothepro/doxygen-awesome-css
+
+MIT License
+
+Copyright (c) 2021 - 2022 jothepro
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+*/
+
+let clipboard_title = "Скопировать в буфер обмена"
+let clipboard_icon = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"><path fill="#888" d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"/></svg>`
+let clipboard_successIcon = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41L9 16.17z"/></svg>`
+let clipboard_successDuration = 1000
+
+$(function() {
+  if(navigator.clipboard) {
+    const fragments = document.getElementsByClassName("fragment")
+    for(const fragment of fragments) {
+      const clipboard_div = document.createElement("div")
+      clipboard_div.classList.add("clipboard")
+      clipboard_div.innerHTML = clipboard_icon
+      clipboard_div.title = clipboard_title
+      $(clipboard_div).click(function() {
+        const content = this.parentNode.cloneNode(true)
+        // filter out line number and folded fragments from file listings
+        content.querySelectorAll(".lineno, .ttc, .foldclosed").forEach((node) => { node.remove() })
+        let text = content.textContent
+        // remove trailing newlines and trailing spaces from empty lines
+        text = text.replace(/^\s*\n/gm,'\n').replace(/\n*$/,'')
+        navigator.clipboard.writeText(text);
+        this.classList.add("success")
+        this.innerHTML = clipboard_successIcon
+        window.setTimeout(() => { // switch back to normal icon after timeout
+            this.classList.remove("success")
+            this.innerHTML = clipboard_icon
+        }, clipboard_successDuration);
+      })
+      fragment.insertBefore(clipboard_div, fragment.firstChild)
+    }
+  }
+})
diff --git a/assets/docs/html/closed.png b/assets/docs/html/closed.png
new file mode 100644
index 0000000000000000000000000000000000000000..98cc2c909da37a6df914fbf67780eebd99c597f5
Binary files /dev/null and b/assets/docs/html/closed.png differ
diff --git a/assets/docs/html/cookie.js b/assets/docs/html/cookie.js
new file mode 100644
index 0000000000000000000000000000000000000000..53ad21d98119a04bd7f6e558e6a4a04364e2a1cb
--- /dev/null
+++ b/assets/docs/html/cookie.js
@@ -0,0 +1,58 @@
+/*!
+ Cookie helper functions
+ Copyright (c) 2023 Dimitri van Heesch
+ Released under MIT license.
+*/
+let Cookie = {
+  cookie_namespace: 'doxygen_',
+
+  readSetting(cookie,defVal) {
+    if (window.chrome) {
+      const val = localStorage.getItem(this.cookie_namespace+cookie) ||
+                  sessionStorage.getItem(this.cookie_namespace+cookie);
+      if (val) return val;
+    } else {
+      let myCookie = this.cookie_namespace+cookie+"=";
+      if (document.cookie) {
+        const index = document.cookie.indexOf(myCookie);
+        if (index != -1) {
+          const valStart = index + myCookie.length;
+          let valEnd = document.cookie.indexOf(";", valStart);
+          if (valEnd == -1) {
+            valEnd = document.cookie.length;
+          }
+          return document.cookie.substring(valStart, valEnd);
+        }
+      }
+    }
+    return defVal;
+  },
+
+  writeSetting(cookie,val,days=10*365) { // default days='forever', 0=session cookie, -1=delete
+    if (window.chrome) {
+      if (days==0) {
+        sessionStorage.setItem(this.cookie_namespace+cookie,val);
+      } else {
+        localStorage.setItem(this.cookie_namespace+cookie,val);
+      }
+    } else {
+      let date = new Date();
+      date.setTime(date.getTime()+(days*24*60*60*1000));
+      const expiration = days!=0 ? "expires="+date.toGMTString()+";" : "";
+      document.cookie = this.cookie_namespace + cookie + "=" +
+                        val + "; SameSite=Lax;" + expiration + "path=/";
+    }
+  },
+
+  eraseSetting(cookie) {
+    if (window.chrome) {
+      if (localStorage.getItem(this.cookie_namespace+cookie)) {
+        localStorage.removeItem(this.cookie_namespace+cookie);
+      } else if (sessionStorage.getItem(this.cookie_namespace+cookie)) {
+        sessionStorage.removeItem(this.cookie_namespace+cookie);
+      }
+    } else {
+      this.writeSetting(cookie,'',-1);
+    }
+  },
+}
diff --git a/assets/docs/html/dir_059b8d327d09617c411023af730a36c0.html b/assets/docs/html/dir_059b8d327d09617c411023af730a36c0.html
new file mode 100644
index 0000000000000000000000000000000000000000..acba3d1d4a4215f962b363f0740845b1c7918595
--- /dev/null
+++ b/assets/docs/html/dir_059b8d327d09617c411023af730a36c0.html
@@ -0,0 +1,138 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Содержание директории source/application</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('dir_059b8d327d09617c411023af730a36c0.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Содержание директории application</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="subdirs" name="subdirs"></a>
+Директории</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><span class="iconfclosed"></span>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_f4241d05c30ca25826da7a6464eec250.html">App</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><span class="iconfclosed"></span>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_5ac36eadb58257c11ffd1fe0c36f8d44.html">Assets</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><span class="iconfclosed"></span>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.html">BobBuilder</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><span class="iconfclosed"></span>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_592f7e24f8e0510a8dca7f53521ecb86.html">Context</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><span class="iconfclosed"></span>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_0620867b96a9d6681889b0cd51382a82.html">Drawable</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><span class="iconfclosed"></span>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_35461bf8feb23080c5804a15bfe2f4aa.html">Event</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><span class="iconfclosed"></span>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_dd6fd865ae52f5fee8c57e83b77289db.html">SelectCommand</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><span class="iconfclosed"></span>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_eb37150066857c324af7acaa5f9b7e6c.html">State</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/dir_059b8d327d09617c411023af730a36c0.js b/assets/docs/html/dir_059b8d327d09617c411023af730a36c0.js
new file mode 100644
index 0000000000000000000000000000000000000000..53d7dea62ef63bad06b68a79b0645e044c221f54
--- /dev/null
+++ b/assets/docs/html/dir_059b8d327d09617c411023af730a36c0.js
@@ -0,0 +1,11 @@
+var dir_059b8d327d09617c411023af730a36c0 =
+[
+    [ "App", "dir_f4241d05c30ca25826da7a6464eec250.html", "dir_f4241d05c30ca25826da7a6464eec250" ],
+    [ "Assets", "dir_5ac36eadb58257c11ffd1fe0c36f8d44.html", "dir_5ac36eadb58257c11ffd1fe0c36f8d44" ],
+    [ "BobBuilder", "dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.html", "dir_e555ea8018a5abfa1e2fbc7e0b1e63c9" ],
+    [ "Context", "dir_592f7e24f8e0510a8dca7f53521ecb86.html", "dir_592f7e24f8e0510a8dca7f53521ecb86" ],
+    [ "Drawable", "dir_0620867b96a9d6681889b0cd51382a82.html", "dir_0620867b96a9d6681889b0cd51382a82" ],
+    [ "Event", "dir_35461bf8feb23080c5804a15bfe2f4aa.html", "dir_35461bf8feb23080c5804a15bfe2f4aa" ],
+    [ "SelectCommand", "dir_dd6fd865ae52f5fee8c57e83b77289db.html", "dir_dd6fd865ae52f5fee8c57e83b77289db" ],
+    [ "State", "dir_eb37150066857c324af7acaa5f9b7e6c.html", "dir_eb37150066857c324af7acaa5f9b7e6c" ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/dir_0620867b96a9d6681889b0cd51382a82.html b/assets/docs/html/dir_0620867b96a9d6681889b0cd51382a82.html
new file mode 100644
index 0000000000000000000000000000000000000000..92508468a6ab4ba5448a0daaaed400005e1ab2cb
--- /dev/null
+++ b/assets/docs/html/dir_0620867b96a9d6681889b0cd51382a82.html
@@ -0,0 +1,131 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Содержание директории source/application/Drawable</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('dir_0620867b96a9d6681889b0cd51382a82.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Содержание директории Drawable</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="subdirs" name="subdirs"></a>
+Директории</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><span class="iconfclosed"></span>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_36512145787243429e2d8387a78e16b9.html">Entity</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><span class="iconfclosed"></span>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_dbd25d32f158f8fe0ac7baf637feb24d.html">Maze</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="files" name="files"></a>
+Файлы</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_i_drawable_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>IDrawable.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_0620867b96a9d6681889b0cd51382a82.html">Drawable</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/dir_0620867b96a9d6681889b0cd51382a82.js b/assets/docs/html/dir_0620867b96a9d6681889b0cd51382a82.js
new file mode 100644
index 0000000000000000000000000000000000000000..0dd83e827501bdee7a5c3f120b788d6304ec061a
--- /dev/null
+++ b/assets/docs/html/dir_0620867b96a9d6681889b0cd51382a82.js
@@ -0,0 +1,7 @@
+var dir_0620867b96a9d6681889b0cd51382a82 =
+[
+    [ "DrawMenu", "dir_1ec01c3d118a92a59cb64fdd508b6eff.html", "dir_1ec01c3d118a92a59cb64fdd508b6eff" ],
+    [ "Entity", "dir_36512145787243429e2d8387a78e16b9.html", "dir_36512145787243429e2d8387a78e16b9" ],
+    [ "Maze", "dir_dbd25d32f158f8fe0ac7baf637feb24d.html", "dir_dbd25d32f158f8fe0ac7baf637feb24d" ],
+    [ "IDrawable.h", "_i_drawable_8h_source.html", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/dir_1ec01c3d118a92a59cb64fdd508b6eff.html b/assets/docs/html/dir_1ec01c3d118a92a59cb64fdd508b6eff.html
new file mode 100644
index 0000000000000000000000000000000000000000..32823c28556877e53e9d01ca9519ea372358e6c5
--- /dev/null
+++ b/assets/docs/html/dir_1ec01c3d118a92a59cb64fdd508b6eff.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Содержание директории source/application/Drawable/DrawMenu</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('dir_1ec01c3d118a92a59cb64fdd508b6eff.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Содержание директории DrawMenu</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="subdirs" name="subdirs"></a>
+Директории</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><span class="iconfclosed"></span>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_e31f3142f437cc9199f6e7da6a0351a8.html">Button</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><span class="iconfclosed"></span>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_a2a010966b562bcf41b620d047d98a69.html">Menu</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_0620867b96a9d6681889b0cd51382a82.html">Drawable</a></li><li class="navelem"><a class="el" href="dir_1ec01c3d118a92a59cb64fdd508b6eff.html">DrawMenu</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/dir_1ec01c3d118a92a59cb64fdd508b6eff.js b/assets/docs/html/dir_1ec01c3d118a92a59cb64fdd508b6eff.js
new file mode 100644
index 0000000000000000000000000000000000000000..f5f62d0ffdf4b957970c6f57cbd93bdf9574905b
--- /dev/null
+++ b/assets/docs/html/dir_1ec01c3d118a92a59cb64fdd508b6eff.js
@@ -0,0 +1,5 @@
+var dir_1ec01c3d118a92a59cb64fdd508b6eff =
+[
+    [ "Button", "dir_e31f3142f437cc9199f6e7da6a0351a8.html", "dir_e31f3142f437cc9199f6e7da6a0351a8" ],
+    [ "Menu", "dir_a2a010966b562bcf41b620d047d98a69.html", "dir_a2a010966b562bcf41b620d047d98a69" ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/dir_35461bf8feb23080c5804a15bfe2f4aa.html b/assets/docs/html/dir_35461bf8feb23080c5804a15bfe2f4aa.html
new file mode 100644
index 0000000000000000000000000000000000000000..d9ebf571e97c410335b83fedcc20334743ee5d58
--- /dev/null
+++ b/assets/docs/html/dir_35461bf8feb23080c5804a15bfe2f4aa.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Содержание директории source/application/Event</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('dir_35461bf8feb23080c5804a15bfe2f4aa.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Содержание директории Event</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="files" name="files"></a>
+Файлы</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_i_game_event_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>IGameEvent.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_35461bf8feb23080c5804a15bfe2f4aa.html">Event</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/dir_35461bf8feb23080c5804a15bfe2f4aa.js b/assets/docs/html/dir_35461bf8feb23080c5804a15bfe2f4aa.js
new file mode 100644
index 0000000000000000000000000000000000000000..dfbf7cacb1f182d0f34cbb27614b6dc2ec49e958
--- /dev/null
+++ b/assets/docs/html/dir_35461bf8feb23080c5804a15bfe2f4aa.js
@@ -0,0 +1,4 @@
+var dir_35461bf8feb23080c5804a15bfe2f4aa =
+[
+    [ "IGameEvent.h", "_i_game_event_8h_source.html", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/dir_36512145787243429e2d8387a78e16b9.html b/assets/docs/html/dir_36512145787243429e2d8387a78e16b9.html
new file mode 100644
index 0000000000000000000000000000000000000000..e144359b6cd67b78945b086017750d6c990ce215
--- /dev/null
+++ b/assets/docs/html/dir_36512145787243429e2d8387a78e16b9.html
@@ -0,0 +1,130 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Содержание директории source/application/Drawable/Entity</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('dir_36512145787243429e2d8387a78e16b9.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Содержание директории Entity</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="files" name="files"></a>
+Файлы</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_i_entity_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>IEntity.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_i_observer_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>IObserver.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_my_texture_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>MyTexture.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_pacman_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>Pacman.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_0620867b96a9d6681889b0cd51382a82.html">Drawable</a></li><li class="navelem"><a class="el" href="dir_36512145787243429e2d8387a78e16b9.html">Entity</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/dir_36512145787243429e2d8387a78e16b9.js b/assets/docs/html/dir_36512145787243429e2d8387a78e16b9.js
new file mode 100644
index 0000000000000000000000000000000000000000..b557660d26ecdc46180004de5c32c61944c24931
--- /dev/null
+++ b/assets/docs/html/dir_36512145787243429e2d8387a78e16b9.js
@@ -0,0 +1,7 @@
+var dir_36512145787243429e2d8387a78e16b9 =
+[
+    [ "IEntity.h", "_i_entity_8h_source.html", null ],
+    [ "IObserver.h", "_i_observer_8h_source.html", null ],
+    [ "MyTexture.h", "_my_texture_8h_source.html", null ],
+    [ "Pacman.h", "_pacman_8h_source.html", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/dir_592f7e24f8e0510a8dca7f53521ecb86.html b/assets/docs/html/dir_592f7e24f8e0510a8dca7f53521ecb86.html
new file mode 100644
index 0000000000000000000000000000000000000000..92030523708602fab8a7de374c4ca8bf43c43ea7
--- /dev/null
+++ b/assets/docs/html/dir_592f7e24f8e0510a8dca7f53521ecb86.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Содержание директории source/application/Context</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('dir_592f7e24f8e0510a8dca7f53521ecb86.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Содержание директории Context</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="files" name="files"></a>
+Файлы</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_context_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>Context.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_592f7e24f8e0510a8dca7f53521ecb86.html">Context</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/dir_592f7e24f8e0510a8dca7f53521ecb86.js b/assets/docs/html/dir_592f7e24f8e0510a8dca7f53521ecb86.js
new file mode 100644
index 0000000000000000000000000000000000000000..1cc69a8589783b78b2910f55b8996844a2fec317
--- /dev/null
+++ b/assets/docs/html/dir_592f7e24f8e0510a8dca7f53521ecb86.js
@@ -0,0 +1,4 @@
+var dir_592f7e24f8e0510a8dca7f53521ecb86 =
+[
+    [ "Context.h", "_context_8h_source.html", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/dir_5ac36eadb58257c11ffd1fe0c36f8d44.html b/assets/docs/html/dir_5ac36eadb58257c11ffd1fe0c36f8d44.html
new file mode 100644
index 0000000000000000000000000000000000000000..3024da58c2e5938bf92d1245fdcfa68a2f3a0bba
--- /dev/null
+++ b/assets/docs/html/dir_5ac36eadb58257c11ffd1fe0c36f8d44.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Содержание директории source/application/Assets</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('dir_5ac36eadb58257c11ffd1fe0c36f8d44.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Содержание директории Assets</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="files" name="files"></a>
+Файлы</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_texture___sound_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>Texture_Sound.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_5ac36eadb58257c11ffd1fe0c36f8d44.html">Assets</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/dir_5ac36eadb58257c11ffd1fe0c36f8d44.js b/assets/docs/html/dir_5ac36eadb58257c11ffd1fe0c36f8d44.js
new file mode 100644
index 0000000000000000000000000000000000000000..b255de8342d19ee8a381eb816cceaf23b8bbfd13
--- /dev/null
+++ b/assets/docs/html/dir_5ac36eadb58257c11ffd1fe0c36f8d44.js
@@ -0,0 +1,4 @@
+var dir_5ac36eadb58257c11ffd1fe0c36f8d44 =
+[
+    [ "Texture_Sound.h", "_texture___sound_8h_source.html", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/dir_a2a010966b562bcf41b620d047d98a69.html b/assets/docs/html/dir_a2a010966b562bcf41b620d047d98a69.html
new file mode 100644
index 0000000000000000000000000000000000000000..98bb1011a77b9782f3bb79b897ad0193fac0ff5d
--- /dev/null
+++ b/assets/docs/html/dir_a2a010966b562bcf41b620d047d98a69.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Содержание директории source/application/Drawable/DrawMenu/Menu</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('dir_a2a010966b562bcf41b620d047d98a69.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Содержание директории Menu</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="files" name="files"></a>
+Файлы</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_menu_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>Menu.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_menu_in_game_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>MenuInGame.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_0620867b96a9d6681889b0cd51382a82.html">Drawable</a></li><li class="navelem"><a class="el" href="dir_1ec01c3d118a92a59cb64fdd508b6eff.html">DrawMenu</a></li><li class="navelem"><a class="el" href="dir_a2a010966b562bcf41b620d047d98a69.html">Menu</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/dir_a2a010966b562bcf41b620d047d98a69.js b/assets/docs/html/dir_a2a010966b562bcf41b620d047d98a69.js
new file mode 100644
index 0000000000000000000000000000000000000000..26725b7051d861c82ebdcdf9c29b4b0c898c839a
--- /dev/null
+++ b/assets/docs/html/dir_a2a010966b562bcf41b620d047d98a69.js
@@ -0,0 +1,5 @@
+var dir_a2a010966b562bcf41b620d047d98a69 =
+[
+    [ "Menu.h", "_menu_8h_source.html", null ],
+    [ "MenuInGame.h", "_menu_in_game_8h_source.html", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html b/assets/docs/html/dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html
new file mode 100644
index 0000000000000000000000000000000000000000..59a864b25ba0d8c7cc573913632a181782b36f94
--- /dev/null
+++ b/assets/docs/html/dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html
@@ -0,0 +1,118 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Содержание директории source</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Содержание директории source</div></div>
+</div><!--header-->
+<div class="contents">
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.js b/assets/docs/html/dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.js
new file mode 100644
index 0000000000000000000000000000000000000000..e215659136d9d7988eabd70081fa9abb8ea4c378
--- /dev/null
+++ b/assets/docs/html/dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.js
@@ -0,0 +1,4 @@
+var dir_b2f33c71d4aa5e7af42a1ca61ff5af1b =
+[
+    [ "application", "dir_059b8d327d09617c411023af730a36c0.html", "dir_059b8d327d09617c411023af730a36c0" ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/dir_dbd25d32f158f8fe0ac7baf637feb24d.html b/assets/docs/html/dir_dbd25d32f158f8fe0ac7baf637feb24d.html
new file mode 100644
index 0000000000000000000000000000000000000000..7d838e12f48965ea68d07c683dbe1c417eb28a04
--- /dev/null
+++ b/assets/docs/html/dir_dbd25d32f158f8fe0ac7baf637feb24d.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Содержание директории source/application/Drawable/Maze</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('dir_dbd25d32f158f8fe0ac7baf637feb24d.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Содержание директории Maze</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="files" name="files"></a>
+Файлы</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_maze_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>Maze.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_0620867b96a9d6681889b0cd51382a82.html">Drawable</a></li><li class="navelem"><a class="el" href="dir_dbd25d32f158f8fe0ac7baf637feb24d.html">Maze</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/dir_dbd25d32f158f8fe0ac7baf637feb24d.js b/assets/docs/html/dir_dbd25d32f158f8fe0ac7baf637feb24d.js
new file mode 100644
index 0000000000000000000000000000000000000000..23f7d5fb0a2d8520ef2b0570b332ea034e81c721
--- /dev/null
+++ b/assets/docs/html/dir_dbd25d32f158f8fe0ac7baf637feb24d.js
@@ -0,0 +1,4 @@
+var dir_dbd25d32f158f8fe0ac7baf637feb24d =
+[
+    [ "Maze.h", "_maze_8h_source.html", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/dir_dd6fd865ae52f5fee8c57e83b77289db.html b/assets/docs/html/dir_dd6fd865ae52f5fee8c57e83b77289db.html
new file mode 100644
index 0000000000000000000000000000000000000000..8872ca360107a86e9965f7b0aaed3f6daae36fbe
--- /dev/null
+++ b/assets/docs/html/dir_dd6fd865ae52f5fee8c57e83b77289db.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Содержание директории source/application/SelectCommand</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('dir_dd6fd865ae52f5fee8c57e83b77289db.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Содержание директории SelectCommand</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="files" name="files"></a>
+Файлы</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_i_select_command_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>ISelectCommand.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_dd6fd865ae52f5fee8c57e83b77289db.html">SelectCommand</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/dir_dd6fd865ae52f5fee8c57e83b77289db.js b/assets/docs/html/dir_dd6fd865ae52f5fee8c57e83b77289db.js
new file mode 100644
index 0000000000000000000000000000000000000000..a1569248db7e90e7e7956970c55dd39184da6491
--- /dev/null
+++ b/assets/docs/html/dir_dd6fd865ae52f5fee8c57e83b77289db.js
@@ -0,0 +1,4 @@
+var dir_dd6fd865ae52f5fee8c57e83b77289db =
+[
+    [ "ISelectCommand.h", "_i_select_command_8h_source.html", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/dir_e31f3142f437cc9199f6e7da6a0351a8.html b/assets/docs/html/dir_e31f3142f437cc9199f6e7da6a0351a8.html
new file mode 100644
index 0000000000000000000000000000000000000000..ee5e111213822fa77afb1b3f8a7f5f5d2a6f73d1
--- /dev/null
+++ b/assets/docs/html/dir_e31f3142f437cc9199f6e7da6a0351a8.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Содержание директории source/application/Drawable/DrawMenu/Button</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('dir_e31f3142f437cc9199f6e7da6a0351a8.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Содержание директории Button</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="files" name="files"></a>
+Файлы</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_button_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>Button.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_0620867b96a9d6681889b0cd51382a82.html">Drawable</a></li><li class="navelem"><a class="el" href="dir_1ec01c3d118a92a59cb64fdd508b6eff.html">DrawMenu</a></li><li class="navelem"><a class="el" href="dir_e31f3142f437cc9199f6e7da6a0351a8.html">Button</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/dir_e31f3142f437cc9199f6e7da6a0351a8.js b/assets/docs/html/dir_e31f3142f437cc9199f6e7da6a0351a8.js
new file mode 100644
index 0000000000000000000000000000000000000000..fbd98e46529297b75c83a748a874c6a77b48dcdf
--- /dev/null
+++ b/assets/docs/html/dir_e31f3142f437cc9199f6e7da6a0351a8.js
@@ -0,0 +1,4 @@
+var dir_e31f3142f437cc9199f6e7da6a0351a8 =
+[
+    [ "Button.h", "_button_8h_source.html", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.html b/assets/docs/html/dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.html
new file mode 100644
index 0000000000000000000000000000000000000000..9189f73897e3f81227f7edf34abc4711b8c911ca
--- /dev/null
+++ b/assets/docs/html/dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.html
@@ -0,0 +1,128 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Содержание директории source/application/BobBuilder</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Содержание директории BobBuilder</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="files" name="files"></a>
+Файлы</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_bob_builder_director_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>BobBuilderDirector.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_game_builders_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>GameBuilders.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_i_game_builder_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>IGameBuilder.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.html">BobBuilder</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.js b/assets/docs/html/dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.js
new file mode 100644
index 0000000000000000000000000000000000000000..f8ab4486319f00cb2cfa5ba9b34b52c4316dd531
--- /dev/null
+++ b/assets/docs/html/dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.js
@@ -0,0 +1,6 @@
+var dir_e555ea8018a5abfa1e2fbc7e0b1e63c9 =
+[
+    [ "BobBuilderDirector.h", "_bob_builder_director_8h_source.html", null ],
+    [ "GameBuilders.h", "_game_builders_8h_source.html", null ],
+    [ "IGameBuilder.h", "_i_game_builder_8h_source.html", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/dir_eb37150066857c324af7acaa5f9b7e6c.html b/assets/docs/html/dir_eb37150066857c324af7acaa5f9b7e6c.html
new file mode 100644
index 0000000000000000000000000000000000000000..c46b3896bc9b1aa6f68471e5d12d0b5b84478e3a
--- /dev/null
+++ b/assets/docs/html/dir_eb37150066857c324af7acaa5f9b7e6c.html
@@ -0,0 +1,132 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Содержание директории source/application/State</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('dir_eb37150066857c324af7acaa5f9b7e6c.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Содержание директории State</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="files" name="files"></a>
+Файлы</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_game_state_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>GameState.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_i_state_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>IState.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_i_window_keeper_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>IWindowKeeper.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_select_state_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>SelectState.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_theme_manager_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>ThemeManager.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_eb37150066857c324af7acaa5f9b7e6c.html">State</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/dir_eb37150066857c324af7acaa5f9b7e6c.js b/assets/docs/html/dir_eb37150066857c324af7acaa5f9b7e6c.js
new file mode 100644
index 0000000000000000000000000000000000000000..58e364253d13158d71134475e83521feb10f0e21
--- /dev/null
+++ b/assets/docs/html/dir_eb37150066857c324af7acaa5f9b7e6c.js
@@ -0,0 +1,8 @@
+var dir_eb37150066857c324af7acaa5f9b7e6c =
+[
+    [ "GameState.h", "_game_state_8h_source.html", null ],
+    [ "IState.h", "_i_state_8h_source.html", null ],
+    [ "IWindowKeeper.h", "_i_window_keeper_8h_source.html", null ],
+    [ "SelectState.h", "_select_state_8h_source.html", null ],
+    [ "ThemeManager.h", "_theme_manager_8h_source.html", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/dir_f4241d05c30ca25826da7a6464eec250.html b/assets/docs/html/dir_f4241d05c30ca25826da7a6464eec250.html
new file mode 100644
index 0000000000000000000000000000000000000000..7c546543e337e3d066b28beeb1bb851b18a482d8
--- /dev/null
+++ b/assets/docs/html/dir_f4241d05c30ca25826da7a6464eec250.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Содержание директории source/application/App</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('dir_f4241d05c30ca25826da7a6464eec250.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Содержание директории App</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="files" name="files"></a>
+Файлы</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_application_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>Application.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_f4241d05c30ca25826da7a6464eec250.html">App</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/dir_f4241d05c30ca25826da7a6464eec250.js b/assets/docs/html/dir_f4241d05c30ca25826da7a6464eec250.js
new file mode 100644
index 0000000000000000000000000000000000000000..2036321c5de8a3e38b6bdd8d7bbb47ce34ea2e0f
--- /dev/null
+++ b/assets/docs/html/dir_f4241d05c30ca25826da7a6464eec250.js
@@ -0,0 +1,4 @@
+var dir_f4241d05c30ca25826da7a6464eec250 =
+[
+    [ "Application.h", "_application_8h_source.html", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/doc.svg b/assets/docs/html/doc.svg
new file mode 100644
index 0000000000000000000000000000000000000000..0b928a531713b063e737da937bb85a53365a8ec2
--- /dev/null
+++ b/assets/docs/html/doc.svg
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+ "https://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" width="16" height="24" viewBox="0 0 80 60" id="doc" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve">
+<g style="fill:#4665A2">
+<path d="m 14,-1.1445312 c -2.824372,0 -5.1445313,2.320159 -5.1445312,5.1445312 v 72 c 0,2.824372 2.3201592,5.144531 5.1445312,5.144531 h 52 c 2.824372,0 5.144531,-2.320159 5.144531,-5.144531 V 23.699219 a 1.1447968,1.1447968 0 0 0 -0.01563,-0.1875 C 70.977847,22.605363 70.406495,21.99048 70.007812,21.591797 L 48.208984,-0.20898438 C 47.606104,-0.81186474 46.804652,-1.1445313 46,-1.1445312 Z m 1.144531,6.2890624 H 42.855469 V 24 c 0,1.724372 1.420159,3.144531 3.144531,3.144531 H 64.855469 V 74.855469 H 15.144531 Z m 34,4.4179688 L 60.4375,20.855469 H 49.144531 Z"/>
+</g>
+<g style="fill:#D8DFEE;stroke-width:0">
+<path d="M 3.0307167,13.993174 V 7.0307167 h 2.7576792 2.7576792 v 1.8826151 c 0,1.2578262 0.0099,1.9287572 0.029818,2.0216512 0.03884,0.181105 0.168631,0.348218 0.33827,0.43554 l 0.1355017,0.06975 1.9598092,0.0079 1.959809,0.0078 v 4.749829 4.749829 H 8 3.0307167 Z" transform="matrix(5,0,0,5,0,-30)" />
+<path d="M 9.8293515,9.0581469 V 7.9456453 l 1.1058025,1.1055492 c 0.608191,0.6080521 1.105802,1.1086775 1.105802,1.1125015 0,0.0038 -0.497611,0.007 -1.105802,0.007 H 9.8293515 Z" transform="matrix(5,0,0,5,0,-30)" />
+</g>
+</svg>
diff --git a/assets/docs/html/docd.svg b/assets/docs/html/docd.svg
new file mode 100644
index 0000000000000000000000000000000000000000..ac18b27552268ce7e82797636da773a6c5bbc4b8
--- /dev/null
+++ b/assets/docs/html/docd.svg
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+ "https://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" width="16" height="24" viewBox="0 0 80 60" id="doc" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve">
+<g style="fill:#C4CFE5">
+<path d="m 14,-1.1445312 c -2.824372,0 -5.1445313,2.320159 -5.1445312,5.1445312 v 72 c 0,2.824372 2.3201592,5.144531 5.1445312,5.144531 h 52 c 2.824372,0 5.144531,-2.320159 5.144531,-5.144531 V 23.699219 a 1.1447968,1.1447968 0 0 0 -0.01563,-0.1875 C 70.977847,22.605363 70.406495,21.99048 70.007812,21.591797 L 48.208984,-0.20898438 C 47.606104,-0.81186474 46.804652,-1.1445313 46,-1.1445312 Z m 1.144531,6.2890624 H 42.855469 V 24 c 0,1.724372 1.420159,3.144531 3.144531,3.144531 H 64.855469 V 74.855469 H 15.144531 Z m 34,4.4179688 L 60.4375,20.855469 H 49.144531 Z"/>
+</g>
+<g style="fill:#4665A2;stroke-width:0">
+<path d="M 3.0307167,13.993174 V 7.0307167 h 2.7576792 2.7576792 v 1.8826151 c 0,1.2578262 0.0099,1.9287572 0.029818,2.0216512 0.03884,0.181105 0.168631,0.348218 0.33827,0.43554 l 0.1355017,0.06975 1.9598092,0.0079 1.959809,0.0078 v 4.749829 4.749829 H 8 3.0307167 Z" transform="matrix(5,0,0,5,0,-30)" />
+<path d="M 9.8293515,9.0581469 V 7.9456453 l 1.1058025,1.1055492 c 0.608191,0.6080521 1.105802,1.1086775 1.105802,1.1125015 0,0.0038 -0.497611,0.007 -1.105802,0.007 H 9.8293515 Z" transform="matrix(5,0,0,5,0,-30)" />
+</g>
+</svg>
diff --git a/assets/docs/html/doxygen.css b/assets/docs/html/doxygen.css
new file mode 100644
index 0000000000000000000000000000000000000000..4947e245d588195f4d456225b5865749aee15ff6
--- /dev/null
+++ b/assets/docs/html/doxygen.css
@@ -0,0 +1,2255 @@
+/* The standard CSS for doxygen 1.13.2*/
+
+html {
+/* page base colors */
+--page-background-color: white;
+--page-foreground-color: black;
+--page-link-color: #3D578C;
+--page-visited-link-color: #4665A2;
+
+/* index */
+--index-odd-item-bg-color: #F8F9FC;
+--index-even-item-bg-color: white;
+--index-header-color: black;
+--index-separator-color: #A0A0A0;
+
+/* header */
+--header-background-color: #F9FAFC;
+--header-separator-color: #C4CFE5;
+--header-gradient-image: url('nav_h.png');
+--group-header-separator-color: #879ECB;
+--group-header-color: #354C7B;
+--inherit-header-color: gray;
+
+--footer-foreground-color: #2A3D61;
+--footer-logo-width: 104px;
+--citation-label-color: #334975;
+--glow-color: cyan;
+
+--title-background-color: white;
+--title-separator-color: #5373B4;
+--directory-separator-color: #9CAFD4;
+--separator-color: #4A6AAA;
+
+--blockquote-background-color: #F7F8FB;
+--blockquote-border-color: #9CAFD4;
+
+--scrollbar-thumb-color: #9CAFD4;
+--scrollbar-background-color: #F9FAFC;
+
+--icon-background-color: #728DC1;
+--icon-foreground-color: white;
+--icon-doc-image: url('doc.svg');
+--icon-folder-open-image: url('folderopen.svg');
+--icon-folder-closed-image: url('folderclosed.svg');
+
+/* brief member declaration list */
+--memdecl-background-color: #F9FAFC;
+--memdecl-separator-color: #DEE4F0;
+--memdecl-foreground-color: #555;
+--memdecl-template-color: #4665A2;
+
+/* detailed member list */
+--memdef-border-color: #A8B8D9;
+--memdef-title-background-color: #E2E8F2;
+--memdef-title-gradient-image: url('nav_f.png');
+--memdef-proto-background-color: #DFE5F1;
+--memdef-proto-text-color: #253555;
+--memdef-proto-text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+--memdef-doc-background-color: white;
+--memdef-param-name-color: #602020;
+--memdef-template-color: #4665A2;
+
+/* tables */
+--table-cell-border-color: #2D4068;
+--table-header-background-color: #374F7F;
+--table-header-foreground-color: #FFFFFF;
+
+/* labels */
+--label-background-color: #728DC1;
+--label-left-top-border-color: #5373B4;
+--label-right-bottom-border-color: #C4CFE5;
+--label-foreground-color: white;
+
+/** navigation bar/tree/menu */
+--nav-background-color: #F9FAFC;
+--nav-foreground-color: #364D7C;
+--nav-gradient-image: url('tab_b.png');
+--nav-gradient-hover-image: url('tab_h.png');
+--nav-gradient-active-image: url('tab_a.png');
+--nav-gradient-active-image-parent: url("../tab_a.png");
+--nav-separator-image: url('tab_s.png');
+--nav-breadcrumb-image: url('bc_s.png');
+--nav-breadcrumb-border-color: #C2CDE4;
+--nav-splitbar-image: url('splitbar.png');
+--nav-font-size-level1: 13px;
+--nav-font-size-level2: 10px;
+--nav-font-size-level3: 9px;
+--nav-text-normal-color: #283A5D;
+--nav-text-hover-color: white;
+--nav-text-active-color: white;
+--nav-text-normal-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+--nav-text-hover-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
+--nav-text-active-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
+--nav-menu-button-color: #364D7C;
+--nav-menu-background-color: white;
+--nav-menu-foreground-color: #555555;
+--nav-menu-toggle-color: rgba(255, 255, 255, 0.5);
+--nav-arrow-color: #9CAFD4;
+--nav-arrow-selected-color: #9CAFD4;
+
+/* table of contents */
+--toc-background-color: #F4F6FA;
+--toc-border-color: #D8DFEE;
+--toc-header-color: #4665A2;
+--toc-down-arrow-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' height='10px' width='5px' fill='grey'><text x='0' y='5' font-size='10'>&%238595;</text></svg>");
+
+/** search field */
+--search-background-color: white;
+--search-foreground-color: #909090;
+--search-magnification-image: url('mag.svg');
+--search-magnification-select-image: url('mag_sel.svg');
+--search-active-color: black;
+--search-filter-background-color: #F9FAFC;
+--search-filter-foreground-color: black;
+--search-filter-border-color: #90A5CE;
+--search-filter-highlight-text-color: white;
+--search-filter-highlight-bg-color: #3D578C;
+--search-results-foreground-color: #425E97;
+--search-results-background-color: #EEF1F7;
+--search-results-border-color: black;
+--search-box-shadow: inset 0.5px 0.5px 3px 0px #555;
+
+/** code fragments */
+--code-keyword-color: #008000;
+--code-type-keyword-color: #604020;
+--code-flow-keyword-color: #E08000;
+--code-comment-color: #800000;
+--code-preprocessor-color: #806020;
+--code-string-literal-color: #002080;
+--code-char-literal-color: #008080;
+--code-xml-cdata-color: black;
+--code-vhdl-digit-color: #FF00FF;
+--code-vhdl-char-color: #000000;
+--code-vhdl-keyword-color: #700070;
+--code-vhdl-logic-color: #FF0000;
+--code-link-color: #4665A2;
+--code-external-link-color: #4665A2;
+--fragment-foreground-color: black;
+--fragment-background-color: #FBFCFD;
+--fragment-border-color: #C4CFE5;
+--fragment-lineno-border-color: #00FF00;
+--fragment-lineno-background-color: #E8E8E8;
+--fragment-lineno-foreground-color: black;
+--fragment-lineno-link-fg-color: #4665A2;
+--fragment-lineno-link-bg-color: #D8D8D8;
+--fragment-lineno-link-hover-fg-color: #4665A2;
+--fragment-lineno-link-hover-bg-color: #C8C8C8;
+--fragment-copy-ok-color: #2EC82E;
+--tooltip-foreground-color: black;
+--tooltip-background-color: white;
+--tooltip-border-color: gray;
+--tooltip-doc-color: grey;
+--tooltip-declaration-color: #006318;
+--tooltip-link-color: #4665A2;
+--tooltip-shadow: 1px 1px 7px gray;
+--fold-line-color: #808080;
+--fold-minus-image: url('minus.svg');
+--fold-plus-image: url('plus.svg');
+--fold-minus-image-relpath: url('../../minus.svg');
+--fold-plus-image-relpath: url('../../plus.svg');
+
+/** font-family */
+--font-family-normal: Roboto,sans-serif;
+--font-family-monospace: 'JetBrains Mono',Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace,fixed;
+--font-family-nav: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
+--font-family-title: Tahoma,Arial,sans-serif;
+--font-family-toc: Verdana,'DejaVu Sans',Geneva,sans-serif;
+--font-family-search: Arial,Verdana,sans-serif;
+--font-family-icon: Arial,Helvetica;
+--font-family-tooltip: Roboto,sans-serif;
+
+/** special sections */
+--warning-color-bg: #f8d1cc;
+--warning-color-hl: #b61825;
+--warning-color-text: #75070f;
+--note-color-bg: #faf3d8;
+--note-color-hl: #f3a600;
+--note-color-text: #5f4204;
+--todo-color-bg: #e4f3ff;
+--todo-color-hl: #1879C4;
+--todo-color-text: #274a5c;
+--test-color-bg: #e8e8ff;
+--test-color-hl: #3939C4;
+--test-color-text: #1a1a5c;
+--deprecated-color-bg: #ecf0f3;
+--deprecated-color-hl: #5b6269;
+--deprecated-color-text: #43454a;
+--bug-color-bg: #e4dafd;
+--bug-color-hl: #5b2bdd;
+--bug-color-text: #2a0d72;
+--invariant-color-bg: #d8f1e3;
+--invariant-color-hl: #44b86f;
+--invariant-color-text: #265532;
+}
+
+@media (prefers-color-scheme: dark) {
+  html:not(.dark-mode) {
+    color-scheme: dark;
+
+/* page base colors */
+--page-background-color: black;
+--page-foreground-color: #C9D1D9;
+--page-link-color: #90A5CE;
+--page-visited-link-color: #A3B4D7;
+
+/* index */
+--index-odd-item-bg-color: #0B101A;
+--index-even-item-bg-color: black;
+--index-header-color: #C4CFE5;
+--index-separator-color: #334975;
+
+/* header */
+--header-background-color: #070B11;
+--header-separator-color: #141C2E;
+--header-gradient-image: url('nav_hd.png');
+--group-header-separator-color: #283A5D;
+--group-header-color: #90A5CE;
+--inherit-header-color: #A0A0A0;
+
+--footer-foreground-color: #5B7AB7;
+--footer-logo-width: 60px;
+--citation-label-color: #90A5CE;
+--glow-color: cyan;
+
+--title-background-color: #090D16;
+--title-separator-color: #354C79;
+--directory-separator-color: #283A5D;
+--separator-color: #283A5D;
+
+--blockquote-background-color: #101826;
+--blockquote-border-color: #283A5D;
+
+--scrollbar-thumb-color: #283A5D;
+--scrollbar-background-color: #070B11;
+
+--icon-background-color: #334975;
+--icon-foreground-color: #C4CFE5;
+--icon-doc-image: url('docd.svg');
+--icon-folder-open-image: url('folderopend.svg');
+--icon-folder-closed-image: url('folderclosedd.svg');
+
+/* brief member declaration list */
+--memdecl-background-color: #0B101A;
+--memdecl-separator-color: #2C3F65;
+--memdecl-foreground-color: #BBB;
+--memdecl-template-color: #7C95C6;
+
+/* detailed member list */
+--memdef-border-color: #233250;
+--memdef-title-background-color: #1B2840;
+--memdef-title-gradient-image: url('nav_fd.png');
+--memdef-proto-background-color: #19243A;
+--memdef-proto-text-color: #9DB0D4;
+--memdef-proto-text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.9);
+--memdef-doc-background-color: black;
+--memdef-param-name-color: #D28757;
+--memdef-template-color: #7C95C6;
+
+/* tables */
+--table-cell-border-color: #283A5D;
+--table-header-background-color: #283A5D;
+--table-header-foreground-color: #C4CFE5;
+
+/* labels */
+--label-background-color: #354C7B;
+--label-left-top-border-color: #4665A2;
+--label-right-bottom-border-color: #283A5D;
+--label-foreground-color: #CCCCCC;
+
+/** navigation bar/tree/menu */
+--nav-background-color: #101826;
+--nav-foreground-color: #364D7C;
+--nav-gradient-image: url('tab_bd.png');
+--nav-gradient-hover-image: url('tab_hd.png');
+--nav-gradient-active-image: url('tab_ad.png');
+--nav-gradient-active-image-parent: url("../tab_ad.png");
+--nav-separator-image: url('tab_sd.png');
+--nav-breadcrumb-image: url('bc_sd.png');
+--nav-breadcrumb-border-color: #2A3D61;
+--nav-splitbar-image: url('splitbard.png');
+--nav-font-size-level1: 13px;
+--nav-font-size-level2: 10px;
+--nav-font-size-level3: 9px;
+--nav-text-normal-color: #B6C4DF;
+--nav-text-hover-color: #DCE2EF;
+--nav-text-active-color: #DCE2EF;
+--nav-text-normal-shadow: 0px 1px 1px black;
+--nav-text-hover-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
+--nav-text-active-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
+--nav-menu-button-color: #B6C4DF;
+--nav-menu-background-color: #05070C;
+--nav-menu-foreground-color: #BBBBBB;
+--nav-menu-toggle-color: rgba(255, 255, 255, 0.2);
+--nav-arrow-color: #334975;
+--nav-arrow-selected-color: #90A5CE;
+
+/* table of contents */
+--toc-background-color: #151E30;
+--toc-border-color: #202E4A;
+--toc-header-color: #A3B4D7;
+--toc-down-arrow-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' height='10px' width='5px'><text x='0' y='5' font-size='10' fill='grey'>&%238595;</text></svg>");
+
+/** search field */
+--search-background-color: black;
+--search-foreground-color: #C5C5C5;
+--search-magnification-image: url('mag_d.svg');
+--search-magnification-select-image: url('mag_seld.svg');
+--search-active-color: #C5C5C5;
+--search-filter-background-color: #101826;
+--search-filter-foreground-color: #90A5CE;
+--search-filter-border-color: #7C95C6;
+--search-filter-highlight-text-color: #BCC9E2;
+--search-filter-highlight-bg-color: #283A5D;
+--search-results-background-color: #101826;
+--search-results-foreground-color: #90A5CE;
+--search-results-border-color: #7C95C6;
+--search-box-shadow: inset 0.5px 0.5px 3px 0px #2F436C;
+
+/** code fragments */
+--code-keyword-color: #CC99CD;
+--code-type-keyword-color: #AB99CD;
+--code-flow-keyword-color: #E08000;
+--code-comment-color: #717790;
+--code-preprocessor-color: #65CABE;
+--code-string-literal-color: #7EC699;
+--code-char-literal-color: #00E0F0;
+--code-xml-cdata-color: #C9D1D9;
+--code-vhdl-digit-color: #FF00FF;
+--code-vhdl-char-color: #C0C0C0;
+--code-vhdl-keyword-color: #CF53C9;
+--code-vhdl-logic-color: #FF0000;
+--code-link-color: #79C0FF;
+--code-external-link-color: #79C0FF;
+--fragment-foreground-color: #C9D1D9;
+--fragment-background-color: #090D16;
+--fragment-border-color: #30363D;
+--fragment-lineno-border-color: #30363D;
+--fragment-lineno-background-color: black;
+--fragment-lineno-foreground-color: #6E7681;
+--fragment-lineno-link-fg-color: #6E7681;
+--fragment-lineno-link-bg-color: #303030;
+--fragment-lineno-link-hover-fg-color: #8E96A1;
+--fragment-lineno-link-hover-bg-color: #505050;
+--fragment-copy-ok-color: #0EA80E;
+--tooltip-foreground-color: #C9D1D9;
+--tooltip-background-color: #202020;
+--tooltip-border-color: #C9D1D9;
+--tooltip-doc-color: #D9E1E9;
+--tooltip-declaration-color: #20C348;
+--tooltip-link-color: #79C0FF;
+--tooltip-shadow: none;
+--fold-line-color: #808080;
+--fold-minus-image: url('minusd.svg');
+--fold-plus-image: url('plusd.svg');
+--fold-minus-image-relpath: url('../../minusd.svg');
+--fold-plus-image-relpath: url('../../plusd.svg');
+
+/** font-family */
+--font-family-normal: Roboto,sans-serif;
+--font-family-monospace: 'JetBrains Mono',Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace,fixed;
+--font-family-nav: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
+--font-family-title: Tahoma,Arial,sans-serif;
+--font-family-toc: Verdana,'DejaVu Sans',Geneva,sans-serif;
+--font-family-search: Arial,Verdana,sans-serif;
+--font-family-icon: Arial,Helvetica;
+--font-family-tooltip: Roboto,sans-serif;
+
+/** special sections */
+--warning-color-bg: #2e1917;
+--warning-color-hl: #ad2617;
+--warning-color-text: #f5b1aa;
+--note-color-bg: #3b2e04;
+--note-color-hl: #f1b602;
+--note-color-text: #ceb670;
+--todo-color-bg: #163750;
+--todo-color-hl: #1982D2;
+--todo-color-text: #dcf0fa;
+--test-color-bg: #121258;
+--test-color-hl: #4242cf;
+--test-color-text: #c0c0da;
+--deprecated-color-bg: #2e323b;
+--deprecated-color-hl: #738396;
+--deprecated-color-text: #abb0bd;
+--bug-color-bg: #2a2536;
+--bug-color-hl: #7661b3;
+--bug-color-text: #ae9ed6;
+--invariant-color-bg: #303a35;
+--invariant-color-hl: #76ce96;
+--invariant-color-text: #cceed5;
+}}
+body {
+    background-color: var(--page-background-color);
+    color: var(--page-foreground-color);
+}
+
+body, table, div, p, dl {
+	font-weight: 400;
+	font-size: 14px;
+	font-family: var(--font-family-normal);
+	line-height: 22px;
+}
+
+/* @group Heading Levels */
+
+.title {
+	font-family: var(--font-family-normal);
+	line-height: 28px;
+	font-size: 150%;
+	font-weight: bold;
+	margin: 10px 2px;
+}
+
+h1.groupheader {
+	font-size: 150%;
+}
+
+h2.groupheader {
+	border-bottom: 1px solid var(--group-header-separator-color);
+	color: var(--group-header-color);
+	font-size: 150%;
+	font-weight: normal;
+	margin-top: 1.75em;
+	padding-top: 8px;
+	padding-bottom: 4px;
+	width: 100%;
+}
+
+h3.groupheader {
+	font-size: 100%;
+}
+
+h1, h2, h3, h4, h5, h6 {
+	-webkit-transition: text-shadow 0.5s linear;
+	-moz-transition: text-shadow 0.5s linear;
+	-ms-transition: text-shadow 0.5s linear;
+	-o-transition: text-shadow 0.5s linear;
+	transition: text-shadow 0.5s linear;
+	margin-right: 15px;
+}
+
+h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow {
+	text-shadow: 0 0 15px var(--glow-color);
+}
+
+dt {
+	font-weight: bold;
+}
+
+p.startli, p.startdd {
+	margin-top: 2px;
+}
+
+th p.starttd, th p.intertd, th p.endtd {
+        font-size: 100%;
+        font-weight: 700;
+}
+
+p.starttd {
+	margin-top: 0px;
+}
+
+p.endli {
+	margin-bottom: 0px;
+}
+
+p.enddd {
+	margin-bottom: 4px;
+}
+
+p.endtd {
+	margin-bottom: 2px;
+}
+
+p.interli {
+}
+
+p.interdd {
+}
+
+p.intertd {
+}
+
+/* @end */
+
+caption {
+	font-weight: bold;
+}
+
+span.legend {
+	font-size: 70%;
+	text-align: center;
+}
+
+h3.version {
+	font-size: 90%;
+	text-align: center;
+}
+
+div.navtab {
+	padding-right: 15px;
+	text-align: right;
+	line-height: 110%;
+}
+
+div.navtab table {
+	border-spacing: 0;
+}
+
+td.navtab {
+	padding-right: 6px;
+	padding-left: 6px;
+}
+
+td.navtabHL {
+	background-image: var(--nav-gradient-active-image);
+	background-repeat:repeat-x;
+	padding-right: 6px;
+	padding-left: 6px;
+}
+
+td.navtabHL a, td.navtabHL a:visited {
+	color: var(--nav-text-hover-color);
+	text-shadow: var(--nav-text-hover-shadow);
+}
+
+a.navtab {
+	font-weight: bold;
+}
+
+div.qindex{
+	text-align: center;
+	width: 100%;
+	line-height: 140%;
+	font-size: 130%;
+	color: var(--index-separator-color);
+}
+
+#main-menu a:focus {
+	outline: auto;
+	z-index: 10;
+	position: relative;
+}
+
+dt.alphachar{
+	font-size: 180%;
+	font-weight: bold;
+}
+
+.alphachar a{
+	color: var(--index-header-color);
+}
+
+.alphachar a:hover, .alphachar a:visited{
+	text-decoration: none;
+}
+
+.classindex dl {
+	padding: 25px;
+	column-count:1
+}
+
+.classindex dd {
+	display:inline-block;
+	margin-left: 50px;
+	width: 90%;
+	line-height: 1.15em;
+}
+
+.classindex dl.even {
+	background-color: var(--index-even-item-bg-color);
+}
+
+.classindex dl.odd {
+	background-color: var(--index-odd-item-bg-color);
+}
+
+@media(min-width: 1120px) {
+	.classindex dl {
+		column-count:2
+	}
+}
+
+@media(min-width: 1320px) {
+	.classindex dl {
+		column-count:3
+	}
+}
+
+
+/* @group Link Styling */
+
+a {
+	color: var(--page-link-color);
+	font-weight: normal;
+	text-decoration: none;
+}
+
+.contents a:visited {
+	color: var(--page-visited-link-color);
+}
+
+a:hover {
+	text-decoration: none;
+	background:   linear-gradient(to bottom, transparent 0,transparent calc(100% - 1px), currentColor 100%);
+}
+
+a:hover > span.arrow {
+        text-decoration: none;
+        background : var(--nav-background-color);
+}
+
+a.el {
+	font-weight: bold;
+}
+
+a.elRef {
+}
+
+a.code, a.code:visited, a.line, a.line:visited {
+	color: var(--code-link-color);
+}
+
+a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited {
+	color: var(--code-external-link-color);
+}
+
+a.code.hl_class { /* style for links to class names in code snippets */ }
+a.code.hl_struct { /* style for links to struct names in code snippets */ }
+a.code.hl_union { /* style for links to union names in code snippets */ }
+a.code.hl_interface { /* style for links to interface names in code snippets */ }
+a.code.hl_protocol { /* style for links to protocol names in code snippets */ }
+a.code.hl_category { /* style for links to category names in code snippets */ }
+a.code.hl_exception { /* style for links to exception names in code snippets */ }
+a.code.hl_service { /* style for links to service names in code snippets */ }
+a.code.hl_singleton { /* style for links to singleton names in code snippets */ }
+a.code.hl_concept { /* style for links to concept names in code snippets */ }
+a.code.hl_namespace { /* style for links to namespace names in code snippets */ }
+a.code.hl_package { /* style for links to package names in code snippets */ }
+a.code.hl_define { /* style for links to macro names in code snippets */ }
+a.code.hl_function { /* style for links to function names in code snippets */ }
+a.code.hl_variable { /* style for links to variable names in code snippets */ }
+a.code.hl_typedef { /* style for links to typedef names in code snippets */ }
+a.code.hl_enumvalue { /* style for links to enum value names in code snippets */ }
+a.code.hl_enumeration { /* style for links to enumeration names in code snippets */ }
+a.code.hl_signal { /* style for links to Qt signal names in code snippets */ }
+a.code.hl_slot { /* style for links to Qt slot names in code snippets */ }
+a.code.hl_friend { /* style for links to friend names in code snippets */ }
+a.code.hl_dcop { /* style for links to KDE3 DCOP names in code snippets */ }
+a.code.hl_property { /* style for links to property names in code snippets */ }
+a.code.hl_event { /* style for links to event names in code snippets */ }
+a.code.hl_sequence { /* style for links to sequence names in code snippets */ }
+a.code.hl_dictionary { /* style for links to dictionary names in code snippets */ }
+
+/* @end */
+
+dl.el {
+	margin-left: -1cm;
+}
+
+ul.check {
+  list-style:none;
+  text-indent: -16px;
+  padding-left: 38px;
+}
+li.unchecked:before {
+  content: "\2610\A0";
+}
+li.checked:before {
+  content: "\2611\A0";
+}
+
+ol {
+  text-indent: 0px;
+}
+
+ul {
+  text-indent: 0px;
+  overflow: visible;
+}
+
+ul.multicol {
+        -moz-column-gap: 1em;
+        -webkit-column-gap: 1em;
+        column-gap: 1em;
+        -moz-column-count: 3;
+        -webkit-column-count: 3;
+        column-count: 3;
+        list-style-type: none;
+}
+
+#side-nav ul {
+  overflow: visible; /* reset ul rule for scroll bar in GENERATE_TREEVIEW window */
+}
+
+#main-nav ul {
+  overflow: visible; /* reset ul rule for the navigation bar drop down lists */
+}
+
+.fragment {
+  text-align: left;
+  direction: ltr;
+  overflow-x: auto;
+  overflow-y: hidden;
+  position: relative;
+  min-height: 12px;
+  margin: 10px 0px;
+  padding: 10px 10px;
+  border: 1px solid var(--fragment-border-color);
+  border-radius: 4px;
+  background-color: var(--fragment-background-color);
+  color: var(--fragment-foreground-color);
+}
+
+pre.fragment {
+  word-wrap: break-word;
+  font-size:  10pt;
+  line-height: 125%;
+  font-family: var(--font-family-monospace);
+}
+
+.clipboard {
+        width: 24px;
+        height: 24px;
+        right: 5px;
+        top: 5px;
+        opacity: 0;
+        position: absolute;
+        display: inline;
+        overflow: hidden;
+        justify-content: center;
+        align-items: center;
+        cursor: pointer;
+}
+
+.clipboard.success {
+        border: 1px solid var(--fragment-foreground-color);
+        border-radius: 4px;
+}
+
+.fragment:hover .clipboard, .clipboard.success {
+        opacity: .4;
+}
+
+.clipboard:hover, .clipboard.success {
+        opacity: 1 !important;
+}
+
+.clipboard:active:not([class~=success]) svg {
+        transform: scale(.91);
+}
+
+.clipboard.success svg {
+        fill: var(--fragment-copy-ok-color);
+}
+
+.clipboard.success {
+        border-color: var(--fragment-copy-ok-color);
+}
+
+div.line {
+	font-family: var(--font-family-monospace);
+        font-size: 13px;
+	min-height: 13px;
+	line-height: 1.2;
+	text-wrap: unrestricted;
+	white-space: -moz-pre-wrap; /* Moz */
+	white-space: -pre-wrap;     /* Opera 4-6 */
+	white-space: -o-pre-wrap;   /* Opera 7 */
+	white-space: pre-wrap;      /* CSS3  */
+	word-wrap: break-word;      /* IE 5.5+ */
+	text-indent: -53px;
+	padding-left: 53px;
+	padding-bottom: 0px;
+	margin: 0px;
+	-webkit-transition-property: background-color, box-shadow;
+	-webkit-transition-duration: 0.5s;
+	-moz-transition-property: background-color, box-shadow;
+	-moz-transition-duration: 0.5s;
+	-ms-transition-property: background-color, box-shadow;
+	-ms-transition-duration: 0.5s;
+	-o-transition-property: background-color, box-shadow;
+	-o-transition-duration: 0.5s;
+	transition-property: background-color, box-shadow;
+	transition-duration: 0.5s;
+}
+
+div.line:after {
+    content:"\000A";
+    white-space: pre;
+}
+
+div.line.glow {
+	background-color: var(--glow-color);
+	box-shadow: 0 0 10px var(--glow-color);
+}
+
+span.fold {
+        margin-left: 5px;
+        margin-right: 1px;
+        margin-top: 0px;
+        margin-bottom: 0px;
+        padding: 0px;
+	display: inline-block;
+	width: 12px;
+	height: 12px;
+	background-repeat:no-repeat;
+        background-position:center;
+}
+
+span.lineno {
+	padding-right: 4px;
+        margin-right: 9px;
+	text-align: right;
+	border-right: 2px solid var(--fragment-lineno-border-color);
+	color: var(--fragment-lineno-foreground-color);
+	background-color: var(--fragment-lineno-background-color);
+        white-space: pre;
+}
+span.lineno a, span.lineno a:visited {
+	color: var(--fragment-lineno-link-fg-color);
+	background-color: var(--fragment-lineno-link-bg-color);
+}
+
+span.lineno a:hover {
+	color: var(--fragment-lineno-link-hover-fg-color);
+	background-color: var(--fragment-lineno-link-hover-bg-color);
+}
+
+.lineno {
+	-webkit-touch-callout: none;
+	-webkit-user-select: none;
+	-khtml-user-select: none;
+	-moz-user-select: none;
+	-ms-user-select: none;
+	user-select: none;
+}
+
+div.classindex ul {
+        list-style: none;
+        padding-left: 0;
+}
+
+div.classindex span.ai {
+        display: inline-block;
+}
+
+div.groupHeader {
+	margin-left: 16px;
+	margin-top: 12px;
+	font-weight: bold;
+}
+
+div.groupText {
+	margin-left: 16px;
+	font-style: italic;
+}
+
+body {
+	color: var(--page-foreground-color);
+        margin: 0;
+}
+
+div.contents {
+	margin-top: 10px;
+	margin-left: 12px;
+	margin-right: 8px;
+}
+
+p.formulaDsp {
+	text-align: center;
+}
+
+img.dark-mode-visible {
+	display: none;
+}
+img.light-mode-visible {
+	display: none;
+}
+
+img.formulaInl, img.inline {
+	vertical-align: middle;
+}
+
+div.center {
+	text-align: center;
+        margin-top: 0px;
+        margin-bottom: 0px;
+        padding: 0px;
+}
+
+div.center img {
+	border: 0px;
+}
+
+address.footer {
+	text-align: right;
+	padding-right: 12px;
+}
+
+img.footer {
+	border: 0px;
+	vertical-align: middle;
+	width: var(--footer-logo-width);
+}
+
+.compoundTemplParams {
+	color: var(--memdecl-template-color);
+	font-size: 80%;
+	line-height: 120%;
+}
+
+/* @group Code Colorization */
+
+span.keyword {
+	color: var(--code-keyword-color);
+}
+
+span.keywordtype {
+	color: var(--code-type-keyword-color);
+}
+
+span.keywordflow {
+	color: var(--code-flow-keyword-color);
+}
+
+span.comment {
+	color: var(--code-comment-color);
+}
+
+span.preprocessor {
+	color: var(--code-preprocessor-color);
+}
+
+span.stringliteral {
+	color: var(--code-string-literal-color);
+}
+
+span.charliteral {
+	color: var(--code-char-literal-color);
+}
+
+span.xmlcdata {
+	color: var(--code-xml-cdata-color);
+}
+
+span.vhdldigit { 
+	color: var(--code-vhdl-digit-color);
+}
+
+span.vhdlchar { 
+	color: var(--code-vhdl-char-color);
+}
+
+span.vhdlkeyword { 
+	color: var(--code-vhdl-keyword-color);
+}
+
+span.vhdllogic { 
+	color: var(--code-vhdl-logic-color);
+}
+
+blockquote {
+        background-color: var(--blockquote-background-color);
+        border-left: 2px solid var(--blockquote-border-color);
+        margin: 0 24px 0 4px;
+        padding: 0 12px 0 16px;
+}
+
+/* @end */
+
+td.tiny {
+	font-size: 75%;
+}
+
+.dirtab {
+	padding: 4px;
+	border-collapse: collapse;
+	border: 1px solid var(--table-cell-border-color);
+}
+
+th.dirtab {
+	background-color: var(--table-header-background-color);
+	color: var(--table-header-foreground-color);
+	font-weight: bold;
+}
+
+hr {
+	height: 0px;
+	border: none;
+	border-top: 1px solid var(--separator-color);
+}
+
+hr.footer {
+	height: 1px;
+}
+
+/* @group Member Descriptions */
+
+table.memberdecls {
+	border-spacing: 0px;
+	padding: 0px;
+}
+
+.memberdecls td, .fieldtable tr {
+	-webkit-transition-property: background-color, box-shadow;
+	-webkit-transition-duration: 0.5s;
+	-moz-transition-property: background-color, box-shadow;
+	-moz-transition-duration: 0.5s;
+	-ms-transition-property: background-color, box-shadow;
+	-ms-transition-duration: 0.5s;
+	-o-transition-property: background-color, box-shadow;
+	-o-transition-duration: 0.5s;
+	transition-property: background-color, box-shadow;
+	transition-duration: 0.5s;
+}
+
+.memberdecls td.glow, .fieldtable tr.glow {
+	background-color: var(--glow-color);
+	box-shadow: 0 0 15px var(--glow-color);
+}
+
+.mdescLeft, .mdescRight,
+.memItemLeft, .memItemRight,
+.memTemplItemLeft, .memTemplItemRight, .memTemplParams {
+	background-color: var(--memdecl-background-color);
+	border: none;
+	margin: 4px;
+	padding: 1px 0 0 8px;
+}
+
+.mdescLeft, .mdescRight {
+	padding: 0px 8px 4px 8px;
+	color: var(--memdecl-foreground-color);
+}
+
+.memSeparator {
+        border-bottom: 1px solid var(--memdecl-separator-color);
+        line-height: 1px;
+        margin: 0px;
+        padding: 0px;
+}
+
+.memItemLeft, .memTemplItemLeft {
+        white-space: nowrap;
+}
+
+.memItemRight, .memTemplItemRight {
+	width: 100%;
+}
+
+.memTemplParams {
+	color: var(--memdecl-template-color);
+        white-space: nowrap;
+	font-size: 80%;
+}
+
+/* @end */
+
+/* @group Member Details */
+
+/* Styles for detailed member documentation */
+
+.memtitle {
+	padding: 8px;
+	border-top: 1px solid var(--memdef-border-color);
+	border-left: 1px solid var(--memdef-border-color);
+	border-right: 1px solid var(--memdef-border-color);
+	border-top-right-radius: 4px;
+	border-top-left-radius: 4px;
+	margin-bottom: -1px;
+	background-image: var(--memdef-title-gradient-image);
+	background-repeat: repeat-x;
+	background-color: var(--memdef-title-background-color);
+	line-height: 1.25;
+	font-weight: 300;
+	float:left;
+}
+
+.permalink
+{
+        font-size: 65%;
+        display: inline-block;
+        vertical-align: middle;
+}
+
+.memtemplate {
+	font-size: 80%;
+	color: var(--memdef-template-color);
+	font-weight: normal;
+	margin-left: 9px;
+}
+
+.mempage {
+	width: 100%;
+}
+
+.memitem {
+	padding: 0;
+	margin-bottom: 10px;
+	margin-right: 5px;
+        -webkit-transition: box-shadow 0.5s linear;
+        -moz-transition: box-shadow 0.5s linear;
+        -ms-transition: box-shadow 0.5s linear;
+        -o-transition: box-shadow 0.5s linear;
+        transition: box-shadow 0.5s linear;
+        display: table !important;
+        width: 100%;
+}
+
+.memitem.glow {
+         box-shadow: 0 0 15px var(--glow-color);
+}
+
+.memname {
+        font-weight: 400;
+        margin-left: 6px;
+}
+
+.memname td {
+	vertical-align: bottom;
+}
+
+.memproto, dl.reflist dt {
+        border-top: 1px solid var(--memdef-border-color);
+        border-left: 1px solid var(--memdef-border-color);
+        border-right: 1px solid var(--memdef-border-color);
+        padding: 6px 0px 6px 0px;
+        color: var(--memdef-proto-text-color);
+        font-weight: bold;
+        text-shadow: var(--memdef-proto-text-shadow);
+        background-color: var(--memdef-proto-background-color);
+        box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+        border-top-right-radius: 4px;
+}
+
+.overload {
+        font-family: var(--font-family-monospace);
+	font-size: 65%;
+}
+
+.memdoc, dl.reflist dd {
+        border-bottom: 1px solid var(--memdef-border-color);
+        border-left: 1px solid var(--memdef-border-color);
+        border-right: 1px solid var(--memdef-border-color);
+        padding: 6px 10px 2px 10px;
+        border-top-width: 0;
+        background-image:url('nav_g.png');
+        background-repeat:repeat-x;
+        background-color: var(--memdef-doc-background-color);
+        /* opera specific markup */
+        border-bottom-left-radius: 4px;
+        border-bottom-right-radius: 4px;
+        box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+        /* firefox specific markup */
+        -moz-border-radius-bottomleft: 4px;
+        -moz-border-radius-bottomright: 4px;
+        -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+        /* webkit specific markup */
+        -webkit-border-bottom-left-radius: 4px;
+        -webkit-border-bottom-right-radius: 4px;
+        -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+}
+
+dl.reflist dt {
+        padding: 5px;
+}
+
+dl.reflist dd {
+        margin: 0px 0px 10px 0px;
+        padding: 5px;
+}
+
+.paramkey {
+	text-align: right;
+}
+
+.paramtype {
+	white-space: nowrap;
+	padding: 0px;
+	padding-bottom: 1px;
+}
+
+.paramname {
+	white-space: nowrap;
+        padding: 0px;
+        padding-bottom: 1px;
+        margin-left: 2px;
+}
+
+.paramname em {
+	color: var(--memdef-param-name-color);
+	font-style: normal;
+	margin-right: 1px;
+}
+
+.paramname .paramdefval {
+	font-family: var(--font-family-monospace);
+}
+
+.params, .retval, .exception, .tparams {
+        margin-left: 0px;
+        padding-left: 0px;
+}
+
+.params .paramname, .retval .paramname, .tparams .paramname, .exception .paramname {
+        font-weight: bold;
+        vertical-align: top;
+}
+
+.params .paramtype, .tparams .paramtype {
+        font-style: italic;
+        vertical-align: top;
+}
+
+.params .paramdir, .tparams .paramdir {
+        font-family: var(--font-family-monospace);
+        vertical-align: top;
+}
+
+table.mlabels {
+	border-spacing: 0px;
+}
+
+td.mlabels-left {
+	width: 100%;
+	padding: 0px;
+}
+
+td.mlabels-right {
+	vertical-align: bottom;
+	padding: 0px;
+	white-space: nowrap;
+}
+
+span.mlabels {
+        margin-left: 8px;
+}
+
+span.mlabel {
+        background-color: var(--label-background-color);
+        border-top:1px solid var(--label-left-top-border-color);
+        border-left:1px solid var(--label-left-top-border-color);
+        border-right:1px solid var(--label-right-bottom-border-color);
+        border-bottom:1px solid var(--label-right-bottom-border-color);
+	text-shadow: none;
+	color: var(--label-foreground-color);
+	margin-right: 4px;
+	padding: 2px 3px;
+	border-radius: 3px;
+	font-size: 7pt;
+	white-space: nowrap;
+	vertical-align: middle;
+}
+
+
+
+/* @end */
+
+/* these are for tree view inside a (index) page */
+
+div.directory {
+        margin: 10px 0px;
+        border-top: 1px solid var(--directory-separator-color);
+        border-bottom: 1px solid var(--directory-separator-color);
+        width: 100%;
+}
+
+.directory table {
+        border-collapse:collapse;
+}
+
+.directory td {
+        margin: 0px;
+        padding: 0px;
+	vertical-align: top;
+}
+
+.directory td.entry {
+        white-space: nowrap;
+        padding-right: 6px;
+	padding-top: 3px;
+}
+
+.directory td.entry a {
+        outline:none;
+}
+
+.directory td.entry a img {
+        border: none;
+}
+
+.directory td.desc {
+        width: 100%;
+        padding-left: 6px;
+	padding-right: 6px;
+	padding-top: 3px;
+	border-left: 1px solid rgba(0,0,0,0.05);
+}
+
+.directory tr.odd {
+	padding-left: 6px;
+	background-color: var(--index-odd-item-bg-color);
+}
+
+.directory tr.even {
+	padding-left: 6px;
+	background-color: var(--index-even-item-bg-color);
+}
+
+.directory img {
+	vertical-align: -30%;
+}
+
+.directory .levels {
+        white-space: nowrap;
+        width: 100%;
+        text-align: right;
+        font-size: 9pt;
+}
+
+.directory .levels span {
+        cursor: pointer;
+        padding-left: 2px;
+        padding-right: 2px;
+	color: var(--page-link-color);
+}
+
+.arrow {
+    color: var(--nav-arrow-color);
+    -webkit-user-select: none;
+    -khtml-user-select: none;
+    -moz-user-select: none;
+    -ms-user-select: none;
+    user-select: none;
+    cursor: pointer;
+    font-size: 80%;
+    display: inline-block;
+    width: 16px;
+    height: 22px;
+}
+
+.icon {
+    font-family: var(--font-family-icon);
+    line-height: normal;
+    font-weight: bold;
+    font-size: 12px;
+    height: 14px;
+    width: 16px;
+    display: inline-block;
+    background-color: var(--icon-background-color);
+    color: var(--icon-foreground-color);
+    text-align: center;
+    border-radius: 4px;
+    margin-left: 2px;
+    margin-right: 2px;
+}
+
+.icona {
+    width: 24px;
+    height: 22px;
+    display: inline-block;
+}
+
+.iconfopen {
+    width: 24px;
+    height: 18px;
+    margin-bottom: 4px;
+    background-image:var(--icon-folder-open-image);
+    background-repeat: repeat-y;
+    vertical-align:top;
+    display: inline-block;
+}
+
+.iconfclosed {
+    width: 24px;
+    height: 18px;
+    margin-bottom: 4px;
+    background-image:var(--icon-folder-closed-image);
+    background-repeat: repeat-y;
+    vertical-align:top;
+    display: inline-block;
+}
+
+.icondoc {
+    width: 24px;
+    height: 18px;
+    margin-bottom: 4px;
+    background-image:var(--icon-doc-image);
+    background-position: 0px -4px;
+    background-repeat: repeat-y;
+    vertical-align:top;
+    display: inline-block;
+}
+
+/* @end */
+
+div.dynheader {
+        margin-top: 8px;
+	-webkit-touch-callout: none;
+	-webkit-user-select: none;
+	-khtml-user-select: none;
+	-moz-user-select: none;
+	-ms-user-select: none;
+	user-select: none;
+}
+
+address {
+	font-style: normal;
+	color: var(--footer-foreground-color);
+}
+
+table.doxtable caption {
+	caption-side: top;
+}
+
+table.doxtable {
+	border-collapse:collapse;
+        margin-top: 4px;
+        margin-bottom: 4px;
+}
+
+table.doxtable td, table.doxtable th {
+	border: 1px solid var(--table-cell-border-color);
+	padding: 3px 7px 2px;
+}
+
+table.doxtable th {
+	background-color: var(--table-header-background-color);
+	color: var(--table-header-foreground-color);
+	font-size: 110%;
+	padding-bottom: 4px;
+	padding-top: 5px;
+}
+
+table.fieldtable {
+        margin-bottom: 10px;
+        border: 1px solid var(--memdef-border-color);
+        border-spacing: 0px;
+        border-radius: 4px;
+        box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+}
+
+.fieldtable td, .fieldtable th {
+        padding: 3px 7px 2px;
+}
+
+.fieldtable td.fieldtype, .fieldtable td.fieldname, .fieldtable td.fieldinit {
+        white-space: nowrap;
+        border-right: 1px solid var(--memdef-border-color);
+        border-bottom: 1px solid var(--memdef-border-color);
+        vertical-align: top;
+}
+
+.fieldtable td.fieldname {
+        padding-top: 3px;
+}
+
+.fieldtable td.fieldinit {
+        padding-top: 3px;
+        text-align: right;
+}
+
+
+.fieldtable td.fielddoc {
+        border-bottom: 1px solid var(--memdef-border-color);
+}
+
+.fieldtable td.fielddoc p:first-child {
+        margin-top: 0px;
+}
+
+.fieldtable td.fielddoc p:last-child {
+        margin-bottom: 2px;
+}
+
+.fieldtable tr:last-child td {
+        border-bottom: none;
+}
+
+.fieldtable th {
+        background-image: var(--memdef-title-gradient-image);
+        background-repeat:repeat-x;
+        background-color: var(--memdef-title-background-color);
+        font-size: 90%;
+        color: var(--memdef-proto-text-color);
+        padding-bottom: 4px;
+        padding-top: 5px;
+        text-align:left;
+        font-weight: 400;
+        border-top-left-radius: 4px;
+        border-top-right-radius: 4px;
+        border-bottom: 1px solid var(--memdef-border-color);
+}
+
+
+.tabsearch {
+	top: 0px;
+	left: 10px;
+	height: 36px;
+	background-image: var(--nav-gradient-image);
+	z-index: 101;
+	overflow: hidden;
+	font-size: 13px;
+}
+
+.navpath ul
+{
+	font-size: 11px;
+	background-image: var(--nav-gradient-image);
+	background-repeat:repeat-x;
+	background-position: 0 -5px;
+	height:30px;
+	line-height:30px;
+	color:var(--nav-text-normal-color);
+	border:solid 1px var(--nav-breadcrumb-border-color);
+	overflow:hidden;
+	margin:0px;
+	padding:0px;
+}
+
+.navpath li
+{
+	list-style-type:none;
+	float:left;
+	padding-left:10px;
+	padding-right:15px;
+	background-image:var(--nav-breadcrumb-image);
+	background-repeat:no-repeat;
+	background-position:right;
+	color: var(--nav-foreground-color);
+}
+
+.navpath li.navelem a
+{
+	height:32px;
+	display:block;
+	outline: none;
+	color: var(--nav-text-normal-color);
+	font-family: var(--font-family-nav);
+	text-shadow: var(--nav-text-normal-shadow);
+	text-decoration: none;
+}
+
+.navpath li.navelem a:hover
+{
+	color: var(--nav-text-hover-color);
+	text-shadow: var(--nav-text-hover-shadow);
+}
+
+.navpath li.footer
+{
+        list-style-type:none;
+        float:right;
+        padding-left:10px;
+        padding-right:15px;
+        background-image:none;
+        background-repeat:no-repeat;
+        background-position:right;
+        color: var(--footer-foreground-color);
+        font-size: 8pt;
+}
+
+
+div.summary
+{
+	float: right;
+	font-size: 8pt;
+	padding-right: 5px;
+	width: 50%;
+	text-align: right;
+}
+
+div.summary a
+{
+	white-space: nowrap;
+}
+
+table.classindex
+{
+        margin: 10px;
+        white-space: nowrap;
+        margin-left: 3%;
+        margin-right: 3%;
+        width: 94%;
+        border: 0;
+        border-spacing: 0;
+        padding: 0;
+}
+
+div.ingroups
+{
+	font-size: 8pt;
+	width: 50%;
+	text-align: left;
+}
+
+div.ingroups a
+{
+	white-space: nowrap;
+}
+
+div.header
+{
+        background-image: var(--header-gradient-image);
+        background-repeat:repeat-x;
+	background-color: var(--header-background-color);
+	margin:  0px;
+	border-bottom: 1px solid var(--header-separator-color);
+}
+
+div.headertitle
+{
+	padding: 5px 5px 5px 10px;
+}
+
+.PageDocRTL-title div.headertitle {
+  text-align: right;
+  direction: rtl;
+}
+
+dl {
+        padding: 0 0 0 0;
+}
+
+/*
+
+dl.section {
+	margin-left: 0px;
+	padding-left: 0px;
+}
+
+dl.note {
+  margin-left: -7px;
+  padding-left: 3px;
+  border-left: 4px solid;
+  border-color: #D0C000;
+}
+
+dl.warning, dl.attention, dl.important {
+  margin-left: -7px;
+  padding-left: 3px;
+  border-left: 4px solid;
+  border-color: #FF0000;
+}
+
+dl.pre, dl.post, dl.invariant {
+  margin-left: -7px;
+  padding-left: 3px;
+  border-left: 4px solid;
+  border-color: #00D000;
+}
+
+dl.deprecated {
+  margin-left: -7px;
+  padding-left: 3px;
+  border-left: 4px solid;
+  border-color: #505050;
+}
+
+dl.todo {
+  margin-left: -7px;
+  padding-left: 3px;
+  border-left: 4px solid;
+  border-color: #00C0E0;
+}
+
+dl.test {
+  margin-left: -7px;
+  padding-left: 3px;
+  border-left: 4px solid;
+  border-color: #3030E0;
+}
+
+dl.bug {
+  margin-left: -7px;
+  padding-left: 3px;
+  border-left: 4px solid;
+  border-color: #C08050;
+}
+
+*/
+
+dl.bug dt a, dl.deprecated dt a, dl.todo dt a, dl.test a {
+    font-weight: bold !important;
+}
+
+dl.warning, dl.attention, dl.important, dl.note, dl.deprecated, dl.bug,
+dl.invariant, dl.pre, dl.post, dl.todo, dl.test, dl.remark {
+    padding: 10px;
+    margin: 10px 0px;
+    overflow: hidden;
+    margin-left: 0;
+    border-radius: 4px;
+}
+
+dl.section dd {
+    margin-bottom: 2px;
+}
+
+dl.warning, dl.attention, dl.important {
+    background: var(--warning-color-bg);
+    border-left: 8px solid var(--warning-color-hl);
+    color: var(--warning-color-text);
+}
+
+dl.warning dt, dl.attention dt, dl.important dt {
+    color: var(--warning-color-hl);
+}
+
+dl.note, dl.remark {
+    background: var(--note-color-bg);
+    border-left: 8px solid var(--note-color-hl);
+    color: var(--note-color-text);
+}
+
+dl.note dt, dl.remark dt {
+    color: var(--note-color-hl);
+}
+
+dl.todo {
+    background: var(--todo-color-bg);
+    border-left: 8px solid var(--todo-color-hl);
+    color: var(--todo-color-text);
+}
+
+dl.todo dt {
+    color: var(--todo-color-hl);
+}
+
+dl.test {
+    background: var(--test-color-bg);
+    border-left: 8px solid var(--test-color-hl);
+    color: var(--test-color-text);
+}
+
+dl.test dt {
+    color: var(--test-color-hl);
+}
+
+dl.bug dt a {
+    color: var(--bug-color-hl) !important;
+}
+
+dl.bug {
+    background: var(--bug-color-bg);
+    border-left: 8px solid var(--bug-color-hl);
+    color: var(--bug-color-text);
+}
+
+dl.bug dt a {
+    color: var(--bug-color-hl) !important;
+}
+
+dl.deprecated {
+    background: var(--deprecated-color-bg);
+    border-left: 8px solid var(--deprecated-color-hl);
+    color: var(--deprecated-color-text);
+}
+
+dl.deprecated dt a {
+    color: var(--deprecated-color-hl) !important;
+}
+
+dl.note dd, dl.warning dd, dl.pre dd, dl.post dd,
+dl.remark dd, dl.attention dd, dl.important dd, dl.invariant dd,
+dl.bug dd, dl.deprecated dd, dl.todo dd, dl.test dd {
+    margin-inline-start: 0px;
+}
+
+dl.invariant, dl.pre, dl.post {
+    background: var(--invariant-color-bg);
+    border-left: 8px solid var(--invariant-color-hl);
+    color: var(--invariant-color-text);
+}
+
+dl.invariant dt, dl.pre dt, dl.post dt {
+    color: var(--invariant-color-hl);
+}
+
+
+#projectrow
+{
+	height: 56px;
+}
+
+#projectlogo
+{
+	text-align: center;
+	vertical-align: bottom;
+	border-collapse: separate;
+}
+
+#projectlogo img
+{
+	border: 0px none;
+}
+
+#projectalign
+{
+        vertical-align: middle;
+        padding-left: 0.5em;
+}
+
+#projectname
+{
+	font-size: 200%;
+	font-family: var(--font-family-title);
+	margin: 0px;
+	padding: 2px 0px;
+}
+
+#side-nav #projectname
+{
+	font-size: 130%;
+}
+
+#projectbrief
+{
+	font-size: 90%;
+        font-family: var(--font-family-title);
+	margin: 0px;
+	padding: 0px;
+}
+
+#projectnumber
+{
+	font-size: 50%;
+	font-family: 50% var(--font-family-title);
+	margin: 0px;
+	padding: 0px;
+}
+
+#titlearea
+{
+	padding: 0px;
+	margin: 0px;
+	width: 100%;
+	border-bottom: 1px solid var(--title-separator-color);
+	background-color: var(--title-background-color);
+}
+
+.image
+{
+        text-align: center;
+}
+
+.dotgraph
+{
+        text-align: center;
+}
+
+.mscgraph
+{
+        text-align: center;
+}
+
+.plantumlgraph
+{
+        text-align: center;
+}
+
+.diagraph
+{
+        text-align: center;
+}
+
+.caption
+{
+	font-weight: bold;
+}
+
+dl.citelist {
+        margin-bottom:50px;
+}
+
+dl.citelist dt {
+        color:var(--citation-label-color);
+        float:left;
+        font-weight:bold;
+        margin-right:10px;
+        padding:5px;
+        text-align:right;
+        width:52px;
+}
+
+dl.citelist dd {
+        margin:2px 0 2px 72px;
+        padding:5px 0;
+}
+
+div.toc {
+        padding: 14px 25px;
+        background-color: var(--toc-background-color);
+        border: 1px solid var(--toc-border-color);
+        border-radius: 7px 7px 7px 7px;
+        float: right;
+        height: auto;
+        margin: 0 8px 10px 10px;
+        width: 200px;
+}
+
+div.toc li {
+        background: var(--toc-down-arrow-image) no-repeat scroll 0 5px transparent;
+        font: 10px/1.2 var(--font-family-toc);
+        margin-top: 5px;
+        padding-left: 10px;
+        padding-top: 2px;
+}
+
+div.toc h3 {
+        font: bold 12px/1.2 var(--font-family-toc);
+	color: var(--toc-header-color);
+        border-bottom: 0 none;
+        margin: 0;
+}
+
+div.toc ul {
+        list-style: none outside none;
+        border: medium none;
+        padding: 0px;
+}
+
+div.toc li[class^='level'] {
+        margin-left: 15px;
+}
+
+div.toc li.level1 {
+        margin-left: 0px;
+}
+
+div.toc li.empty {
+        background-image: none;
+        margin-top: 0px;
+}
+
+span.emoji {
+        /* font family used at the site: https://unicode.org/emoji/charts/full-emoji-list.html
+         * font-family: "Noto Color Emoji", "Apple Color Emoji", "Segoe UI Emoji", Times, Symbola, Aegyptus, Code2000, Code2001, Code2002, Musica, serif, LastResort;
+         */
+}
+
+span.obfuscator {
+  display: none;
+}
+
+.inherit_header {
+        font-weight: bold;
+        color: var(--inherit-header-color);
+        cursor: pointer;
+	-webkit-touch-callout: none;
+	-webkit-user-select: none;
+	-khtml-user-select: none;
+	-moz-user-select: none;
+	-ms-user-select: none;
+	user-select: none;
+}
+
+.inherit_header td {
+        padding: 6px 0px 2px 5px;
+}
+
+.inherit {
+        display: none;
+}
+
+tr.heading h2 {
+        margin-top: 12px;
+        margin-bottom: 4px;
+}
+
+/* tooltip related style info */
+
+.ttc {
+        position: absolute;
+        display: none;
+}
+
+#powerTip {
+	cursor: default;
+	/*white-space: nowrap;*/
+        color: var(--tooltip-foreground-color);
+	background-color: var(--tooltip-background-color);
+	border: 1px solid var(--tooltip-border-color);
+	border-radius: 4px 4px 4px 4px;
+	box-shadow: var(--tooltip-shadow);
+	display: none;
+	font-size: smaller;
+	max-width: 80%;
+	opacity: 0.9;
+	padding: 1ex 1em 1em;
+	position: absolute;
+	z-index: 2147483647;
+}
+
+#powerTip div.ttdoc {
+        color: var(--tooltip-doc-color);
+	font-style: italic;
+}
+
+#powerTip div.ttname a {
+        font-weight: bold;
+}
+
+#powerTip a {
+	color: var(--tooltip-link-color);
+}
+
+#powerTip div.ttname {
+        font-weight: bold;
+}
+
+#powerTip div.ttdeci {
+        color: var(--tooltip-declaration-color);
+}
+
+#powerTip div {
+        margin: 0px;
+        padding: 0px;
+        font-size: 12px;
+       	font-family: var(--font-family-tooltip);
+	line-height: 16px;
+}
+
+#powerTip:before, #powerTip:after {
+	content: "";
+	position: absolute;
+	margin: 0px;
+}
+
+#powerTip.n:after,  #powerTip.n:before,
+#powerTip.s:after,  #powerTip.s:before,
+#powerTip.w:after,  #powerTip.w:before,
+#powerTip.e:after,  #powerTip.e:before,
+#powerTip.ne:after, #powerTip.ne:before,
+#powerTip.se:after, #powerTip.se:before,
+#powerTip.nw:after, #powerTip.nw:before,
+#powerTip.sw:after, #powerTip.sw:before {
+	border: solid transparent;
+	content: " ";
+	height: 0;
+	width: 0;
+	position: absolute;
+}
+
+#powerTip.n:after,  #powerTip.s:after,
+#powerTip.w:after,  #powerTip.e:after,
+#powerTip.nw:after, #powerTip.ne:after,
+#powerTip.sw:after, #powerTip.se:after {
+	border-color: rgba(255, 255, 255, 0);
+}
+
+#powerTip.n:before,  #powerTip.s:before,
+#powerTip.w:before,  #powerTip.e:before,
+#powerTip.nw:before, #powerTip.ne:before,
+#powerTip.sw:before, #powerTip.se:before {
+	border-color: rgba(128, 128, 128, 0);
+}
+
+#powerTip.n:after,  #powerTip.n:before,
+#powerTip.ne:after, #powerTip.ne:before,
+#powerTip.nw:after, #powerTip.nw:before {
+	top: 100%;
+}
+
+#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after {
+	border-top-color: var(--tooltip-background-color);
+	border-width: 10px;
+	margin: 0px -10px;
+}
+#powerTip.n:before, #powerTip.ne:before, #powerTip.nw:before {
+	border-top-color: var(--tooltip-border-color);
+	border-width: 11px;
+	margin: 0px -11px;
+}
+#powerTip.n:after, #powerTip.n:before {
+	left: 50%;
+}
+
+#powerTip.nw:after, #powerTip.nw:before {
+	right: 14px;
+}
+
+#powerTip.ne:after, #powerTip.ne:before {
+	left: 14px;
+}
+
+#powerTip.s:after,  #powerTip.s:before,
+#powerTip.se:after, #powerTip.se:before,
+#powerTip.sw:after, #powerTip.sw:before {
+	bottom: 100%;
+}
+
+#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after {
+	border-bottom-color: var(--tooltip-background-color);
+	border-width: 10px;
+	margin: 0px -10px;
+}
+
+#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before {
+	border-bottom-color: var(--tooltip-border-color);
+	border-width: 11px;
+	margin: 0px -11px;
+}
+
+#powerTip.s:after, #powerTip.s:before {
+	left: 50%;
+}
+
+#powerTip.sw:after, #powerTip.sw:before {
+	right: 14px;
+}
+
+#powerTip.se:after, #powerTip.se:before {
+	left: 14px;
+}
+
+#powerTip.e:after, #powerTip.e:before {
+	left: 100%;
+}
+#powerTip.e:after {
+	border-left-color: var(--tooltip-border-color);
+	border-width: 10px;
+	top: 50%;
+	margin-top: -10px;
+}
+#powerTip.e:before {
+	border-left-color: var(--tooltip-border-color);
+	border-width: 11px;
+	top: 50%;
+	margin-top: -11px;
+}
+
+#powerTip.w:after, #powerTip.w:before {
+	right: 100%;
+}
+#powerTip.w:after {
+	border-right-color: var(--tooltip-border-color);
+	border-width: 10px;
+	top: 50%;
+	margin-top: -10px;
+}
+#powerTip.w:before {
+	border-right-color: var(--tooltip-border-color);
+	border-width: 11px;
+	top: 50%;
+	margin-top: -11px;
+}
+
+@media print
+{
+  #top { display: none; }
+  #side-nav { display: none; }
+  #nav-path { display: none; }
+  body { overflow:visible; }
+  h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
+  .summary { display: none; }
+  .memitem { page-break-inside: avoid; }
+  #doc-content
+  {
+    margin-left:0 !important;
+    height:auto !important;
+    width:auto !important;
+    overflow:inherit;
+    display:inline;
+  }
+}
+
+/* @group Markdown */
+
+table.markdownTable {
+	border-collapse:collapse;
+        margin-top: 4px;
+        margin-bottom: 4px;
+}
+
+table.markdownTable td, table.markdownTable th {
+	border: 1px solid var(--table-cell-border-color);
+	padding: 3px 7px 2px;
+}
+
+table.markdownTable tr {
+}
+
+th.markdownTableHeadLeft, th.markdownTableHeadRight, th.markdownTableHeadCenter, th.markdownTableHeadNone {
+	background-color: var(--table-header-background-color);
+	color: var(--table-header-foreground-color);
+	font-size: 110%;
+	padding-bottom: 4px;
+	padding-top: 5px;
+}
+
+th.markdownTableHeadLeft, td.markdownTableBodyLeft {
+	text-align: left
+}
+
+th.markdownTableHeadRight, td.markdownTableBodyRight {
+	text-align: right
+}
+
+th.markdownTableHeadCenter, td.markdownTableBodyCenter {
+	text-align: center
+}
+
+tt, code, kbd
+{
+  display: inline-block;
+}
+tt, code, kbd
+{
+  vertical-align: top;
+}
+/* @end */
+
+u {
+	text-decoration: underline;
+}
+
+details>summary {
+  list-style-type: none;
+}
+
+details > summary::-webkit-details-marker {
+    display: none;
+}
+
+details>summary::before {
+    content: "\25ba";
+    padding-right:4px;
+    font-size: 80%;
+}
+
+details[open]>summary::before {
+    content: "\25bc";
+    padding-right:4px;
+    font-size: 80%;
+}
+
+body {
+    scrollbar-color: var(--scrollbar-thumb-color) var(--scrollbar-background-color);
+}
+
+::-webkit-scrollbar {
+        background-color: var(--scrollbar-background-color);
+        height: 12px;
+        width: 12px;
+}
+::-webkit-scrollbar-thumb {
+        border-radius: 6px;
+        box-shadow: inset 0 0 12px 12px var(--scrollbar-thumb-color);
+        border: solid 2px transparent;
+}
+::-webkit-scrollbar-corner {
+        background-color: var(--scrollbar-background-color);
+}
+
diff --git a/assets/docs/html/doxygen.svg b/assets/docs/html/doxygen.svg
new file mode 100644
index 0000000000000000000000000000000000000000..79a76354078d0fe34ea30c3a481405c720937483
--- /dev/null
+++ b/assets/docs/html/doxygen.svg
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+ "https://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" viewBox="0 0 104 31" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <defs>
+  <linearGradient id="a">
+   <stop stop-color="#5373B4" offset="0"/>
+   <stop stop-color="#7C95C6" offset="1"/>
+  </linearGradient>
+  <linearGradient id="d" x1="31.474" x2="31.474" y1="24.821" y2="26.773" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+  <linearGradient id="c" x1="31.474" x2="31.474" y1="24.821" y2="26.773" gradientTransform="matrix(.6816 0 0 1.0248 72.391 -.91809)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+  <linearGradient id="b" x1="56.295" x2="56.295" y1="24.622" y2="26.574" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+  <linearGradient id="e" x1="49.067" x2="48.956" y1="19.719" y2="9.5227" gradientTransform="matrix(.97968 0 0 1.0207 -.25579 -.25579)" gradientUnits="userSpaceOnUse">
+   <stop stop-color="#C0CCE3" offset="0"/>
+   <stop stop-color="#EEF1F7" offset="1"/>
+  </linearGradient>
+  <filter id="f" x="-.010676" y="-.045304" width="1.0214" height="1.0906" color-interpolation-filters="sRGB">
+   <feGaussianBlur stdDeviation="0.45293203"/>
+  </filter>
+ </defs>
+ <g>
+  <path transform="translate(-2.5759 -27.848)" d="m13.609 32.203v6.8633h-0.05078c-0.40533-0.66867-0.96254-1.1715-1.6719-1.5059-0.69244-0.35193-1.4282-0.52734-2.2051-0.52734-0.96267 0-1.807 0.2027-2.5332 0.60742-0.72622 0.38713-1.3344 0.90556-1.8242 1.5566-0.47289 0.65108-0.83456 1.4092-1.0879 2.2715-0.23644 0.84464-0.35547 1.7236-0.35547 2.6387 0 0.95022 0.11902 1.8643 0.35547 2.7441 0.25333 0.87983 0.615 1.6633 1.0879 2.3496 0.48978 0.66867 1.1065 1.2066 1.8496 1.6113 0.74311 0.38713 1.6044 0.58008 2.584 0.58008 0.86133 0 1.6311-0.15787 2.3066-0.47461 0.69244-0.33434 1.2497-0.87227 1.6719-1.6113h0.05078v1.7422h3.4199v-18.846zm12.875 4.8301c-1.0302 0-1.9596 0.17541-2.7871 0.52734-0.82756 0.33434-1.5358 0.81965-2.127 1.4531-0.59111 0.61588-1.0483 1.3721-1.3691 2.2695-0.32089 0.87983-0.48047 1.866-0.48047 2.957s0.15958 2.0752 0.48047 2.9551c0.32089 0.87983 0.77803 1.6361 1.3691 2.2695 0.59111 0.61588 1.2994 1.0914 2.127 1.4258 0.82756 0.33434 1.7569 0.50195 2.7871 0.50195 1.0302 0 1.9596-0.16762 2.7871-0.50195 0.84444-0.33434 1.5612-0.8099 2.1523-1.4258 0.59111-0.63348 1.0483-1.3897 1.3691-2.2695 0.32089-0.87983 0.48047-1.8641 0.48047-2.9551s-0.15958-2.0772-0.48047-2.957c-0.32089-0.89743-0.77803-1.6536-1.3691-2.2695-0.59111-0.63348-1.3079-1.1188-2.1523-1.4531-0.82756-0.35193-1.7569-0.52734-2.7871-0.52734zm41.715 0c-0.912 0-1.7223 0.18516-2.4316 0.55469-0.69244 0.36953-1.2752 0.87043-1.748 1.5039-0.47289 0.61588-0.83651 1.337-1.0898 2.1641-0.23645 0.80944-0.35352 1.6553-0.35352 2.5352 0 0.93262 0.10007 1.8214 0.30273 2.666 0.21956 0.82704 0.55767 1.556 1.0137 2.1895 0.456 0.61588 1.0387 1.109 1.748 1.4785 0.70933 0.35193 1.5536 0.5293 2.5332 0.5293 0.79378 0 1.5446-0.16762 2.2539-0.50195 0.72622-0.35193 1.2834-0.88986 1.6719-1.6113h0.05078v1.7949c0.01689 0.96782-0.21071 1.7689-0.68359 2.4023-0.456 0.63348-1.1898 0.95117-2.2031 0.95117-0.64178 0-1.2075-0.14228-1.6973-0.42383-0.48978-0.26395-0.81939-0.74731-0.98828-1.4512h-3.5723c0.05067 0.77425 0.25276 1.435 0.60742 1.9805 0.37156 0.56309 0.8287 1.0192 1.3691 1.3711 0.55733 0.35193 1.1656 0.60726 1.8242 0.76562 0.67556 0.17597 1.3328 0.26562 1.9746 0.26562 1.5031 0 2.7025-0.21245 3.5977-0.63477 0.89511-0.42232 1.5798-0.94076 2.0527-1.5566 0.47289-0.59829 0.777-1.2493 0.91211-1.9531 0.152-0.70386 0.22656-1.3295 0.22656-1.875v-12.775h-3.4199v1.8223h-0.05078c-0.43911-0.79185-0.98782-1.3551-1.6465-1.6895-0.64178-0.33434-1.3926-0.50195-2.2539-0.50195zm16.523 0c-0.99644 0-1.9088 0.18516-2.7363 0.55469-0.81067 0.36953-1.5124 0.88018-2.1035 1.5312-0.59111 0.63348-1.0463 1.3897-1.3672 2.2695s-0.48047 1.831-0.48047 2.8516c0 1.0558 0.15108 2.0225 0.45508 2.9023 0.32089 0.87983 0.76758 1.6361 1.3418 2.2695 0.57422 0.63348 1.276 1.1266 2.1035 1.4785 0.82756 0.33434 1.7569 0.50195 2.7871 0.50195 1.4862 0 2.7517-0.35277 3.7988-1.0566 1.0471-0.70387 1.8254-1.8733 2.332-3.5098h-3.168c-0.11822 0.42232-0.43934 0.82772-0.96289 1.2148-0.52355 0.36953-1.1468 0.55274-1.873 0.55273-1.0133 0-1.7916-0.27286-2.332-0.81836-0.54044-0.5455-0.83605-1.4245-0.88672-2.6387h9.4492c0.06756-1.0558-0.01551-2.0673-0.25195-3.0352-0.23644-0.96782-0.62557-1.8293-1.166-2.5859-0.52356-0.75666-1.1998-1.355-2.0273-1.7949-0.82756-0.45751-1.7974-0.6875-2.9121-0.6875zm16.189 0c-0.76 0-1.5023 0.18516-2.2285 0.55469-0.72622 0.35193-1.3174 0.92299-1.7734 1.7148h-0.07617v-1.9004h-3.4199v13.646h3.5977v-7.1523c0-1.3901 0.21909-2.3841 0.6582-2.9824 0.43911-0.61588 1.1494-0.92383 2.1289-0.92383 0.86133 0 1.4611 0.28066 1.7988 0.84375 0.33777 0.5455 0.50586 1.3816 0.50586 2.5078v7.707h3.5976v-8.3926c0-0.84464-0.0765-1.6106-0.22851-2.2969-0.13511-0.70387-0.37971-1.2925-0.73438-1.7676-0.35466-0.49271-0.84386-0.87277-1.4688-1.1367-0.608-0.28155-1.3948-0.42188-2.3574-0.42188zm-66.063 0.36914 4.3066 6.4668-4.7129 7.1797h4.0293l2.7363-4.3027 2.7344 4.3027h4.1055l-4.8398-7.2578 4.3066-6.3887h-3.9766l-2.2793 3.5645-2.3066-3.5645zm13.275 0 4.584 12.803c0.10133 0.26395 0.15234 0.54461 0.15234 0.84375 0 0.40472-0.11707 0.77504-0.35352 1.1094-0.21956 0.33434-0.56617 0.52729-1.0391 0.58008-0.35467 0.0176-0.70979 0.0098-1.0645-0.02539-0.35467-0.03519-0.70128-0.07028-1.0391-0.10547v3.0879c0.37156 0.03519 0.73518 0.06051 1.0898 0.07813 0.37156 0.03519 0.74368 0.05273 1.1152 0.05273 1.2329 0 2.1943-0.23778 2.8867-0.71289 0.69244-0.47511 1.2326-1.2664 1.6211-2.375l5.4727-15.336h-3.7246l-2.8613 9.3438h-0.05078l-2.9648-9.3438zm-37.48 2.4551c0.59111 0 1.0823 0.12279 1.4707 0.36914 0.38844 0.24635 0.6991 0.57184 0.93555 0.97656 0.25333 0.38713 0.43187 0.84515 0.5332 1.373 0.10133 0.5103 0.15234 1.0482 0.15234 1.6113 0 0.56309-0.05101 1.1069-0.15234 1.6348-0.10133 0.5279-0.27137 1.0035-0.50781 1.4258-0.23644 0.40472-0.5556 0.73021-0.96094 0.97656-0.38844 0.24635-0.87959 0.36914-1.4707 0.36914-0.55733 0-1.038-0.12279-1.4434-0.36914-0.38844-0.26395-0.71806-0.59723-0.98828-1.002-0.25333-0.42232-0.43842-0.89788-0.55664-1.4258s-0.17773-1.0561-0.17773-1.584c-1e-7 -0.56309 0.05101-1.0991 0.15234-1.6094 0.11822-0.5279 0.29481-0.99567 0.53125-1.4004 0.25333-0.40472 0.58295-0.73021 0.98828-0.97656 0.40533-0.24635 0.90303-0.36914 1.4941-0.36914zm15.84 0c0.608 0 1.1142 0.13253 1.5195 0.39648 0.42222 0.24635 0.75184 0.57184 0.98828 0.97656 0.25333 0.40472 0.42992 0.87054 0.53125 1.3984 0.10133 0.5279 0.15234 1.0658 0.15234 1.6113 0 0.5455-0.05101 1.0815-0.15234 1.6094-0.10134 0.5103-0.27792 0.97612-0.53125 1.3984-0.23644 0.40472-0.56606 0.73021-0.98828 0.97656-0.40533 0.24635-0.91153 0.36914-1.5195 0.36914-0.608 0-1.1142-0.12279-1.5195-0.36914s-0.73495-0.57184-0.98828-0.97656c-0.23644-0.42232-0.40648-0.88814-0.50781-1.3984-0.10133-0.5279-0.15234-1.0639-0.15234-1.6094 0-0.5455 0.05101-1.0834 0.15234-1.6113 0.10133-0.5279 0.27137-0.99371 0.50781-1.3984 0.25333-0.40472 0.58295-0.73021 0.98828-0.97656 0.40533-0.26395 0.91153-0.39648 1.5195-0.39648zm42.602 0c0.59111 0 1.0803 0.11499 1.4688 0.34375 0.38844 0.22876 0.70105 0.5367 0.9375 0.92383 0.23644 0.38713 0.40648 0.8354 0.50781 1.3457 0.10133 0.49271 0.15039 1.0209 0.15039 1.584 0 0.4927-0.06606 0.96827-0.20117 1.4258-0.11822 0.43992-0.30526 0.83557-0.55859 1.1875-0.25333 0.35193-0.57445 0.63259-0.96289 0.84375-0.38844 0.21116-0.83513 0.31836-1.3418 0.31836-0.55733 0-1.021-0.12474-1.3926-0.37109-0.37156-0.24635-0.67566-0.56209-0.91211-0.94922-0.21956-0.38713-0.38109-0.81786-0.48242-1.293-0.08444-0.49271-0.12695-0.98581-0.12695-1.4785 0-0.5103 0.05101-0.99366 0.15234-1.4512 0.11822-0.47511 0.29676-0.89025 0.5332-1.2422 0.25333-0.36953 0.55744-0.65993 0.91211-0.87109 0.37156-0.21116 0.80974-0.31641 1.3164-0.31641zm15.535 0c0.87822 0 1.529 0.24753 1.9512 0.74023 0.43911 0.49271 0.74322 1.2138 0.91211 2.1641h-5.8535c0.01689-0.26395 0.0679-0.5641 0.15234-0.89844 0.10133-0.33434 0.26287-0.65008 0.48242-0.94922 0.23644-0.29914 0.54055-0.54667 0.91211-0.74023 0.38845-0.21116 0.86914-0.31641 1.4434-0.31641z" filter="url(#f)" opacity=".3" stroke="#969696"/>
+  <path d="m0.97202 24.161 43.605-0.0019 0.0508 3.3061-43.6 0.04174z" fill="url(#d)" stroke="#000" stroke-width=".5"/>
+  <path d="m10.283 3.5547v6.8633h-0.05078c-0.40533-0.66867-0.96254-1.1715-1.6719-1.5059-0.69244-0.35193-1.4282-0.52734-2.2051-0.52734-0.96267 0-1.807 0.2027-2.5332 0.60742-0.72622 0.38713-1.3344 0.90556-1.8242 1.5566-0.47289 0.65108-0.83456 1.4092-1.0879 2.2715-0.23644 0.84464-0.35547 1.7236-0.35547 2.6387 0 0.95022 0.11902 1.8643 0.35547 2.7441 0.25333 0.87983 0.615 1.6633 1.0879 2.3496 0.48978 0.66867 1.1065 1.2066 1.8496 1.6113 0.74311 0.38713 1.6044 0.58008 2.584 0.58008 0.86133 0 1.6311-0.15787 2.3066-0.47461 0.69244-0.33434 1.2497-0.87227 1.6719-1.6113h0.05078v1.7422h3.4199v-18.846zm12.875 4.8301c-1.0302 0-1.9596 0.17541-2.7871 0.52734-0.82756 0.33434-1.5358 0.81965-2.127 1.4531-0.59111 0.61588-1.0483 1.3721-1.3691 2.2695-0.32089 0.87983-0.48047 1.866-0.48047 2.957s0.15958 2.0752 0.48047 2.9551c0.32089 0.87983 0.77803 1.6361 1.3691 2.2695 0.59111 0.61588 1.2994 1.0914 2.127 1.4258 0.82756 0.33434 1.7569 0.50195 2.7871 0.50195 1.0302 0 1.9596-0.16762 2.7871-0.50195 0.84444-0.33434 1.5612-0.8099 2.1523-1.4258 0.59111-0.63348 1.0483-1.3897 1.3691-2.2695 0.32089-0.87983 0.48047-1.8641 0.48047-2.9551s-0.15958-2.0772-0.48047-2.957c-0.32089-0.89743-0.77803-1.6536-1.3691-2.2695-0.59111-0.63348-1.3079-1.1188-2.1523-1.4531-0.82756-0.35193-1.7569-0.52734-2.7871-0.52734zm41.715 0c-0.912 0-1.7223 0.18516-2.4316 0.55469-0.69244 0.36953-1.2752 0.87043-1.748 1.5039-0.47289 0.61588-0.83651 1.337-1.0898 2.1641-0.23644 0.80944-0.35352 1.6553-0.35352 2.5352 0 0.93262 0.10007 1.8214 0.30273 2.666 0.21956 0.82704 0.55767 1.556 1.0137 2.1895 0.456 0.61588 1.0387 1.109 1.748 1.4785 0.70933 0.35193 1.5536 0.5293 2.5332 0.5293 0.79378 0 1.5446-0.16762 2.2539-0.50195 0.72622-0.35193 1.2834-0.88986 1.6719-1.6113h0.05078v1.7949c0.01689 0.96782-0.21071 1.7689-0.68359 2.4023-0.456 0.63348-1.1898 0.95117-2.2031 0.95117-0.64178 0-1.2075-0.14228-1.6973-0.42383-0.48978-0.26395-0.81939-0.74731-0.98828-1.4512h-3.5723c0.05067 0.77425 0.25276 1.435 0.60742 1.9805 0.37156 0.56309 0.8287 1.0192 1.3691 1.3711 0.55733 0.35193 1.1656 0.60726 1.8242 0.76562 0.67556 0.17597 1.3328 0.26562 1.9746 0.26562 1.5031 0 2.7025-0.21245 3.5977-0.63477 0.89511-0.42232 1.5798-0.94076 2.0527-1.5566 0.47289-0.59829 0.777-1.2493 0.91211-1.9531 0.152-0.70386 0.22656-1.3295 0.22656-1.875v-12.775h-3.4199v1.8223h-0.05078c-0.43911-0.79185-0.98782-1.3551-1.6465-1.6895-0.64178-0.33434-1.3926-0.50195-2.2539-0.50195zm16.523 0c-0.99644 0-1.9088 0.18516-2.7363 0.55469-0.81067 0.36953-1.5124 0.88017-2.1035 1.5312-0.59111 0.63348-1.0463 1.3897-1.3672 2.2695s-0.48047 1.831-0.48047 2.8516c0 1.0558 0.15108 2.0225 0.45508 2.9023 0.32089 0.87983 0.76758 1.6361 1.3418 2.2695 0.57422 0.63348 1.276 1.1266 2.1035 1.4785 0.82756 0.33434 1.7569 0.50195 2.7871 0.50195 1.4862 0 2.7517-0.35278 3.7988-1.0566 1.0471-0.70386 1.8254-1.8733 2.332-3.5098h-3.168c-0.11822 0.42232-0.43934 0.82772-0.96289 1.2148-0.52355 0.36953-1.1468 0.55274-1.873 0.55273-1.0133 0-1.7916-0.27286-2.332-0.81836-0.54044-0.5455-0.83605-1.4245-0.88672-2.6387h9.4492c0.06756-1.0558-0.01551-2.0673-0.25195-3.0352-0.23644-0.96782-0.62557-1.8293-1.166-2.5859-0.52356-0.75666-1.1998-1.355-2.0273-1.7949-0.82756-0.45751-1.7974-0.6875-2.9121-0.6875zm16.189 0c-0.76 0-1.5023 0.18516-2.2285 0.55469-0.72622 0.35193-1.3174 0.923-1.7734 1.7148h-0.07617v-1.9004h-3.4199v13.646h3.5977v-7.1523c0-1.3901 0.21909-2.3841 0.6582-2.9824 0.43911-0.61588 1.1494-0.92383 2.1289-0.92383 0.86133 0 1.461 0.28066 1.7988 0.84375 0.33778 0.5455 0.50586 1.3816 0.50586 2.5078v7.707h3.5977v-8.3926c0-0.84464-0.0765-1.6106-0.22852-2.2969-0.13511-0.70387-0.3797-1.2925-0.73437-1.7676-0.35466-0.49271-0.84386-0.87277-1.4688-1.1367-0.608-0.28155-1.3948-0.42188-2.3574-0.42188zm-66.062 0.36914 4.3066 6.4668-4.7129 7.1797h4.0293l2.7363-4.3027 2.7344 4.3027h4.1055l-4.8398-7.2578 4.3066-6.3887h-3.9766l-2.2793 3.5645-2.3066-3.5645zm13.275 0 4.584 12.803c0.10133 0.26395 0.15234 0.54461 0.15234 0.84375 0 0.40472-0.11707 0.77504-0.35352 1.1094-0.21956 0.33434-0.56617 0.52729-1.0391 0.58008-0.35467 0.0176-0.70979 0.0098-1.0645-0.02539-0.35467-0.03519-0.70128-0.07027-1.0391-0.10547v3.0879c0.37156 0.03519 0.73518 0.06052 1.0898 0.07813 0.37156 0.03519 0.74368 0.05273 1.1152 0.05273 1.2329 0 2.1943-0.23778 2.8867-0.71289 0.69244-0.47511 1.2326-1.2664 1.6211-2.375l5.4727-15.336h-3.7246l-2.8613 9.3437h-0.05078l-2.9648-9.3437zm-37.48 2.4551c0.59111 0 1.0823 0.12279 1.4707 0.36914s0.6991 0.57184 0.93555 0.97656c0.25333 0.38713 0.43187 0.84515 0.5332 1.373 0.10133 0.5103 0.15234 1.0482 0.15234 1.6113 0 0.56309-0.05101 1.1069-0.15234 1.6348-0.10133 0.5279-0.27137 1.0035-0.50781 1.4258-0.23644 0.40472-0.5556 0.73021-0.96094 0.97656-0.38844 0.24635-0.87959 0.36914-1.4707 0.36914-0.55733 0-1.038-0.12279-1.4434-0.36914-0.38844-0.26395-0.71806-0.59723-0.98828-1.002-0.25333-0.42232-0.43842-0.89788-0.55664-1.4258s-0.17773-1.0561-0.17773-1.584c-1e-7 -0.56309 0.05101-1.0991 0.15234-1.6094 0.11822-0.5279 0.29481-0.99567 0.53125-1.4004 0.25333-0.40472 0.58295-0.73021 0.98828-0.97656 0.40533-0.24635 0.90303-0.36914 1.4941-0.36914zm15.84 0c0.608 0 1.1142 0.13254 1.5195 0.39648 0.42222 0.24635 0.75184 0.57184 0.98828 0.97656 0.25333 0.40472 0.42992 0.87054 0.53125 1.3984 0.10133 0.5279 0.15234 1.0658 0.15234 1.6113 0 0.5455-0.05101 1.0815-0.15234 1.6094-0.10133 0.5103-0.27792 0.97612-0.53125 1.3984-0.23644 0.40472-0.56606 0.73021-0.98828 0.97656-0.40533 0.24635-0.91153 0.36914-1.5195 0.36914-0.608 0-1.1142-0.12279-1.5195-0.36914s-0.73495-0.57184-0.98828-0.97656c-0.23644-0.42232-0.40648-0.88813-0.50781-1.3984-0.10133-0.5279-0.15234-1.0639-0.15234-1.6094 0-0.5455 0.05101-1.0834 0.15234-1.6113 0.10133-0.5279 0.27137-0.99371 0.50781-1.3984 0.25333-0.40472 0.58295-0.73021 0.98828-0.97656 0.40533-0.26395 0.91153-0.39648 1.5195-0.39648zm42.602 0c0.59111 0 1.0803 0.11499 1.4688 0.34375 0.38844 0.22876 0.70106 0.5367 0.9375 0.92383 0.23644 0.38713 0.40648 0.8354 0.50781 1.3457 0.10133 0.49271 0.15039 1.0209 0.15039 1.584 0 0.49271-0.06606 0.96827-0.20117 1.4258-0.11822 0.43992-0.30526 0.83557-0.55859 1.1875-0.25333 0.35193-0.57445 0.63259-0.96289 0.84375-0.38844 0.21116-0.83513 0.31836-1.3418 0.31836-0.55733 0-1.021-0.12474-1.3926-0.37109-0.37156-0.24635-0.67566-0.56209-0.91211-0.94922-0.21956-0.38713-0.38109-0.81786-0.48242-1.293-0.08444-0.49271-0.12695-0.98581-0.12695-1.4785 0-0.5103 0.05101-0.99366 0.15234-1.4512 0.11822-0.47511 0.29676-0.89026 0.5332-1.2422 0.25333-0.36953 0.55744-0.65993 0.91211-0.87109 0.37156-0.21116 0.80974-0.31641 1.3164-0.31641zm15.535 0c0.87822 0 1.529 0.24753 1.9512 0.74024 0.43911 0.49271 0.74322 1.2138 0.91211 2.1641h-5.8535c0.01689-0.26395 0.0679-0.5641 0.15234-0.89844 0.10133-0.33434 0.26287-0.65008 0.48242-0.94922 0.23644-0.29914 0.54055-0.54667 0.91211-0.74023 0.38845-0.21116 0.86914-0.31641 1.4434-0.31641z" fill="url(#e)" stroke="#4665A2" stroke-width=".7"/>
+  <path d="m52.988 27.291c0.99602-1.0359 1.3944-1.8725 1.7928-3.1076l3.8247-0.03984c0.3113 1.6096 0.82413 2.5137 1.6335 3.1474z" fill="url(#b)" stroke="#000" stroke-width=".5"/>
+  <path d="m73.89 24.04 28.885-0.2011-0.12476 3.3879-31.033 0.16229c1.2621-1.0234 1.9665-2.2859 2.2724-3.3491z" fill="url(#c)" stroke="#000" stroke-width=".41788"/>
+ </g>
+</svg>
diff --git a/assets/docs/html/doxygen_crawl.html b/assets/docs/html/doxygen_crawl.html
new file mode 100644
index 0000000000000000000000000000000000000000..b62c6c403b21226d93421911a42b46e33a9146d0
--- /dev/null
+++ b/assets/docs/html/doxygen_crawl.html
@@ -0,0 +1,203 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<title>Validator / crawler helper</title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+</head>
+<body>
+<a href="_application_8h_source.html"/>
+<a href="_bob_builder_director_8h_source.html"/>
+<a href="_button_8h_source.html"/>
+<a href="_context_8h_source.html"/>
+<a href="_game_builders_8h_source.html"/>
+<a href="_game_state_8h_source.html"/>
+<a href="_i_drawable_8h_source.html"/>
+<a href="_i_entity_8h_source.html"/>
+<a href="_i_game_builder_8h_source.html"/>
+<a href="_i_game_event_8h_source.html"/>
+<a href="_i_observer_8h_source.html"/>
+<a href="_i_select_command_8h_source.html"/>
+<a href="_i_state_8h_source.html"/>
+<a href="_i_window_keeper_8h_source.html"/>
+<a href="_maze_8h_source.html"/>
+<a href="_menu_8h_source.html"/>
+<a href="_menu_in_game_8h_source.html"/>
+<a href="_my_texture_8h_source.html"/>
+<a href="_pacman_8h_source.html"/>
+<a href="_select_state_8h_source.html"/>
+<a href="_texture___sound_8h_source.html"/>
+<a href="_theme_manager_8h_source.html"/>
+<a href="annotated.html"/>
+<a href="class_application-members.html"/>
+<a href="class_application.html"/>
+<a href="class_background_texture-members.html"/>
+<a href="class_background_texture.html"/>
+<a href="class_button-members.html"/>
+<a href="class_button.html"/>
+<a href="class_change_state_command-members.html"/>
+<a href="class_change_state_command.html"/>
+<a href="class_choose_button-members.html"/>
+<a href="class_choose_button.html"/>
+<a href="class_common_builder-members.html"/>
+<a href="class_common_builder.html"/>
+<a href="class_common_builder.html#a4e45999e05a45814ed25ed3adbbe07e0"/>
+<a href="class_common_builder.html#aafef8d08b8bfdfccfde6ff56bfb99987"/>
+<a href="class_common_builder.html#ace9b0433bd9b849970e2b96965818789"/>
+<a href="class_common_builder.html#ae920c0a91e61aff620096c100e496da0"/>
+<a href="class_complex_builder-members.html"/>
+<a href="class_complex_builder.html"/>
+<a href="class_complex_builder.html#a93755bc2d5ac20722de6bce3d35aa336"/>
+<a href="class_complex_builder.html#ac0dfa4956df4c1d1d9a61aa186fc8ac0"/>
+<a href="class_context_manager-members.html"/>
+<a href="class_context_manager.html"/>
+<a href="class_context_manager.html#a34dc3ea752a37fe9c54dff33e1c4b138"/>
+<a href="class_context_manager.html#a54b7081b2e31ec59e3a06ef7b8eeed8e"/>
+<a href="class_context_manager.html#a690898db09f92499c35fdbf24a7c3821"/>
+<a href="class_delete_static_entity-members.html"/>
+<a href="class_delete_static_entity.html"/>
+<a href="class_delete_static_entity.html#aadc4bbbd570e947fca78e222dbfacb43"/>
+<a href="class_enemy-members.html"/>
+<a href="class_enemy.html"/>
+<a href="class_enemy.html#a12c591e7c61ccafe8f0c0a5727434d2f"/>
+<a href="class_enemy.html#a34d900423f808c057a766daca104c6f6"/>
+<a href="class_enemy.html#aae122c696ec1c65f90d7625683183a67"/>
+<a href="class_enemy_texture-members.html"/>
+<a href="class_enemy_texture.html"/>
+<a href="class_exit_command-members.html"/>
+<a href="class_exit_command.html"/>
+<a href="class_exit_state-members.html"/>
+<a href="class_exit_state.html"/>
+<a href="class_food-members.html"/>
+<a href="class_food.html"/>
+<a href="class_food.html#a3363e490287b67049c6771f56911d582"/>
+<a href="class_food.html#a66afb32708f97daf5bca2fae17ca3ad2"/>
+<a href="class_food.html#a75d4d7f76fd495cc8133302ca9fdc485"/>
+<a href="class_food_texture-members.html"/>
+<a href="class_food_texture.html"/>
+<a href="class_game_builder_director-members.html"/>
+<a href="class_game_builder_director.html"/>
+<a href="class_game_command-members.html"/>
+<a href="class_game_command.html"/>
+<a href="class_game_state-members.html"/>
+<a href="class_game_state.html"/>
+<a href="class_game_state.html#a180391dfe966058da0389146534e66d0"/>
+<a href="class_game_state.html#a2c36ada0cae89f91d956e2c91b070893"/>
+<a href="class_game_state.html#a3610da76344c5c2cbcc5921f877226dc"/>
+<a href="class_game_state.html#a90b51ee7191c9fd1fc5e207bc35f1153"/>
+<a href="class_i_entity-members.html"/>
+<a href="class_i_entity.html"/>
+<a href="class_i_game_builder-members.html"/>
+<a href="class_i_game_builder.html"/>
+<a href="class_i_game_event-members.html"/>
+<a href="class_i_game_event.html"/>
+<a href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711"/>
+<a href="class_i_observer-members.html"/>
+<a href="class_i_observer.html"/>
+<a href="class_i_room_side-members.html"/>
+<a href="class_i_room_side.html"/>
+<a href="class_i_select_command-members.html"/>
+<a href="class_i_select_command.html"/>
+<a href="class_i_state-members.html"/>
+<a href="class_i_state.html"/>
+<a href="class_i_visitable-members.html"/>
+<a href="class_i_visitable.html"/>
+<a href="class_i_visitor-members.html"/>
+<a href="class_i_visitor.html"/>
+<a href="class_i_window_keeper-members.html"/>
+<a href="class_i_window_keeper.html"/>
+<a href="class_i_window_keeper.html#a46683ebaa51a36a8bb6bb22ed12b83b7"/>
+<a href="class_i_window_keeper.html#a973ef4befa8fd3b1fbb7e05a2c5904da"/>
+<a href="class_i_window_keeper.html#aef0780725b6f210bcbeb3b03da2445b8"/>
+<a href="class_lost_game-members.html"/>
+<a href="class_lost_game.html"/>
+<a href="class_maze-members.html"/>
+<a href="class_maze.html"/>
+<a href="class_menu-members.html"/>
+<a href="class_menu.html"/>
+<a href="class_menu.html#a4868e5ef14960d420dc79c307d1a78cb"/>
+<a href="class_menu.html#a9174cfc103dba0ee0613196385691872"/>
+<a href="class_menu.html#aa9374182bab451e7f7bb8cc02b0db0ee"/>
+<a href="class_menu_game-members.html"/>
+<a href="class_menu_game.html"/>
+<a href="class_my_texture-members.html"/>
+<a href="class_my_texture.html"/>
+<a href="class_pacman-members.html"/>
+<a href="class_pacman.html"/>
+<a href="class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2"/>
+<a href="class_pacman.html#aa957cbb7b0ad1bc1f6ef2aac82423cd8"/>
+<a href="class_pacman.html#ac4b928c45d22d9814a02b7a621c5ae7c"/>
+<a href="class_pacman.html#ad41930fae2878425f80e4fea614f3a3d"/>
+<a href="class_pacman_texture-members.html"/>
+<a href="class_pacman_texture.html"/>
+<a href="class_pacman_texture2-members.html"/>
+<a href="class_pacman_texture2.html"/>
+<a href="class_pass-members.html"/>
+<a href="class_pass.html"/>
+<a href="class_room-members.html"/>
+<a href="class_room.html"/>
+<a href="class_score_count-members.html"/>
+<a href="class_score_count.html"/>
+<a href="class_score_count.html#ac3920f1272e0d1df949eea48b04896c1"/>
+<a href="class_screamer_composite_event-members.html"/>
+<a href="class_screamer_composite_event.html"/>
+<a href="class_simple_builder-members.html"/>
+<a href="class_simple_builder.html"/>
+<a href="class_simple_builder.html#aa1c6b39ff7d52a0f8cf811ef91d1feaa"/>
+<a href="class_simple_builder.html#ad02dcc4d85cec356f6169ce938242226"/>
+<a href="class_theme_manager-members.html"/>
+<a href="class_theme_manager.html"/>
+<a href="class_wall-members.html"/>
+<a href="class_wall.html"/>
+<a href="class_win_game-members.html"/>
+<a href="class_win_game.html"/>
+<a href="classes.html"/>
+<a href="dir_059b8d327d09617c411023af730a36c0.html"/>
+<a href="dir_0620867b96a9d6681889b0cd51382a82.html"/>
+<a href="dir_1ec01c3d118a92a59cb64fdd508b6eff.html"/>
+<a href="dir_35461bf8feb23080c5804a15bfe2f4aa.html"/>
+<a href="dir_36512145787243429e2d8387a78e16b9.html"/>
+<a href="dir_592f7e24f8e0510a8dca7f53521ecb86.html"/>
+<a href="dir_5ac36eadb58257c11ffd1fe0c36f8d44.html"/>
+<a href="dir_a2a010966b562bcf41b620d047d98a69.html"/>
+<a href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html"/>
+<a href="dir_dbd25d32f158f8fe0ac7baf637feb24d.html"/>
+<a href="dir_dd6fd865ae52f5fee8c57e83b77289db.html"/>
+<a href="dir_e31f3142f437cc9199f6e7da6a0351a8.html"/>
+<a href="dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.html"/>
+<a href="dir_eb37150066857c324af7acaa5f9b7e6c.html"/>
+<a href="dir_f4241d05c30ca25826da7a6464eec250.html"/>
+<a href="doxygen_crawl.html"/>
+<a href="files.html"/>
+<a href="functions.html"/>
+<a href="functions_func.html"/>
+<a href="functions_vars.html"/>
+<a href="hierarchy.html"/>
+<a href="index.html"/>
+<a href="struct_game_context-members.html"/>
+<a href="struct_game_context.html"/>
+<a href="struct_i_drawable-members.html"/>
+<a href="struct_i_drawable.html"/>
+<a href="struct_i_dynamic_entity-members.html"/>
+<a href="struct_i_dynamic_entity.html"/>
+<a href="struct_i_preparable-members.html"/>
+<a href="struct_i_preparable.html"/>
+<a href="struct_i_state_manager-members.html"/>
+<a href="struct_i_state_manager.html"/>
+<a href="struct_i_static_entity-members.html"/>
+<a href="struct_i_static_entity.html"/>
+<a href="struct_my_assets__one-members.html"/>
+<a href="struct_my_assets__one.html"/>
+<a href="struct_screamer_event-members.html"/>
+<a href="struct_screamer_event.html"/>
+<a href="struct_select_state-members.html"/>
+<a href="struct_select_state.html"/>
+<a href="struct_select_state.html#a52b35ea72577fb2d5429daf43f9110e7"/>
+<a href="struct_select_state.html#af3cc640f19d315eb79b7c9c0673a6562"/>
+<a href="struct_select_state.html#af82dbfa9bc9fc892d55baabc3f5b5243"/>
+<a href="struct_theme_colors-members.html"/>
+<a href="struct_theme_colors.html"/>
+</body>
+</html>
diff --git a/assets/docs/html/dynsections.js b/assets/docs/html/dynsections.js
new file mode 100644
index 0000000000000000000000000000000000000000..b05f4c8d7017a84f189b7e4031cafc6a66cc1a3e
--- /dev/null
+++ b/assets/docs/html/dynsections.js
@@ -0,0 +1,198 @@
+/*
+ @licstart  The following is the entire license notice for the JavaScript code in this file.
+
+ The MIT License (MIT)
+
+ Copyright (C) 1997-2020 by Dimitri van Heesch
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software
+ and associated documentation files (the "Software"), to deal in the Software without restriction,
+ including without limitation the rights to use, copy, modify, merge, publish, distribute,
+ sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in all copies or
+ substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
+ BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+ DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ @licend  The above is the entire license notice for the JavaScript code in this file
+ */
+
+function toggleVisibility(linkObj) {
+  return dynsection.toggleVisibility(linkObj);
+}
+
+let dynsection = {
+
+  // helper function
+  updateStripes : function() {
+    $('table.directory tr').
+      removeClass('even').filter(':visible:even').addClass('even');
+    $('table.directory tr').
+      removeClass('odd').filter(':visible:odd').addClass('odd');
+  },
+
+  toggleVisibility : function(linkObj) {
+    const base = $(linkObj).attr('id');
+    const summary = $('#'+base+'-summary');
+    const content = $('#'+base+'-content');
+    const trigger = $('#'+base+'-trigger');
+    const src=$(trigger).attr('src');
+    if (content.is(':visible')===true) {
+      content.hide();
+      summary.show();
+      $(linkObj).addClass('closed').removeClass('opened');
+      $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png');
+    } else {
+      content.show();
+      summary.hide();
+      $(linkObj).removeClass('closed').addClass('opened');
+      $(trigger).attr('src',src.substring(0,src.length-10)+'open.png');
+    }
+    return false;
+  },
+
+  toggleLevel : function(level) {
+    $('table.directory tr').each(function() {
+      const l = this.id.split('_').length-1;
+      const i = $('#img'+this.id.substring(3));
+      const a = $('#arr'+this.id.substring(3));
+      if (l<level+1) {
+        i.removeClass('iconfopen iconfclosed').addClass('iconfopen');
+        a.html('&#9660;');
+        $(this).show();
+      } else if (l==level+1) {
+        i.removeClass('iconfclosed iconfopen').addClass('iconfclosed');
+        a.html('&#9658;');
+        $(this).show();
+      } else {
+        $(this).hide();
+      }
+    });
+    this.updateStripes();
+  },
+
+  toggleFolder : function(id) {
+    // the clicked row
+    const currentRow = $('#row_'+id);
+
+    // all rows after the clicked row
+    const rows = currentRow.nextAll("tr");
+
+    const re = new RegExp('^row_'+id+'\\d+_$', "i"); //only one sub
+
+    // only match elements AFTER this one (can't hide elements before)
+    const childRows = rows.filter(function() { return this.id.match(re); });
+
+    // first row is visible we are HIDING
+    if (childRows.filter(':first').is(':visible')===true) {
+      // replace down arrow by right arrow for current row
+      const currentRowSpans = currentRow.find("span");
+      currentRowSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
+      currentRowSpans.filter(".arrow").html('&#9658;');
+      rows.filter("[id^=row_"+id+"]").hide(); // hide all children
+    } else { // we are SHOWING
+      // replace right arrow by down arrow for current row
+      const currentRowSpans = currentRow.find("span");
+      currentRowSpans.filter(".iconfclosed").removeClass("iconfclosed").addClass("iconfopen");
+      currentRowSpans.filter(".arrow").html('&#9660;');
+      // replace down arrows by right arrows for child rows
+      const childRowsSpans = childRows.find("span");
+      childRowsSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
+      childRowsSpans.filter(".arrow").html('&#9658;');
+      childRows.show(); //show all children
+    }
+    this.updateStripes();
+  },
+
+  toggleInherit : function(id) {
+    const rows = $('tr.inherit.'+id);
+    const img = $('tr.inherit_header.'+id+' img');
+    const src = $(img).attr('src');
+    if (rows.filter(':first').is(':visible')===true) {
+      rows.css('display','none');
+      $(img).attr('src',src.substring(0,src.length-8)+'closed.png');
+    } else {
+      rows.css('display','table-row'); // using show() causes jump in firefox
+      $(img).attr('src',src.substring(0,src.length-10)+'open.png');
+    }
+  },
+};
+
+let codefold = {
+  opened : true,
+
+  // in case HTML_COLORSTYLE is LIGHT or DARK the vars will be replaced, so we write them out explicitly and use double quotes
+  plusImg:  [ "var(--fold-plus-image)",  "var(--fold-plus-image-relpath)" ],
+  minusImg: [ "var(--fold-minus-image)", "var(--fold-minus-image-relpath)" ],
+
+  // toggle all folding blocks
+  toggle_all : function(relPath) {
+    if (this.opened) {
+      $('#fold_all').css('background-image',this.plusImg[relPath]);
+      $('div[id^=foldopen]').hide();
+      $('div[id^=foldclosed]').show();
+    } else {
+      $('#fold_all').css('background-image',this.minusImg[relPath]);
+      $('div[id^=foldopen]').show();
+      $('div[id^=foldclosed]').hide();
+    }
+    this.opened=!this.opened;
+  },
+
+  // toggle single folding block
+  toggle : function(id) {
+    $('#foldopen'+id).toggle();
+    $('#foldclosed'+id).toggle();
+  },
+
+  init : function(relPath) {
+    $('span[class=lineno]').css({
+      'padding-right':'4px',
+      'margin-right':'2px',
+      'display':'inline-block',
+      'width':'54px',
+      'background':'linear-gradient(var(--fold-line-color),var(--fold-line-color)) no-repeat 46px/2px 100%'
+    });
+    // add global toggle to first line
+    $('span[class=lineno]:first').append('<span class="fold" id="fold_all" '+
+      'onclick="javascript:codefold.toggle_all('+relPath+');" '+
+      'style="background-image:'+this.minusImg[relPath]+';"></span>');
+    // add vertical lines to other rows
+    $('span[class=lineno]').not(':eq(0)').append('<span class="fold"></span>');
+    // add toggle controls to lines with fold divs
+    $('div[class=foldopen]').each(function() {
+      // extract specific id to use
+      const id    = $(this).attr('id').replace('foldopen','');
+      // extract start and end foldable fragment attributes
+      const start = $(this).attr('data-start');
+      const end   = $(this).attr('data-end');
+      // replace normal fold span with controls for the first line of a foldable fragment
+      $(this).find('span[class=fold]:first').replaceWith('<span class="fold" '+
+                   'onclick="javascript:codefold.toggle(\''+id+'\');" '+
+                   'style="background-image:'+codefold.minusImg[relPath]+';"></span>');
+      // append div for folded (closed) representation
+      $(this).after('<div id="foldclosed'+id+'" class="foldclosed" style="display:none;"></div>');
+      // extract the first line from the "open" section to represent closed content
+      const line = $(this).children().first().clone();
+      // remove any glow that might still be active on the original line
+      $(line).removeClass('glow');
+      if (start) {
+        // if line already ends with a start marker (e.g. trailing {), remove it
+        $(line).html($(line).html().replace(new RegExp('\\s*'+start+'\\s*$','g'),''));
+      }
+      // replace minus with plus symbol
+      $(line).find('span[class=fold]').css('background-image',codefold.plusImg[relPath]);
+      // append ellipsis
+      $(line).append(' '+start+'<a href="javascript:codefold.toggle(\''+id+'\')">&#8230;</a>'+end);
+      // insert constructed line into closed div
+      $('#foldclosed'+id).html(line);
+    });
+  },
+};
+/* @license-end */
diff --git a/assets/docs/html/files.html b/assets/docs/html/files.html
new file mode 100644
index 0000000000000000000000000000000000000000..b989cd3804551932ecd22ae2e2ccbe90336bd89a
--- /dev/null
+++ b/assets/docs/html/files.html
@@ -0,0 +1,158 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Файлы</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('files.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Файлы</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Полный список документированных файлов.</div><div class="directory">
+<div class="levels">[уровень детализации <span onclick="javascript:dynsection.toggleLevel(1);">1</span><span onclick="javascript:dynsection.toggleLevel(2);">2</span><span onclick="javascript:dynsection.toggleLevel(3);">3</span><span onclick="javascript:dynsection.toggleLevel(4);">4</span><span onclick="javascript:dynsection.toggleLevel(5);">5</span><span onclick="javascript:dynsection.toggleLevel(6);">6</span>]</div><table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_0_" class="arrow" onclick="dynsection.toggleFolder('0_')">&#9660;</span><span id="img_0_" class="iconfopen" onclick="dynsection.toggleFolder('0_')">&#160;</span><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html" target="_self">source</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_0_" class="arrow" onclick="dynsection.toggleFolder('0_0_')">&#9660;</span><span id="img_0_0_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_')">&#160;</span><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html" target="_self">application</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_0_" class="arrow" onclick="dynsection.toggleFolder('0_0_0_')">&#9660;</span><span id="img_0_0_0_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_0_')">&#160;</span><a class="el" href="dir_f4241d05c30ca25826da7a6464eec250.html" target="_self">App</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_0_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_application_8h_source.html"><span class="icondoc"></span></a><b>Application.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_1_" class="arrow" onclick="dynsection.toggleFolder('0_0_1_')">&#9660;</span><span id="img_0_0_1_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_1_')">&#160;</span><a class="el" href="dir_5ac36eadb58257c11ffd1fe0c36f8d44.html" target="_self">Assets</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_1_0_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_texture___sound_8h_source.html"><span class="icondoc"></span></a><b>Texture_Sound.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_2_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_2_" class="arrow" onclick="dynsection.toggleFolder('0_0_2_')">&#9660;</span><span id="img_0_0_2_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_2_')">&#160;</span><a class="el" href="dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.html" target="_self">BobBuilder</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_2_0_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_bob_builder_director_8h_source.html"><span class="icondoc"></span></a><b>BobBuilderDirector.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_2_1_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_game_builders_8h_source.html"><span class="icondoc"></span></a><b>GameBuilders.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_2_2_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_i_game_builder_8h_source.html"><span class="icondoc"></span></a><b>IGameBuilder.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_3_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_3_" class="arrow" onclick="dynsection.toggleFolder('0_0_3_')">&#9660;</span><span id="img_0_0_3_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_3_')">&#160;</span><a class="el" href="dir_592f7e24f8e0510a8dca7f53521ecb86.html" target="_self">Context</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_3_0_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_context_8h_source.html"><span class="icondoc"></span></a><b>Context.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_4_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_4_" class="arrow" onclick="dynsection.toggleFolder('0_0_4_')">&#9660;</span><span id="img_0_0_4_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_4_')">&#160;</span><a class="el" href="dir_0620867b96a9d6681889b0cd51382a82.html" target="_self">Drawable</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_4_0_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span id="arr_0_0_4_0_" class="arrow" onclick="dynsection.toggleFolder('0_0_4_0_')">&#9660;</span><span id="img_0_0_4_0_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_4_0_')">&#160;</span><a class="el" href="dir_1ec01c3d118a92a59cb64fdd508b6eff.html" target="_self">DrawMenu</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_4_0_0_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><span id="arr_0_0_4_0_0_" class="arrow" onclick="dynsection.toggleFolder('0_0_4_0_0_')">&#9660;</span><span id="img_0_0_4_0_0_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_4_0_0_')">&#160;</span><a class="el" href="dir_e31f3142f437cc9199f6e7da6a0351a8.html" target="_self">Button</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_4_0_0_0_" class="odd"><td class="entry"><span style="width:96px;display:inline-block;">&#160;</span><a href="_button_8h_source.html"><span class="icondoc"></span></a><b>Button.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_4_0_1_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><span id="arr_0_0_4_0_1_" class="arrow" onclick="dynsection.toggleFolder('0_0_4_0_1_')">&#9660;</span><span id="img_0_0_4_0_1_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_4_0_1_')">&#160;</span><a class="el" href="dir_a2a010966b562bcf41b620d047d98a69.html" target="_self">Menu</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_4_0_1_0_" class="odd"><td class="entry"><span style="width:96px;display:inline-block;">&#160;</span><a href="_menu_8h_source.html"><span class="icondoc"></span></a><b>Menu.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_4_0_1_1_" class="even"><td class="entry"><span style="width:96px;display:inline-block;">&#160;</span><a href="_menu_in_game_8h_source.html"><span class="icondoc"></span></a><b>MenuInGame.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_4_1_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span id="arr_0_0_4_1_" class="arrow" onclick="dynsection.toggleFolder('0_0_4_1_')">&#9660;</span><span id="img_0_0_4_1_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_4_1_')">&#160;</span><a class="el" href="dir_36512145787243429e2d8387a78e16b9.html" target="_self">Entity</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_4_1_0_" class="even"><td class="entry"><span style="width:80px;display:inline-block;">&#160;</span><a href="_i_entity_8h_source.html"><span class="icondoc"></span></a><b>IEntity.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_4_1_1_" class="odd"><td class="entry"><span style="width:80px;display:inline-block;">&#160;</span><a href="_i_observer_8h_source.html"><span class="icondoc"></span></a><b>IObserver.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_4_1_2_" class="even"><td class="entry"><span style="width:80px;display:inline-block;">&#160;</span><a href="_my_texture_8h_source.html"><span class="icondoc"></span></a><b>MyTexture.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_4_1_3_" class="odd"><td class="entry"><span style="width:80px;display:inline-block;">&#160;</span><a href="_pacman_8h_source.html"><span class="icondoc"></span></a><b>Pacman.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_4_2_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span id="arr_0_0_4_2_" class="arrow" onclick="dynsection.toggleFolder('0_0_4_2_')">&#9660;</span><span id="img_0_0_4_2_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_4_2_')">&#160;</span><a class="el" href="dir_dbd25d32f158f8fe0ac7baf637feb24d.html" target="_self">Maze</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_4_2_0_" class="odd"><td class="entry"><span style="width:80px;display:inline-block;">&#160;</span><a href="_maze_8h_source.html"><span class="icondoc"></span></a><b>Maze.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_4_3_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_i_drawable_8h_source.html"><span class="icondoc"></span></a><b>IDrawable.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_5_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_5_" class="arrow" onclick="dynsection.toggleFolder('0_0_5_')">&#9660;</span><span id="img_0_0_5_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_5_')">&#160;</span><a class="el" href="dir_35461bf8feb23080c5804a15bfe2f4aa.html" target="_self">Event</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_5_0_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_i_game_event_8h_source.html"><span class="icondoc"></span></a><b>IGameEvent.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_6_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_6_" class="arrow" onclick="dynsection.toggleFolder('0_0_6_')">&#9660;</span><span id="img_0_0_6_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_6_')">&#160;</span><a class="el" href="dir_dd6fd865ae52f5fee8c57e83b77289db.html" target="_self">SelectCommand</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_6_0_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_i_select_command_8h_source.html"><span class="icondoc"></span></a><b>ISelectCommand.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_7_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_7_" class="arrow" onclick="dynsection.toggleFolder('0_0_7_')">&#9660;</span><span id="img_0_0_7_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_7_')">&#160;</span><a class="el" href="dir_eb37150066857c324af7acaa5f9b7e6c.html" target="_self">State</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_7_0_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_game_state_8h_source.html"><span class="icondoc"></span></a><b>GameState.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_7_1_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_i_state_8h_source.html"><span class="icondoc"></span></a><b>IState.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_7_2_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_i_window_keeper_8h_source.html"><span class="icondoc"></span></a><b>IWindowKeeper.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_7_3_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_select_state_8h_source.html"><span class="icondoc"></span></a><b>SelectState.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_7_4_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_theme_manager_8h_source.html"><span class="icondoc"></span></a><b>ThemeManager.h</b></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/files_dup.js b/assets/docs/html/files_dup.js
new file mode 100644
index 0000000000000000000000000000000000000000..928df6786523be5d995f63ddad075e5b7ef38d9b
--- /dev/null
+++ b/assets/docs/html/files_dup.js
@@ -0,0 +1,4 @@
+var files_dup =
+[
+    [ "source", "dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html", "dir_b2f33c71d4aa5e7af42a1ca61ff5af1b" ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/folderclosed.svg b/assets/docs/html/folderclosed.svg
new file mode 100644
index 0000000000000000000000000000000000000000..b04bed2e723617bea1e7dda93638dddf7e5971ed
--- /dev/null
+++ b/assets/docs/html/folderclosed.svg
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+ "https://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" width="16" height="24" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve">
+<g style="fill:#4665A2;">
+<path d="M1,5.998l-0,16.002c-0,1.326 0.527,2.598 1.464,3.536c0.938,0.937 2.21,1.464 3.536,1.464c5.322,0 14.678,-0 20,0c1.326,0 2.598,-0.527 3.536,-1.464c0.937,-0.938 1.464,-2.21 1.464,-3.536c0,-3.486 0,-8.514 0,-12c0,-1.326 -0.527,-2.598 -1.464,-3.536c-0.938,-0.937 -2.21,-1.464 -3.536,-1.464c-0,0 -10.586,0 -10.586,0c0,-0 -3.707,-3.707 -3.707,-3.707c-0.187,-0.188 -0.442,-0.293 -0.707,-0.293l-5.002,0c-2.76,0 -4.998,2.238 -4.998,4.998Zm2,-0l-0,16.002c-0,0.796 0.316,1.559 0.879,2.121c0.562,0.563 1.325,0.879 2.121,0.879l20,0c0.796,0 1.559,-0.316 2.121,-0.879c0.563,-0.562 0.879,-1.325 0.879,-2.121c0,-3.486 0,-8.514 0,-12c0,-0.796 -0.316,-1.559 -0.879,-2.121c-0.562,-0.563 -1.325,-0.879 -2.121,-0.879c-7.738,0 -11,0 -11,0c-0.265,0 -0.52,-0.105 -0.707,-0.293c-0,0 -3.707,-3.707 -3.707,-3.707c-0,0 -4.588,0 -4.588,0c-1.656,0 -2.998,1.342 -2.998,2.998Z"/>
+</g>
+<g style="fill:#D8DFEE;stroke-width:0;">
+<path d="M 5.6063709,24.951908 C 4.3924646,24.775461 3.4197129,23.899792 3.1031586,22.698521 L 3.0216155,22.389078 V 13.997725 5.6063709 L 3.1037477,5.2982247 C 3.3956682,4.2029881 4.1802788,3.412126 5.2787258,3.105917 5.5646428,3.0262132 5.6154982,3.0244963 8.0611641,3.0119829 l 2.4911989,-0.012746 1.932009,1.9300342 c 1.344142,1.3427669 1.976319,1.9498819 2.07763,1.9952626 0.137456,0.061571 0.474218,0.066269 6.006826,0.083795 l 5.861206,0.018568 0.29124,0.081916 c 1.094895,0.3079569 1.890116,1.109428 2.175567,2.192667 l 0.08154,0.3094425 V 16 22.389078 l -0.08154,0.309443 c -0.28446,1.079482 -1.086411,1.888085 -2.175567,2.193614 l -0.29124,0.0817 -10.302616,0.0049 c -5.700217,0.0027 -10.4001945,-0.0093 -10.5210471,-0.02684 z"/>
+</g>
+</svg>
diff --git a/assets/docs/html/folderclosedd.svg b/assets/docs/html/folderclosedd.svg
new file mode 100644
index 0000000000000000000000000000000000000000..52f0166a23e730c238954892aecd3babfabf75d0
--- /dev/null
+++ b/assets/docs/html/folderclosedd.svg
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+ "https://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" width="16" height="24" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve">
+<g style="fill:#C4CFE5;">
+<path d="M1,5.998l-0,16.002c-0,1.326 0.527,2.598 1.464,3.536c0.938,0.937 2.21,1.464 3.536,1.464c5.322,0 14.678,-0 20,0c1.326,0 2.598,-0.527 3.536,-1.464c0.937,-0.938 1.464,-2.21 1.464,-3.536c0,-3.486 0,-8.514 0,-12c0,-1.326 -0.527,-2.598 -1.464,-3.536c-0.938,-0.937 -2.21,-1.464 -3.536,-1.464c-0,0 -10.586,0 -10.586,0c0,-0 -3.707,-3.707 -3.707,-3.707c-0.187,-0.188 -0.442,-0.293 -0.707,-0.293l-5.002,0c-2.76,0 -4.998,2.238 -4.998,4.998Zm2,-0l-0,16.002c-0,0.796 0.316,1.559 0.879,2.121c0.562,0.563 1.325,0.879 2.121,0.879l20,0c0.796,0 1.559,-0.316 2.121,-0.879c0.563,-0.562 0.879,-1.325 0.879,-2.121c0,-3.486 0,-8.514 0,-12c0,-0.796 -0.316,-1.559 -0.879,-2.121c-0.562,-0.563 -1.325,-0.879 -2.121,-0.879c-7.738,0 -11,0 -11,0c-0.265,0 -0.52,-0.105 -0.707,-0.293c-0,0 -3.707,-3.707 -3.707,-3.707c-0,0 -4.588,0 -4.588,0c-1.656,0 -2.998,1.342 -2.998,2.998Z"/>
+</g>
+<g style="fill:#4665A2;stroke-width:0;">
+<path d="M 5.6063709,24.951908 C 4.3924646,24.775461 3.4197129,23.899792 3.1031586,22.698521 L 3.0216155,22.389078 V 13.997725 5.6063709 L 3.1037477,5.2982247 C 3.3956682,4.2029881 4.1802788,3.412126 5.2787258,3.105917 5.5646428,3.0262132 5.6154982,3.0244963 8.0611641,3.0119829 l 2.4911989,-0.012746 1.932009,1.9300342 c 1.344142,1.3427669 1.976319,1.9498819 2.07763,1.9952626 0.137456,0.061571 0.474218,0.066269 6.006826,0.083795 l 5.861206,0.018568 0.29124,0.081916 c 1.094895,0.3079569 1.890116,1.109428 2.175567,2.192667 l 0.08154,0.3094425 V 16 22.389078 l -0.08154,0.309443 c -0.28446,1.079482 -1.086411,1.888085 -2.175567,2.193614 l -0.29124,0.0817 -10.302616,0.0049 c -5.700217,0.0027 -10.4001945,-0.0093 -10.5210471,-0.02684 z"/>
+</g>
+</svg>
diff --git a/assets/docs/html/folderopen.svg b/assets/docs/html/folderopen.svg
new file mode 100644
index 0000000000000000000000000000000000000000..f6896dd254b6d25580338d9c9a097fc46e445355
--- /dev/null
+++ b/assets/docs/html/folderopen.svg
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+ "https://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" width="16" height="24" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve">
+<g style="fill:#4665A2;">
+<path
+   d="M1,5.998l0,16.002c-0,1.326 0.527,2.598 1.464,3.536c0.938,0.937 2.21,1.464 3.536,1.464c5.322,0 14.678,-0 20,0c1.326,0 2.598,-0.527 3.536,-1.464c0.937,-0.938 1.464,-2.21 1.464,-3.536c0,-3.486 0,-8.514 0,-12c0,-1.326 -0.527,-2.598 -1.464,-3.536c-0.938,-0.937 -2.21,-1.464 -3.536,-1.464c-0,0 -10.586,0 -10.586,0c0,-0 -3.707,-3.707 -3.707,-3.707c-0.187,-0.188 -0.442,-0.293 -0.707,-0.293l-5.002,0c-2.76,0 -4.998,2.238 -4.998,4.998Zm28,14.415l-3.456,-5.925c-0.538,-0.921 -1.524,-1.488 -2.591,-1.488c-0,0 -12.905,0 -12.906,0c-1.067,0 -2.053,0.567 -2.591,1.488l-4.453,7.635c0.03,0.751 0.342,1.465 0.876,1.998c0.562,0.563 1.325,0.879 2.121,0.879l20,0c0.796,0 1.559,-0.316 2.121,-0.879c0.563,-0.562 0.879,-1.325 0.879,-2.121l0,-1.587Zm0,-3.969l0,-6.444c0,-0.796 -0.316,-1.559 -0.879,-2.121c-0.562,-0.563 -1.325,-0.879 -2.121,-0.879c-7.738,0 -11,0 -11,0c-0.265,0 -0.52,-0.105 -0.707,-0.293c-0,0 -3.707,-3.707 -3.707,-3.707c-0,0 -4.588,0 -4.588,0c-1.656,0 -2.998,1.342 -2.998,2.998l0,12.16l2.729,-4.677c0.896,-1.536 2.54,-2.481 4.318,-2.481c3.354,0 9.552,0 12.906,0c1.778,0 3.422,0.945 4.318,2.481l1.729,2.963Z"
+   id="path2" />
+</g>
+<g style="fill:#D8DFEE;stroke-width:0;">
+<path
+   d="M 5.3879408,24.913408 C 4.1598821,24.650818 3.1571088,23.558656 3.053503,22.370876 L 3.0312746,22.116041 5.2606813,18.293515 C 6.486855,16.191126 7.5598351,14.372696 7.6450818,14.25256 8.0043056,13.746312 8.5423079,13.363007 9.2104664,13.137285 l 0.2548351,-0.08609 6.9294785,-0.0097 c 6.805096,-0.0095 6.934944,-0.0084 7.234011,0.06267 0.695577,0.165199 1.290483,0.557253 1.714887,1.130141 0.08158,0.110125 0.938747,1.556711 1.90481,3.214634 l 1.756479,3.014406 -0.0186,0.971942 c -0.01387,0.724723 -0.03365,1.032131 -0.07778,1.208575 -0.242792,0.970733 -0.88732,1.735415 -1.772382,2.102793 -0.58835,0.244217 0.247209,0.227436 -11.161974,0.224159 -9.0281537,-0.0026 -10.3636023,-0.0098 -10.5862902,-0.05746 z"
+   id="path199" /><path
+   d="M 3.0126385,11.849829 3.0235061,5.5881684 3.1020974,5.2969283 C 3.3478146,4.3863605 3.93576,3.6757372 4.756668,3.2971229 5.3293315,3.0330025 5.1813272,3.0450949 8.0130385,3.0310668 l 2.5522875,-0.012644 1.918693,1.9107086 c 1.404146,1.3983023 1.964459,1.9332518 2.089351,1.9947704 l 0.170657,0.084062 5.897611,0.019367 c 5.553257,0.018236 5.910365,0.023213 6.116041,0.085231 1.102257,0.3323708 1.857042,1.1184422 2.154229,2.2435244 0.05645,0.2137228 0.06373,0.5643981 0.07519,3.6220748 0.0076,2.032169 -5.42e-4,3.370979 -0.02041,3.349261 -0.0182,-0.0199 -0.414296,-0.691472 -0.880217,-1.492382 -0.46592,-0.80091 -0.93093,-1.577954 -1.033354,-1.726764 -0.735716,-1.0689 -1.983568,-1.844244 -3.315972,-2.060353 -0.280375,-0.04548 -1.345158,-0.05334 -7.238708,-0.05347 -4.713933,-1.09e-4 -6.9931825,0.01221 -7.1717862,0.03874 -1.3002273,0.193134 -2.4770512,0.889916 -3.283628,1.944192 -0.1076466,0.140705 -0.8359664,1.353438 -1.6184885,2.694963 L 3.0017709,18.11149 Z"
+   id="path201" />
+</g>
+</svg>
diff --git a/assets/docs/html/folderopend.svg b/assets/docs/html/folderopend.svg
new file mode 100644
index 0000000000000000000000000000000000000000..2d1f06e7bc6e85be079b7ee1346c79baa4c50ce1
--- /dev/null
+++ b/assets/docs/html/folderopend.svg
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+ "https://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" width="16" height="24" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve">
+<g style="fill:#C4CFE5;">
+<path d="M1,5.998l0,16.002c-0,1.326 0.527,2.598 1.464,3.536c0.938,0.937 2.21,1.464 3.536,1.464c5.322,0 14.678,-0 20,0c1.326,0 2.598,-0.527 3.536,-1.464c0.937,-0.938 1.464,-2.21 1.464,-3.536c0,-3.486 0,-8.514 0,-12c0,-1.326 -0.527,-2.598 -1.464,-3.536c-0.938,-0.937 -2.21,-1.464 -3.536,-1.464c-0,0 -10.586,0 -10.586,0c0,-0 -3.707,-3.707 -3.707,-3.707c-0.187,-0.188 -0.442,-0.293 -0.707,-0.293l-5.002,0c-2.76,0 -4.998,2.238 -4.998,4.998Zm28,14.415l-3.456,-5.925c-0.538,-0.921 -1.524,-1.488 -2.591,-1.488c-0,0 -12.905,0 -12.906,0c-1.067,0 -2.053,0.567 -2.591,1.488l-4.453,7.635c0.03,0.751 0.342,1.465 0.876,1.998c0.562,0.563 1.325,0.879 2.121,0.879l20,0c0.796,0 1.559,-0.316 2.121,-0.879c0.563,-0.562 0.879,-1.325 0.879,-2.121l0,-1.587Zm0,-3.969l0,-6.444c0,-0.796 -0.316,-1.559 -0.879,-2.121c-0.562,-0.563 -1.325,-0.879 -2.121,-0.879c-7.738,0 -11,0 -11,0c-0.265,0 -0.52,-0.105 -0.707,-0.293c-0,0 -3.707,-3.707 -3.707,-3.707c-0,0 -4.588,0 -4.588,0c-1.656,0 -2.998,1.342 -2.998,2.998l0,12.16l2.729,-4.677c0.896,-1.536 2.54,-2.481 4.318,-2.481c3.354,0 9.552,0 12.906,0c1.778,0 3.422,0.945 4.318,2.481l1.729,2.963Z"/>
+</g>
+<g style="fill:#4665A2;stroke-width:0;">
+<path d="M 5.3879408,24.913408 C 4.1598821,24.650818 3.1571088,23.558656 3.053503,22.370876 L 3.0312746,22.116041 5.2606813,18.293515 C 6.486855,16.191126 7.5598351,14.372696 7.6450818,14.25256 8.0043056,13.746312 8.5423079,13.363007 9.2104664,13.137285 l 0.2548351,-0.08609 6.9294785,-0.0097 c 6.805096,-0.0095 6.934944,-0.0084 7.234011,0.06267 0.695577,0.165199 1.290483,0.557253 1.714887,1.130141 0.08158,0.110125 0.938747,1.556711 1.90481,3.214634 l 1.756479,3.014406 -0.0186,0.971942 c -0.01387,0.724723 -0.03365,1.032131 -0.07778,1.208575 -0.242792,0.970733 -0.88732,1.735415 -1.772382,2.102793 -0.58835,0.244217 0.247209,0.227436 -11.161974,0.224159 -9.0281537,-0.0026 -10.3636023,-0.0098 -10.5862902,-0.05746 z" />
+<path d="M 3.0126385,11.849829 3.0235061,5.5881684 3.1020974,5.2969283 C 3.3478146,4.3863605 3.93576,3.6757372 4.756668,3.2971229 5.3293315,3.0330025 5.1813272,3.0450949 8.0130385,3.0310668 l 2.5522875,-0.012644 1.918693,1.9107086 c 1.404146,1.3983023 1.964459,1.9332518 2.089351,1.9947704 l 0.170657,0.084062 5.897611,0.019367 c 5.553257,0.018236 5.910365,0.023213 6.116041,0.085231 1.102257,0.3323708 1.857042,1.1184422 2.154229,2.2435244 0.05645,0.2137228 0.06373,0.5643981 0.07519,3.6220748 0.0076,2.032169 -5.42e-4,3.370979 -0.02041,3.349261 -0.0182,-0.0199 -0.414296,-0.691472 -0.880217,-1.492382 -0.46592,-0.80091 -0.93093,-1.577954 -1.033354,-1.726764 -0.735716,-1.0689 -1.983568,-1.844244 -3.315972,-2.060353 -0.280375,-0.04548 -1.345158,-0.05334 -7.238708,-0.05347 -4.713933,-1.09e-4 -6.9931825,0.01221 -7.1717862,0.03874 -1.3002273,0.193134 -2.4770512,0.889916 -3.283628,1.944192 -0.1076466,0.140705 -0.8359664,1.353438 -1.6184885,2.694963 L 3.0017709,18.11149 Z" />
+</g>
+</svg>
diff --git a/assets/docs/html/functions.html b/assets/docs/html/functions.html
new file mode 100644
index 0000000000000000000000000000000000000000..859e99b24bf45d875bea0084560395c5df00afd2
--- /dev/null
+++ b/assets/docs/html/functions.html
@@ -0,0 +1,203 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Члены классов</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('functions.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="contents">
+<div class="textblock">Список всех документированных членов классов со ссылками на документацию по классу для каждого члена.</div>
+
+<h3><a id="index_a" name="index_a"></a>- a -</h3><ul>
+<li>accept()&#160;:&#160;<a class="el" href="class_enemy.html#a12c591e7c61ccafe8f0c0a5727434d2f">Enemy</a>, <a class="el" href="class_food.html#a66afb32708f97daf5bca2fae17ca3ad2">Food</a></li>
+<li>action()&#160;:&#160;<a class="el" href="class_enemy.html#a34d900423f808c057a766daca104c6f6">Enemy</a></li>
+</ul>
+
+
+<h3><a id="index_c" name="index_c"></a>- c -</h3><ul>
+<li>clone()&#160;:&#160;<a class="el" href="class_enemy.html#aae122c696ec1c65f90d7625683183a67">Enemy</a>, <a class="el" href="class_food.html#a3363e490287b67049c6771f56911d582">Food</a></li>
+<li>create_context()&#160;:&#160;<a class="el" href="class_common_builder.html#ace9b0433bd9b849970e2b96965818789">CommonBuilder</a></li>
+<li>create_rooms()&#160;:&#160;<a class="el" href="class_complex_builder.html#ac0dfa4956df4c1d1d9a61aa186fc8ac0">ComplexBuilder</a>, <a class="el" href="class_simple_builder.html#ad02dcc4d85cec356f6169ce938242226">SimpleBuilder</a></li>
+<li>create_state()&#160;:&#160;<a class="el" href="class_common_builder.html#a4e45999e05a45814ed25ed3adbbe07e0">CommonBuilder</a></li>
+</ul>
+
+
+<h3><a id="index_d" name="index_d"></a>- d -</h3><ul>
+<li>draw_into()&#160;:&#160;<a class="el" href="class_menu.html#a4868e5ef14960d420dc79c307d1a78cb">Menu</a></li>
+</ul>
+
+
+<h3><a id="index_e" name="index_e"></a>- e -</h3><ul>
+<li>event_handling()&#160;:&#160;<a class="el" href="class_game_state.html#a180391dfe966058da0389146534e66d0">GameState</a></li>
+</ul>
+
+
+<h3><a id="index_f" name="index_f"></a>- f -</h3><ul>
+<li>Food()&#160;:&#160;<a class="el" href="class_food.html#a75d4d7f76fd495cc8133302ca9fdc485">Food</a></li>
+</ul>
+
+
+<h3><a id="index_g" name="index_g"></a>- g -</h3><ul>
+<li>GameState()&#160;:&#160;<a class="el" href="class_game_state.html#a90b51ee7191c9fd1fc5e207bc35f1153">GameState</a></li>
+<li>get_current_context()&#160;:&#160;<a class="el" href="class_context_manager.html#a690898db09f92499c35fdbf24a7c3821">ContextManager</a></li>
+<li>get_game()&#160;:&#160;<a class="el" href="class_common_builder.html#aafef8d08b8bfdfccfde6ff56bfb99987">CommonBuilder</a></li>
+</ul>
+
+
+<h3><a id="index_h" name="index_h"></a>- h -</h3><ul>
+<li>handle()&#160;:&#160;<a class="el" href="class_delete_static_entity.html#aadc4bbbd570e947fca78e222dbfacb43">DeleteStaticEntity</a></li>
+</ul>
+
+
+<h3><a id="index_m" name="index_m"></a>- m -</h3><ul>
+<li>m_window&#160;:&#160;<a class="el" href="class_i_window_keeper.html#aef0780725b6f210bcbeb3b03da2445b8">IWindowKeeper</a></li>
+<li>Menu()&#160;:&#160;<a class="el" href="class_menu.html#aa9374182bab451e7f7bb8cc02b0db0ee">Menu</a></li>
+<li>move()&#160;:&#160;<a class="el" href="class_pacman.html#aa957cbb7b0ad1bc1f6ef2aac82423cd8">Pacman</a></li>
+</ul>
+
+
+<h3><a id="index_o" name="index_o"></a>- o -</h3><ul>
+<li>on_notify()&#160;:&#160;<a class="el" href="class_score_count.html#ac3920f1272e0d1df949eea48b04896c1">ScoreCount</a></li>
+</ul>
+
+
+<h3><a id="index_p" name="index_p"></a>- p -</h3><ul>
+<li>Pacman()&#160;:&#160;<a class="el" href="class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2">Pacman</a></li>
+<li>prepare_for_drawing()&#160;:&#160;<a class="el" href="class_pacman.html#ad41930fae2878425f80e4fea614f3a3d">Pacman</a></li>
+<li>process_mouse()&#160;:&#160;<a class="el" href="class_menu.html#a9174cfc103dba0ee0613196385691872">Menu</a></li>
+</ul>
+
+
+<h3><a id="index_r" name="index_r"></a>- r -</h3><ul>
+<li>render()&#160;:&#160;<a class="el" href="class_game_state.html#a2c36ada0cae89f91d956e2c91b070893">GameState</a>, <a class="el" href="class_i_window_keeper.html#a973ef4befa8fd3b1fbb7e05a2c5904da">IWindowKeeper</a>, <a class="el" href="struct_select_state.html#a52b35ea72577fb2d5429daf43f9110e7">SelectState</a></li>
+<li>reset()&#160;:&#160;<a class="el" href="class_context_manager.html#a54b7081b2e31ec59e3a06ef7b8eeed8e">ContextManager</a></li>
+<li>restore_previous_context()&#160;:&#160;<a class="el" href="class_context_manager.html#a34dc3ea752a37fe9c54dff33e1c4b138">ContextManager</a></li>
+</ul>
+
+
+<h3><a id="index_s" name="index_s"></a>- s -</h3><ul>
+<li>SelectState()&#160;:&#160;<a class="el" href="struct_select_state.html#af3cc640f19d315eb79b7c9c0673a6562">SelectState</a></li>
+<li>set_all_to_state()&#160;:&#160;<a class="el" href="class_common_builder.html#ae920c0a91e61aff620096c100e496da0">CommonBuilder</a></li>
+<li>set_rooms_sides()&#160;:&#160;<a class="el" href="class_complex_builder.html#a93755bc2d5ac20722de6bce3d35aa336">ComplexBuilder</a>, <a class="el" href="class_simple_builder.html#aa1c6b39ff7d52a0f8cf811ef91d1feaa">SimpleBuilder</a></li>
+</ul>
+
+
+<h3><a id="index_u" name="index_u"></a>- u -</h3><ul>
+<li>update()&#160;:&#160;<a class="el" href="class_game_state.html#a3610da76344c5c2cbcc5921f877226dc">GameState</a>, <a class="el" href="class_i_window_keeper.html#a46683ebaa51a36a8bb6bb22ed12b83b7">IWindowKeeper</a>, <a class="el" href="struct_select_state.html#af82dbfa9bc9fc892d55baabc3f5b5243">SelectState</a></li>
+</ul>
+
+
+<h3><a id="index_v" name="index_v"></a>- v -</h3><ul>
+<li>visit()&#160;:&#160;<a class="el" href="class_pacman.html#ac4b928c45d22d9814a02b7a621c5ae7c">Pacman</a></li>
+</ul>
+
+
+<h3><a id="index__7E" name="index__7E"></a>- ~ -</h3><ul>
+<li>~IGameEvent()&#160;:&#160;<a class="el" href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">IGameEvent</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/functions_func.html b/assets/docs/html/functions_func.html
new file mode 100644
index 0000000000000000000000000000000000000000..a64d47360d05752e529f12fe06e42c5d07575ca0
--- /dev/null
+++ b/assets/docs/html/functions_func.html
@@ -0,0 +1,202 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Члены классов - Функции</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('functions_func.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="contents">
+<div class="textblock">Список всех задокументированных функций со ссылками на документацию класса каждого члена:</div>
+
+<h3><a id="index_a" name="index_a"></a>- a -</h3><ul>
+<li>accept()&#160;:&#160;<a class="el" href="class_enemy.html#a12c591e7c61ccafe8f0c0a5727434d2f">Enemy</a>, <a class="el" href="class_food.html#a66afb32708f97daf5bca2fae17ca3ad2">Food</a></li>
+<li>action()&#160;:&#160;<a class="el" href="class_enemy.html#a34d900423f808c057a766daca104c6f6">Enemy</a></li>
+</ul>
+
+
+<h3><a id="index_c" name="index_c"></a>- c -</h3><ul>
+<li>clone()&#160;:&#160;<a class="el" href="class_enemy.html#aae122c696ec1c65f90d7625683183a67">Enemy</a>, <a class="el" href="class_food.html#a3363e490287b67049c6771f56911d582">Food</a></li>
+<li>create_context()&#160;:&#160;<a class="el" href="class_common_builder.html#ace9b0433bd9b849970e2b96965818789">CommonBuilder</a></li>
+<li>create_rooms()&#160;:&#160;<a class="el" href="class_complex_builder.html#ac0dfa4956df4c1d1d9a61aa186fc8ac0">ComplexBuilder</a>, <a class="el" href="class_simple_builder.html#ad02dcc4d85cec356f6169ce938242226">SimpleBuilder</a></li>
+<li>create_state()&#160;:&#160;<a class="el" href="class_common_builder.html#a4e45999e05a45814ed25ed3adbbe07e0">CommonBuilder</a></li>
+</ul>
+
+
+<h3><a id="index_d" name="index_d"></a>- d -</h3><ul>
+<li>draw_into()&#160;:&#160;<a class="el" href="class_menu.html#a4868e5ef14960d420dc79c307d1a78cb">Menu</a></li>
+</ul>
+
+
+<h3><a id="index_e" name="index_e"></a>- e -</h3><ul>
+<li>event_handling()&#160;:&#160;<a class="el" href="class_game_state.html#a180391dfe966058da0389146534e66d0">GameState</a></li>
+</ul>
+
+
+<h3><a id="index_f" name="index_f"></a>- f -</h3><ul>
+<li>Food()&#160;:&#160;<a class="el" href="class_food.html#a75d4d7f76fd495cc8133302ca9fdc485">Food</a></li>
+</ul>
+
+
+<h3><a id="index_g" name="index_g"></a>- g -</h3><ul>
+<li>GameState()&#160;:&#160;<a class="el" href="class_game_state.html#a90b51ee7191c9fd1fc5e207bc35f1153">GameState</a></li>
+<li>get_current_context()&#160;:&#160;<a class="el" href="class_context_manager.html#a690898db09f92499c35fdbf24a7c3821">ContextManager</a></li>
+<li>get_game()&#160;:&#160;<a class="el" href="class_common_builder.html#aafef8d08b8bfdfccfde6ff56bfb99987">CommonBuilder</a></li>
+</ul>
+
+
+<h3><a id="index_h" name="index_h"></a>- h -</h3><ul>
+<li>handle()&#160;:&#160;<a class="el" href="class_delete_static_entity.html#aadc4bbbd570e947fca78e222dbfacb43">DeleteStaticEntity</a></li>
+</ul>
+
+
+<h3><a id="index_m" name="index_m"></a>- m -</h3><ul>
+<li>Menu()&#160;:&#160;<a class="el" href="class_menu.html#aa9374182bab451e7f7bb8cc02b0db0ee">Menu</a></li>
+<li>move()&#160;:&#160;<a class="el" href="class_pacman.html#aa957cbb7b0ad1bc1f6ef2aac82423cd8">Pacman</a></li>
+</ul>
+
+
+<h3><a id="index_o" name="index_o"></a>- o -</h3><ul>
+<li>on_notify()&#160;:&#160;<a class="el" href="class_score_count.html#ac3920f1272e0d1df949eea48b04896c1">ScoreCount</a></li>
+</ul>
+
+
+<h3><a id="index_p" name="index_p"></a>- p -</h3><ul>
+<li>Pacman()&#160;:&#160;<a class="el" href="class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2">Pacman</a></li>
+<li>prepare_for_drawing()&#160;:&#160;<a class="el" href="class_pacman.html#ad41930fae2878425f80e4fea614f3a3d">Pacman</a></li>
+<li>process_mouse()&#160;:&#160;<a class="el" href="class_menu.html#a9174cfc103dba0ee0613196385691872">Menu</a></li>
+</ul>
+
+
+<h3><a id="index_r" name="index_r"></a>- r -</h3><ul>
+<li>render()&#160;:&#160;<a class="el" href="class_game_state.html#a2c36ada0cae89f91d956e2c91b070893">GameState</a>, <a class="el" href="class_i_window_keeper.html#a973ef4befa8fd3b1fbb7e05a2c5904da">IWindowKeeper</a>, <a class="el" href="struct_select_state.html#a52b35ea72577fb2d5429daf43f9110e7">SelectState</a></li>
+<li>reset()&#160;:&#160;<a class="el" href="class_context_manager.html#a54b7081b2e31ec59e3a06ef7b8eeed8e">ContextManager</a></li>
+<li>restore_previous_context()&#160;:&#160;<a class="el" href="class_context_manager.html#a34dc3ea752a37fe9c54dff33e1c4b138">ContextManager</a></li>
+</ul>
+
+
+<h3><a id="index_s" name="index_s"></a>- s -</h3><ul>
+<li>SelectState()&#160;:&#160;<a class="el" href="struct_select_state.html#af3cc640f19d315eb79b7c9c0673a6562">SelectState</a></li>
+<li>set_all_to_state()&#160;:&#160;<a class="el" href="class_common_builder.html#ae920c0a91e61aff620096c100e496da0">CommonBuilder</a></li>
+<li>set_rooms_sides()&#160;:&#160;<a class="el" href="class_complex_builder.html#a93755bc2d5ac20722de6bce3d35aa336">ComplexBuilder</a>, <a class="el" href="class_simple_builder.html#aa1c6b39ff7d52a0f8cf811ef91d1feaa">SimpleBuilder</a></li>
+</ul>
+
+
+<h3><a id="index_u" name="index_u"></a>- u -</h3><ul>
+<li>update()&#160;:&#160;<a class="el" href="class_game_state.html#a3610da76344c5c2cbcc5921f877226dc">GameState</a>, <a class="el" href="class_i_window_keeper.html#a46683ebaa51a36a8bb6bb22ed12b83b7">IWindowKeeper</a>, <a class="el" href="struct_select_state.html#af82dbfa9bc9fc892d55baabc3f5b5243">SelectState</a></li>
+</ul>
+
+
+<h3><a id="index_v" name="index_v"></a>- v -</h3><ul>
+<li>visit()&#160;:&#160;<a class="el" href="class_pacman.html#ac4b928c45d22d9814a02b7a621c5ae7c">Pacman</a></li>
+</ul>
+
+
+<h3><a id="index__7E" name="index__7E"></a>- ~ -</h3><ul>
+<li>~IGameEvent()&#160;:&#160;<a class="el" href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">IGameEvent</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/functions_vars.html b/assets/docs/html/functions_vars.html
new file mode 100644
index 0000000000000000000000000000000000000000..cb486b9496450573514c1327f0161ae1e5cfddcf
--- /dev/null
+++ b/assets/docs/html/functions_vars.html
@@ -0,0 +1,117 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Члены классов - Переменные</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('functions_vars.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="contents">
+<div class="textblock">Список всех задокументированных переменных со ссылками на документацию класса каждого члена:</div><ul>
+<li>m_window&#160;:&#160;<a class="el" href="class_i_window_keeper.html#aef0780725b6f210bcbeb3b03da2445b8">IWindowKeeper</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/hierarchy.html b/assets/docs/html/hierarchy.html
new file mode 100644
index 0000000000000000000000000000000000000000..823138f1ad3a00f659219115dd5b9024c5cbd102
--- /dev/null
+++ b/assets/docs/html/hierarchy.html
@@ -0,0 +1,180 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Иерархия классов</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('hierarchy.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Иерархия классов</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Иерархия классов.</div><div class="directory">
+<div class="levels">[уровень детализации <span onclick="javascript:dynsection.toggleLevel(1);">1</span><span onclick="javascript:dynsection.toggleLevel(2);">2</span><span onclick="javascript:dynsection.toggleLevel(3);">3</span><span onclick="javascript:dynsection.toggleLevel(4);">4</span><span onclick="javascript:dynsection.toggleLevel(5);">5</span>]</div><table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_context_manager.html" target="_self">ContextManager</a></td><td class="desc"></td></tr>
+<tr id="row_1_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_game_builder_director.html" target="_self">GameBuilderDirector</a></td><td class="desc"></td></tr>
+<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_game_context.html" target="_self">GameContext</a></td><td class="desc">Контекст игры. Тут хранится состояние всего того, что происходит в лабиринте </td></tr>
+<tr id="row_3_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_3_" class="arrow" onclick="dynsection.toggleFolder('3_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_i_drawable.html" target="_self">IDrawable</a></td><td class="desc">Общий интерфейс для отрисовываемых сущностей и объектов </td></tr>
+<tr id="row_3_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_button.html" target="_self">Button</a></td><td class="desc"></td></tr>
+<tr id="row_3_1_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_choose_button.html" target="_self">ChooseButton</a></td><td class="desc"></td></tr>
+<tr id="row_3_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_3_2_" class="arrow" onclick="dynsection.toggleFolder('3_2_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_i_preparable.html" target="_self">IPreparable</a></td><td class="desc"></td></tr>
+<tr id="row_3_2_0_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_3_2_0_" class="arrow" onclick="dynsection.toggleFolder('3_2_0_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_entity.html" target="_self">IEntity</a></td><td class="desc"><a class="el" href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт.">IEntity</a> любая сущность, которая может быть помощена в лабиринт </td></tr>
+<tr id="row_3_2_0_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span id="arr_3_2_0_0_" class="arrow" onclick="dynsection.toggleFolder('3_2_0_0_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_i_dynamic_entity.html" target="_self">IDynamicEntity</a></td><td class="desc">Динамические сущности, наследник <a class="el" href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт.">IEntity</a> -&gt; может выполнять какие-то действия </td></tr>
+<tr id="row_3_2_0_0_0_" class="odd"><td class="entry"><span style="width:80px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_enemy.html" target="_self">Enemy</a></td><td class="desc">Конкретный наследник <a class="el" href="class_enemy.html" title="Конкретный наследник Enemy - враг. Если пакман наткнется хотя бы на одного врага, то он умрет -&gt; уров...">Enemy</a> - враг. Если пакман наткнется хотя бы на одного врага, то он умрет -&gt; уровень провален </td></tr>
+<tr id="row_3_2_0_1_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span id="arr_3_2_0_1_" class="arrow" onclick="dynsection.toggleFolder('3_2_0_1_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_i_static_entity.html" target="_self">IStaticEntity</a></td><td class="desc">Статические сущности, наследник <a class="el" href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт.">IEntity</a> -&gt; неперемещаемые объекты, с которыми будет взаимодействовать Пакман Чтобы скопировать статические сущности, применяем паттерн Prototype. Для этого создает возможность клонирования </td></tr>
+<tr id="row_3_2_0_1_0_" class="odd"><td class="entry"><span style="width:80px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_food.html" target="_self">Food</a></td><td class="desc">Наследник <a class="el" href="struct_i_static_entity.html" title="Статические сущности, наследник IEntity -&gt; неперемещаемые объекты, с которыми будет взаимодействовать...">IStaticEntity</a> - еда </td></tr>
+<tr id="row_3_2_0_2_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pacman.html" target="_self">Pacman</a></td><td class="desc"></td></tr>
+<tr id="row_3_2_1_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_3_2_1_" class="arrow" onclick="dynsection.toggleFolder('3_2_1_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_room_side.html" target="_self">IRoomSide</a></td><td class="desc"></td></tr>
+<tr id="row_3_2_1_0_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pass.html" target="_self">Pass</a></td><td class="desc">проход, который знает о двух комнатах, которые он связывает </td></tr>
+<tr id="row_3_2_1_1_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_wall.html" target="_self">Wall</a></td><td class="desc">стена, которая хранит в себе информацию о том в какой комнате находится </td></tr>
+<tr id="row_3_3_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_maze.html" target="_self">Maze</a></td><td class="desc"></td></tr>
+<tr id="row_3_4_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_menu.html" target="_self">Menu</a></td><td class="desc"></td></tr>
+<tr id="row_3_5_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_room.html" target="_self">Room</a></td><td class="desc"></td></tr>
+<tr id="row_4_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_4_" class="arrow" onclick="dynsection.toggleFolder('4_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_game_builder.html" target="_self">IGameBuilder</a></td><td class="desc"></td></tr>
+<tr id="row_4_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_4_0_" class="arrow" onclick="dynsection.toggleFolder('4_0_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_common_builder.html" target="_self">CommonBuilder</a></td><td class="desc"></td></tr>
+<tr id="row_4_0_0_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_complex_builder.html" target="_self">ComplexBuilder</a></td><td class="desc"></td></tr>
+<tr id="row_4_0_1_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_simple_builder.html" target="_self">SimpleBuilder</a></td><td class="desc"></td></tr>
+<tr id="row_5_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_5_" class="arrow" onclick="dynsection.toggleFolder('5_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_game_event.html" target="_self">IGameEvent</a></td><td class="desc">Абстрактрый класс для различных игровых событий </td></tr>
+<tr id="row_5_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_delete_static_entity.html" target="_self">DeleteStaticEntity</a></td><td class="desc">Удаление еды </td></tr>
+<tr id="row_5_1_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_lost_game.html" target="_self">LostGame</a></td><td class="desc"></td></tr>
+<tr id="row_5_2_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_screamer_composite_event.html" target="_self">ScreamerCompositeEvent</a></td><td class="desc">Совмещение двум событий: удаление еды и скример В ресурсах храним сущность, которую хотим удалить </td></tr>
+<tr id="row_5_3_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_screamer_event.html" target="_self">ScreamerEvent</a></td><td class="desc">Скример </td></tr>
+<tr id="row_5_4_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_win_game.html" target="_self">WinGame</a></td><td class="desc"></td></tr>
+<tr id="row_6_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_6_" class="arrow" onclick="dynsection.toggleFolder('6_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_observer.html" target="_self">IObserver</a></td><td class="desc">Паттерн Observer. Общий интерфейс для наблюдателей </td></tr>
+<tr id="row_6_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_score_count.html" target="_self">ScoreCount</a></td><td class="desc">Наблюдатель - счетчик еды. При съедании еды посылается уведомление и наблюдатель увеличивает счетчик для конкретного игрока </td></tr>
+<tr id="row_7_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_7_" class="arrow" onclick="dynsection.toggleFolder('7_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_select_command.html" target="_self">ISelectCommand</a></td><td class="desc"></td></tr>
+<tr id="row_7_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_7_0_" class="arrow" onclick="dynsection.toggleFolder('7_0_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_change_state_command.html" target="_self">ChangeStateCommand</a></td><td class="desc"></td></tr>
+<tr id="row_7_0_0_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_exit_command.html" target="_self">ExitCommand</a></td><td class="desc"></td></tr>
+<tr id="row_7_0_1_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_game_command.html" target="_self">GameCommand</a></td><td class="desc"></td></tr>
+<tr id="row_8_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_8_" class="arrow" onclick="dynsection.toggleFolder('8_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_state.html" target="_self">IState</a></td><td class="desc"></td></tr>
+<tr id="row_8_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_exit_state.html" target="_self">ExitState</a></td><td class="desc">Состояние, которое завершает игры. Для этого в do_step всегда возвращает false -&gt; так <a class="el" href="class_application.html">Application</a> поймет, что надо завершить работу и выйти из бесконечного цикла делегирования своей работы состояниям </td></tr>
+<tr id="row_8_1_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_game_state.html" target="_self">GameState</a></td><td class="desc">Взаимодействие врага с объектами лабиринта, что порождает игровые события </td></tr>
+<tr id="row_8_2_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_select_state.html" target="_self">SelectState</a></td><td class="desc"><a class="el" href="struct_select_state.html" title="SelectState - состояние, при котором происходит выбор уровня и выход из игры.">SelectState</a> - состояние, при котором происходит выбор уровня и выход из игры </td></tr>
+<tr id="row_9_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_9_" class="arrow" onclick="dynsection.toggleFolder('9_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_i_state_manager.html" target="_self">IStateManager</a></td><td class="desc"></td></tr>
+<tr id="row_9_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_application.html" target="_self">Application</a></td><td class="desc"></td></tr>
+<tr id="row_10_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_10_" class="arrow" onclick="dynsection.toggleFolder('10_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_visitable.html" target="_self">IVisitable</a></td><td class="desc"></td></tr>
+<tr id="row_10_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_i_dynamic_entity.html" target="_self">IDynamicEntity</a></td><td class="desc">Динамические сущности, наследник <a class="el" href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт.">IEntity</a> -&gt; может выполнять какие-то действия </td></tr>
+<tr id="row_10_1_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_i_static_entity.html" target="_self">IStaticEntity</a></td><td class="desc">Статические сущности, наследник <a class="el" href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт.">IEntity</a> -&gt; неперемещаемые объекты, с которыми будет взаимодействовать Пакман Чтобы скопировать статические сущности, применяем паттерн Prototype. Для этого создает возможность клонирования </td></tr>
+<tr id="row_11_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_11_" class="arrow" onclick="dynsection.toggleFolder('11_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_visitor.html" target="_self">IVisitor</a></td><td class="desc">Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: <a class="el" href="class_i_visitor.html" title="Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: IVisitor (посетит...">IVisitor</a> (посетитель) и <a class="el" href="class_i_visitable.html">IVisitable</a> (нечто посещаемое) </td></tr>
+<tr id="row_11_0_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pacman.html" target="_self">Pacman</a></td><td class="desc"></td></tr>
+<tr id="row_12_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_12_" class="arrow" onclick="dynsection.toggleFolder('12_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_window_keeper.html" target="_self">IWindowKeeper</a></td><td class="desc"></td></tr>
+<tr id="row_12_0_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_game_state.html" target="_self">GameState</a></td><td class="desc">Взаимодействие врага с объектами лабиринта, что порождает игровые события </td></tr>
+<tr id="row_12_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_select_state.html" target="_self">SelectState</a></td><td class="desc"><a class="el" href="struct_select_state.html" title="SelectState - состояние, при котором происходит выбор уровня и выход из игры.">SelectState</a> - состояние, при котором происходит выбор уровня и выход из игры </td></tr>
+<tr id="row_13_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_menu_game.html" target="_self">MenuGame</a></td><td class="desc"></td></tr>
+<tr id="row_14_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_my_assets__one.html" target="_self">MyAssets_one</a></td><td class="desc">загрузка текстур, звука, шрифта </td></tr>
+<tr id="row_15_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_15_" class="arrow" onclick="dynsection.toggleFolder('15_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_my_texture.html" target="_self">MyTexture</a></td><td class="desc"></td></tr>
+<tr id="row_15_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_background_texture.html" target="_self">BackgroundTexture</a></td><td class="desc"></td></tr>
+<tr id="row_15_1_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_enemy_texture.html" target="_self">EnemyTexture</a></td><td class="desc"></td></tr>
+<tr id="row_15_2_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_food_texture.html" target="_self">FoodTexture</a></td><td class="desc"></td></tr>
+<tr id="row_15_3_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pacman_texture.html" target="_self">PacmanTexture</a></td><td class="desc"></td></tr>
+<tr id="row_15_4_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pacman_texture2.html" target="_self">PacmanTexture2</a></td><td class="desc"></td></tr>
+<tr id="row_16_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_theme_colors.html" target="_self">ThemeColors</a></td><td class="desc"></td></tr>
+<tr id="row_17_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_theme_manager.html" target="_self">ThemeManager</a></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/hierarchy.js b/assets/docs/html/hierarchy.js
new file mode 100644
index 0000000000000000000000000000000000000000..0678e0546cb3f62530fa603d5ffe810834d7335c
--- /dev/null
+++ b/assets/docs/html/hierarchy.js
@@ -0,0 +1,80 @@
+var hierarchy =
+[
+    [ "ContextManager", "class_context_manager.html", null ],
+    [ "GameBuilderDirector", "class_game_builder_director.html", null ],
+    [ "GameContext", "struct_game_context.html", null ],
+    [ "IDrawable", "struct_i_drawable.html", [
+      [ "Button", "class_button.html", null ],
+      [ "ChooseButton", "class_choose_button.html", null ],
+      [ "IPreparable", "struct_i_preparable.html", [
+        [ "IEntity", "class_i_entity.html", [
+          [ "IDynamicEntity", "struct_i_dynamic_entity.html", [
+            [ "Enemy", "class_enemy.html", null ]
+          ] ],
+          [ "IStaticEntity", "struct_i_static_entity.html", [
+            [ "Food", "class_food.html", null ]
+          ] ],
+          [ "Pacman", "class_pacman.html", null ]
+        ] ],
+        [ "IRoomSide", "class_i_room_side.html", [
+          [ "Pass", "class_pass.html", null ],
+          [ "Wall", "class_wall.html", null ]
+        ] ]
+      ] ],
+      [ "Maze", "class_maze.html", null ],
+      [ "Menu", "class_menu.html", null ],
+      [ "Room", "class_room.html", null ]
+    ] ],
+    [ "IGameBuilder", "class_i_game_builder.html", [
+      [ "CommonBuilder", "class_common_builder.html", [
+        [ "ComplexBuilder", "class_complex_builder.html", null ],
+        [ "SimpleBuilder", "class_simple_builder.html", null ]
+      ] ]
+    ] ],
+    [ "IGameEvent", "class_i_game_event.html", [
+      [ "DeleteStaticEntity", "class_delete_static_entity.html", null ],
+      [ "LostGame", "class_lost_game.html", null ],
+      [ "ScreamerCompositeEvent", "class_screamer_composite_event.html", null ],
+      [ "ScreamerEvent", "struct_screamer_event.html", null ],
+      [ "WinGame", "class_win_game.html", null ]
+    ] ],
+    [ "IObserver", "class_i_observer.html", [
+      [ "ScoreCount", "class_score_count.html", null ]
+    ] ],
+    [ "ISelectCommand", "class_i_select_command.html", [
+      [ "ChangeStateCommand", "class_change_state_command.html", [
+        [ "ExitCommand", "class_exit_command.html", null ],
+        [ "GameCommand", "class_game_command.html", null ]
+      ] ]
+    ] ],
+    [ "IState", "class_i_state.html", [
+      [ "ExitState", "class_exit_state.html", null ],
+      [ "GameState", "class_game_state.html", null ],
+      [ "SelectState", "struct_select_state.html", null ]
+    ] ],
+    [ "IStateManager", "struct_i_state_manager.html", [
+      [ "Application", "class_application.html", null ]
+    ] ],
+    [ "IVisitable", "class_i_visitable.html", [
+      [ "IDynamicEntity", "struct_i_dynamic_entity.html", null ],
+      [ "IStaticEntity", "struct_i_static_entity.html", null ]
+    ] ],
+    [ "IVisitor", "class_i_visitor.html", [
+      [ "Pacman", "class_pacman.html", null ]
+    ] ],
+    [ "IWindowKeeper", "class_i_window_keeper.html", [
+      [ "GameState", "class_game_state.html", null ],
+      [ "SelectState", "struct_select_state.html", null ]
+    ] ],
+    [ "MenuGame", "class_menu_game.html", null ],
+    [ "MyAssets_one", "struct_my_assets__one.html", null ],
+    [ "MyTexture", "class_my_texture.html", [
+      [ "BackgroundTexture", "class_background_texture.html", null ],
+      [ "EnemyTexture", "class_enemy_texture.html", null ],
+      [ "FoodTexture", "class_food_texture.html", null ],
+      [ "PacmanTexture", "class_pacman_texture.html", null ],
+      [ "PacmanTexture2", "class_pacman_texture2.html", null ]
+    ] ],
+    [ "ThemeColors", "struct_theme_colors.html", null ],
+    [ "ThemeManager", "class_theme_manager.html", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/index.html b/assets/docs/html/index.html
new file mode 100644
index 0000000000000000000000000000000000000000..3c4329c7095cb9419ff6726f2050e8b03875d534
--- /dev/null
+++ b/assets/docs/html/index.html
@@ -0,0 +1,118 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Титульная страница</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('index.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Pacman Документация</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="doxygen_crawl.html"></a>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/jquery.js b/assets/docs/html/jquery.js
new file mode 100644
index 0000000000000000000000000000000000000000..875ada738f09baedd40cf597556d6a764ac03270
--- /dev/null
+++ b/assets/docs/html/jquery.js
@@ -0,0 +1,204 @@
+/*! jQuery v3.6.0 | (c) OpenJS Foundation and other contributors | jquery.org/license */
+!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}
+var f="3.6.0",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0<t&&t-1 in e)}S.fn=S.prototype={jquery:f,constructor:S,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=S.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return S.each(this,e)},map:function(n){return this.pushStack(S.map(this,function(e,t){return n.call(e,t,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(S.grep(this,function(e,t){return(t+1)%2}))},odd:function(){return this.pushStack(S.grep(this,function(e,t){return t%2}))},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},
+push:u,sort:t.sort,splice:t.splice},S.extend=S.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||m(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],"__proto__"!==t&&a!==r&&(l&&r&&(S.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||S.isPlainObject(n)?n:{},i=!1,a[t]=S.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},S.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==o.call(e))&&(!(t=r(e))||"function"==typeof(n=v.call(t,"constructor")&&t.constructor)&&a.call(n)===l)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t,n){b(e,{nonce:t&&t.nonce},n)},each:function(e,t){var n,r=0;if(p(e)){for(n=e.length;r<n;r++)if(!1===t.call(e[r],r,e[r]))break}else for(r in e)if(!1===t.call(
+e[r],r,e[r]))break;return e},makeArray:function(e,t){var n=t||[];return null!=e&&(p(Object(e))?S.merge(n,"string"==typeof e?[e]:e):u.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:i.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,o=0,a=[];if(p(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&a.push(i);else for(o in e)null!=(i=t(e[o],o,n))&&a.push(i);return g(a)},guid:1,support:y}),"function"==typeof Symbol&&(S.fn[Symbol.iterator]=t[Symbol.iterator]),S.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){n["[object "+t+"]"]=t.toLowerCase()});var d=function(n){var e,d,b,o,i,h,f,g,w,u,l,T,C,a,E,v,s,c,y,S="sizzle"+1*new Date,p=n.document,k=0,r=0,m=ue(),x=ue(),A=ue(),N=ue(),j=function(e,t){return e===t&&(l=!0),0},D={}.hasOwnProperty,t=[],q=t.pop,L=t.push,H=t.push,
+O=t.slice,P=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},R="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",M="[\\x20\\t\\r\\n\\f]",I="(?:\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",W="\\["+M+"*("+I+")(?:"+M+"*([*^$|!~]?=)"+M+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+I+"))|)"+M+"*\\]",F=":("+I+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+W+")*)|.*)\\)|)",B=new RegExp(M+"+","g"),$=new RegExp("^"+M+"+|((?:^|[^\\\\])(?:\\\\.)*)"+M+"+$","g"),_=new RegExp("^"+M+"*,"+M+"*"),z=new RegExp("^"+M+"*([>+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp(
+"^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"пїЅ":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType
+}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c
+)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){
+return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e&&e.namespaceURI,n=e&&(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(
+":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id")
+)&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="<a id='"+S+"'></a><select id='"+S+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push(
+"\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(
+a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},j=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,
+null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0<se(t,C,null,[e]).length},se.contains=function(e,t){return(e.ownerDocument||e)!=C&&T(e),y(e,t)},se.attr=function(e,t){(e.ownerDocument||e)!=C&&T(e);var n=b.attrHandle[t.toLowerCase()],r=n&&D.call(b.attrHandle,t.toLowerCase())?n(e,t,!E):void 0;return void 0!==r?r:d.attributes||!E?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},se.escape=function(e){return(e+"").replace(re,ie)},se.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},se.uniqueSort=function(e){var t,n=[],r=0,i=0;if(l=!d.detectDuplicates,u=!d.sortStable&&e.slice(0),e.sort(j),l){while(t=e[i++])t===e[i]&&(r=n.push(i));while(r--)e.splice(n[r],1)}return u=null,e},o=se.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if(
+"string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=o(e)}else if(3===i||4===i)return e.nodeValue}else while(t=e[r++])n+=o(t);return n},(b=se.selectors={cacheLength:50,createPseudo:le,match:G,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne
+).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1<t.indexOf(i):"$="===r?i&&t.slice(-i.length)===i:"~="===r?-1<(" "+t.replace(B," ")+" ").indexOf(i):"|="===r&&(t===i||t.slice(0,i.length+1)===i+"-"))}},CHILD:function(h,e,t,g,v){var y="nth"!==h.slice(0,3),m="last"!==h.slice(-4),x="of-type"===e;return 1===g&&0===v?function(e){return!!e.parentNode}:function(e,t,n){var r,i,o,a,s,u,l=y!==m?"nextSibling":"previousSibling",c=e.parentNode,f=x&&e.nodeName.toLowerCase(),p=!n&&!x,d=!1;if(c){if(y){while(l){a=e;while(a=a[l])if(x?a.nodeName.toLowerCase()===f:1===a.nodeType
+)return!1;u=l="only"===h&&!u&&"nextSibling"}return!0}if(u=[m?c.firstChild:c.lastChild],m&&p){d=(s=(r=(i=(o=(a=c)[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1])&&r[2],a=s&&c.childNodes[s];while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if(1===a.nodeType&&++d&&a===e){i[h]=[k,s,d];break}}else if(p&&(d=s=(r=(i=(o=(a=e)[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1]),!1===d)while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if((x?a.nodeName.toLowerCase()===f:1===a.nodeType)&&++d&&(p&&((i=(o=a[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]=[k,d]),a===e))break;return(d-=v)===g||d%g==0&&0<=d/g}}},PSEUDO:function(e,o){var t,a=b.pseudos[e]||b.setFilters[e.toLowerCase()]||se.error("unsupported pseudo: "+e);return a[S]?a(o):1<a.length?(t=[e,e,"",o],b.setFilters.hasOwnProperty(e.toLowerCase())?le(function(e,t){var n,r=a(e,o),i=r.length;while(i--)e[n=P(e,r[i])]=!(t[n]=r[i])}):function(e){return a(e,0,t)}):a}},pseudos:{not:le(function(e){var r=[],i=[],s=f(e.replace($,"$1"));return s[S]?le(
+function(e,t,n,r){var i,o=s(e,null,r,[]),a=e.length;while(a--)(i=o[a])&&(e[a]=!(t[a]=i))}):function(e,t,n){return r[0]=e,s(r,null,n,i),r[0]=null,!i.pop()}}),has:le(function(t){return function(e){return 0<se(t,e).length}}),contains:le(function(t){return t=t.replace(te,ne),function(e){return-1<(e.textContent||o(e)).indexOf(t)}}),lang:le(function(n){return V.test(n||"")||se.error("unsupported lang: "+n),n=n.replace(te,ne).toLowerCase(),function(e){var t;do{if(t=E?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return(t=t.toLowerCase())===n||0===t.indexOf(n+"-")}while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var t=n.location&&n.location.hash;return t&&t.slice(1)===e.id},root:function(e){return e===a},focus:function(e){return e===C.activeElement&&(!C.hasFocus||C.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ge(!1),disabled:ge(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){
+return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!b.pseudos.empty(e)},header:function(e){return J.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:ve(function(){return[0]}),last:ve(function(e,t){return[t-1]}),eq:ve(function(e,t,n){return[n<0?n+t:n]}),even:ve(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:ve(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:ve(function(e,t,n){for(var r=n<0?n+t:t<n?t:n;0<=--r;)e.push(r);return e}),gt:ve(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}}).pseudos.nth=b.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})b.pseudos[e]=de(e);
+for(e in{submit:!0,reset:!0})b.pseudos[e]=he(e);function me(){}function xe(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function be(s,e,t){var u=e.dir,l=e.next,c=l||u,f=t&&"parentNode"===c,p=r++;return e.first?function(e,t,n){while(e=e[u])if(1===e.nodeType||f)return s(e,t,n);return!1}:function(e,t,n){var r,i,o,a=[k,p];if(n){while(e=e[u])if((1===e.nodeType||f)&&s(e,t,n))return!0}else while(e=e[u])if(1===e.nodeType||f)if(i=(o=e[S]||(e[S]={}))[e.uniqueID]||(o[e.uniqueID]={}),l&&l===e.nodeName.toLowerCase())e=e[u]||e;else{if((r=i[c])&&r[0]===k&&r[1]===p)return a[2]=r[2];if((i[c]=a)[2]=s(e,t,n))return!0}return!1}}function we(i){return 1<i.length?function(e,t,n){var r=i.length;while(r--)if(!i[r](e,t,n))return!1;return!0}:i[0]}function Te(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function Ce(d,h,g,v,y,e){return v&&!v[S]&&(v=Ce(v)),y&&!y[S]&&(y=Ce(y,e)),le(function(e,t,n,r){var i,o,a,s=[],u=[],l=t.length,c=e||function(e,t,n
+){for(var r=0,i=t.length;r<i;r++)se(e,t[r],n);return n}(h||"*",n.nodeType?[n]:n,[]),f=!d||!e&&h?c:Te(c,s,d,n,r),p=g?y||(e?d:l||v)?[]:t:f;if(g&&g(f,p,n,r),v){i=Te(p,u),v(i,[],n,r),o=i.length;while(o--)(a=i[o])&&(p[u[o]]=!(f[u[o]]=a))}if(e){if(y||d){if(y){i=[],o=p.length;while(o--)(a=p[o])&&i.push(f[o]=a);y(null,p=[],i,r)}o=p.length;while(o--)(a=p[o])&&-1<(i=y?P(e,a):s[o])&&(e[i]=!(t[i]=a))}}else p=Te(p===t?p.splice(l,p.length):p),y?y(null,t,p,r):H.apply(t,p)})}function Ee(e){for(var i,t,n,r=e.length,o=b.relative[e[0].type],a=o||b.relative[" "],s=o?1:0,u=be(function(e){return e===i},a,!0),l=be(function(e){return-1<P(i,e)},a,!0),c=[function(e,t,n){var r=!o&&(n||t!==w)||((i=t).nodeType?u(e,t,n):l(e,t,n));return i=null,r}];s<r;s++)if(t=b.relative[e[s].type])c=[be(we(c),t)];else{if((t=b.filter[e[s].type].apply(null,e[s].matches))[S]){for(n=++s;n<r;n++)if(b.relative[e[n].type])break;return Ce(1<s&&we(c),1<s&&xe(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace($,"$1"),t,s<n&&Ee(e.slice(s,n)),n<r&&Ee(
+e=e.slice(n)),n<r&&xe(e))}c.push(t)}return we(c)}return me.prototype=b.filters=b.pseudos,b.setFilters=new me,h=se.tokenize=function(e,t){var n,r,i,o,a,s,u,l=x[e+" "];if(l)return t?0:l.slice(0);a=e,s=[],u=b.preFilter;while(a){for(o in n&&!(r=_.exec(a))||(r&&(a=a.slice(r[0].length)||a),s.push(i=[])),n=!1,(r=z.exec(a))&&(n=r.shift(),i.push({value:n,type:r[0].replace($," ")}),a=a.slice(n.length)),b.filter)!(r=G[o].exec(a))||u[o]&&!(r=u[o](r))||(n=r.shift(),i.push({value:n,type:o,matches:r}),a=a.slice(n.length));if(!n)break}return t?a.length:a?se.error(e):x(e,s).slice(0)},f=se.compile=function(e,t){var n,v,y,m,x,r,i=[],o=[],a=A[e+" "];if(!a){t||(t=h(e)),n=t.length;while(n--)(a=Ee(t[n]))[S]?i.push(a):o.push(a);(a=A(e,(v=o,m=0<(y=i).length,x=0<v.length,r=function(e,t,n,r,i){var o,a,s,u=0,l="0",c=e&&[],f=[],p=w,d=e||x&&b.find.TAG("*",i),h=k+=null==p?1:Math.random()||.1,g=d.length;for(i&&(w=t==C||t||i);l!==g&&null!=(o=d[l]);l++){if(x&&o){a=0,t||o.ownerDocument==C||(T(o),n=!E);while(s=v[a++])if(s(o,t||C,n)){r.push(o);
+break}i&&(k=h)}m&&((o=!s&&o)&&u--,e&&c.push(o))}if(u+=l,m&&l!==u){a=0;while(s=y[a++])s(c,f,t,n);if(e){if(0<u)while(l--)c[l]||f[l]||(f[l]=q.call(r));f=Te(f)}H.apply(r,f),i&&!e&&0<f.length&&1<u+y.length&&se.uniqueSort(r)}return i&&(k=h,w=p),c},m?le(r):r))).selector=e}return a},g=se.select=function(e,t,n,r){var i,o,a,s,u,l="function"==typeof e&&e,c=!r&&h(e=l.selector||e);if(n=n||[],1===c.length){if(2<(o=c[0]=c[0].slice(0)).length&&"ID"===(a=o[0]).type&&9===t.nodeType&&E&&b.relative[o[1].type]){if(!(t=(b.find.ID(a.matches[0].replace(te,ne),t)||[])[0]))return n;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}i=G.needsContext.test(e)?0:o.length;while(i--){if(a=o[i],b.relative[s=a.type])break;if((u=b.find[s])&&(r=u(a.matches[0].replace(te,ne),ee.test(o[0].type)&&ye(t.parentNode)||t))){if(o.splice(i,1),!(e=r.length&&xe(o)))return H.apply(n,r),n;break}}}return(l||f(e,c))(r,t,!E,n,!t||ee.test(e)&&ye(t.parentNode)||t),n},d.sortStable=S.split("").sort(j).join("")===S,d.detectDuplicates=!!l,T(),d.sortDetached=ce(
+function(e){return 1&e.compareDocumentPosition(C.createElement("fieldset"))}),ce(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||fe("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),d.attributes&&ce(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||fe("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),ce(function(e){return null==e.getAttribute("disabled")})||fe(R,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),se}(C);S.find=d,S.expr=d.selectors,S.expr[":"]=S.expr.pseudos,S.uniqueSort=S.unique=d.uniqueSort,S.text=d.getText,S.isXMLDoc=d.isXML,S.contains=d.contains,S.escapeSelector=d.escape;var h=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&S(e).is(n))break;r.push(e)}return r},T=function(e,t){
+for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},k=S.expr.match.needsContext;function A(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var N=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1<i.call(n,e)!==r}):S.filter(n,e,r)}S.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?S.find.matchesSelector(r,e)?[r]:[]:S.find.matches(e,S.grep(t,function(e){return 1===e.nodeType}))},S.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(S(e).filter(function(){for(t=0;t<r;t++)if(S.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)S.find(e,i[t],n);return 1<r?S.uniqueSort(n):n},filter:function(e){return this.pushStack(j(this,e||[],!1))},not:function(e){return this.pushStack(j(
+this,e||[],!0))},is:function(e){return!!j(this,"string"==typeof e&&k.test(e)?S(e):e||[],!1).length}});var D,q=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||D,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,D=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(
+var e=0;e<n;e++)if(S.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&S(e);if(!k.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?-1<a.index(n):1===n.nodeType&&S.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(1<o.length?S.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?i.call(S(e),this[0]):i.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(S.uniqueSort(S.merge(this.get(),S(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),S.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return h(e,"parentNode")},parentsUntil:function(e,t,n){return h(e,"parentNode",n)},next:function(e){return O(e,"nextSibling")},prev:function(e){return O(e,"previousSibling")},nextAll:function(e){return h(e,"nextSibling")},prevAll:function(e){
+return h(e,"previousSibling")},nextUntil:function(e,t,n){return h(e,"nextSibling",n)},prevUntil:function(e,t,n){return h(e,"previousSibling",n)},siblings:function(e){return T((e.parentNode||{}).firstChild,e)},children:function(e){return T(e.firstChild)},contents:function(e){return null!=e.contentDocument&&r(e.contentDocument)?e.contentDocument:(A(e,"template")&&(e=e.content||e),S.merge([],e.childNodes))}},function(r,i){S.fn[r]=function(e,t){var n=S.map(this,i,e);return"Until"!==r.slice(-5)&&(t=e),t&&"string"==typeof t&&(n=S.filter(t,n)),1<this.length&&(H[r]||S.uniqueSort(n),L.test(r)&&n.reverse()),this.pushStack(n)}});var P=/[^\x20\t\r\n\f]+/g;function R(e){return e}function M(e){throw e}function I(e,t,n,r){var i;try{e&&m(i=e.promise)?i.call(e).done(t).fail(n):e&&m(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}S.Callbacks=function(r){var e,n;r="string"==typeof r?(e=r,n={},S.each(e.match(P)||[],function(e,t){n[t]=!0}),n):S.extend({},r);var i,t,o,a,s=[],u=[],l=-1,c=function(
+){for(a=a||r.once,o=i=!0;u.length;l=-1){t=u.shift();while(++l<s.length)!1===s[l].apply(t[0],t[1])&&r.stopOnFalse&&(l=s.length,t=!1)}r.memory||(t=!1),i=!1,a&&(s=t?[]:"")},f={add:function(){return s&&(t&&!i&&(l=s.length-1,u.push(t)),function n(e){S.each(e,function(e,t){m(t)?r.unique&&f.has(t)||s.push(t):t&&t.length&&"string"!==w(t)&&n(t)})}(arguments),t&&!i&&c()),this},remove:function(){return S.each(arguments,function(e,t){var n;while(-1<(n=S.inArray(t,s,n)))s.splice(n,1),n<=l&&l--}),this},has:function(e){return e?-1<S.inArray(e,s):0<s.length},empty:function(){return s&&(s=[]),this},disable:function(){return a=u=[],s=t="",this},disabled:function(){return!s},lock:function(){return a=u=[],t||i||(s=t=""),this},locked:function(){return!!a},fireWith:function(e,t){return a||(t=[e,(t=t||[]).slice?t.slice():t],u.push(t),i||c()),this},fire:function(){return f.fireWith(this,arguments),this},fired:function(){return!!o}};return f},S.extend({Deferred:function(e){var o=[["notify","progress",S.Callbacks("memory"),
+S.Callbacks("memory"),2],["resolve","done",S.Callbacks("once memory"),S.Callbacks("once memory"),0,"resolved"],["reject","fail",S.Callbacks("once memory"),S.Callbacks("once memory"),1,"rejected"]],i="pending",a={state:function(){return i},always:function(){return s.done(arguments).fail(arguments),this},catch:function(e){return a.then(null,e)},pipe:function(){var i=arguments;return S.Deferred(function(r){S.each(o,function(e,t){var n=m(i[t[4]])&&i[t[4]];s[t[1]](function(){var e=n&&n.apply(this,arguments);e&&m(e.promise)?e.promise().progress(r.notify).done(r.resolve).fail(r.reject):r[t[0]+"With"](this,n?[e]:arguments)})}),i=null}).promise()},then:function(t,n,r){var u=0;function l(i,o,a,s){return function(){var n=this,r=arguments,e=function(){var e,t;if(!(i<u)){if((e=a.apply(n,r))===o.promise())throw new TypeError("Thenable self-resolution");t=e&&("object"==typeof e||"function"==typeof e)&&e.then,m(t)?s?t.call(e,l(u,o,R,s),l(u,o,M,s)):(u++,t.call(e,l(u,o,R,s),l(u,o,M,s),l(u,o,R,o.notifyWith))):(a!==R&&(n=void 0,
+r=[e]),(s||o.resolveWith)(n,r))}},t=s?e:function(){try{e()}catch(e){S.Deferred.exceptionHook&&S.Deferred.exceptionHook(e,t.stackTrace),u<=i+1&&(a!==M&&(n=void 0,r=[e]),o.rejectWith(n,r))}};i?t():(S.Deferred.getStackHook&&(t.stackTrace=S.Deferred.getStackHook()),C.setTimeout(t))}}return S.Deferred(function(e){o[0][3].add(l(0,e,m(r)?r:R,e.notifyWith)),o[1][3].add(l(0,e,m(t)?t:R)),o[2][3].add(l(0,e,m(n)?n:M))}).promise()},promise:function(e){return null!=e?S.extend(e,a):a}},s={};return S.each(o,function(e,t){var n=t[2],r=t[5];a[t[1]]=n.add,r&&n.add(function(){i=r},o[3-e][2].disable,o[3-e][3].disable,o[0][2].lock,o[0][3].lock),n.add(t[3].fire),s[t[0]]=function(){return s[t[0]+"With"](this===s?void 0:this,arguments),this},s[t[0]+"With"]=n.fireWith}),a.promise(s),e&&e.call(s,s),s},when:function(e){var n=arguments.length,t=n,r=Array(t),i=s.call(arguments),o=S.Deferred(),a=function(t){return function(e){r[t]=this,i[t]=1<arguments.length?s.call(arguments):e,--n||o.resolveWith(r,i)}};if(n<=1&&(I(e,o.done(a(t)).resolve,
+o.reject,!n),"pending"===o.state()||m(i[t]&&i[t].then)))return o.then();while(t--)I(i[t],a(t),o.reject);return o.promise()}});var W=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;S.Deferred.exceptionHook=function(e,t){C.console&&C.console.warn&&e&&W.test(e.name)&&C.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},S.readyException=function(e){C.setTimeout(function(){throw e})};var F=S.Deferred();function B(){E.removeEventListener("DOMContentLoaded",B),C.removeEventListener("load",B),S.ready()}S.fn.ready=function(e){return F.then(e)["catch"](function(e){S.readyException(e)}),this},S.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--S.readyWait:S.isReady)||(S.isReady=!0)!==e&&0<--S.readyWait||F.resolveWith(E,[S])}}),S.ready.then=F.then,"complete"===E.readyState||"loading"!==E.readyState&&!E.documentElement.doScroll?C.setTimeout(S.ready):(E.addEventListener("DOMContentLoaded",B),C.addEventListener("load",B));var $=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if(
+"object"===w(n))for(s in i=!0,n)$(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,m(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(S(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},_=/^-ms-/,z=/-([a-z])/g;function U(e,t){return t.toUpperCase()}function X(e){return e.replace(_,"ms-").replace(z,U)}var V=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function G(){this.expando=S.expando+G.uid++}G.uid=1,G.prototype={cache:function(e){var t=e[this.expando];return t||(t={},V(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[X(t)]=n;else for(r in t)i[X(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][X(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){
+var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(X):(t=X(t))in r?[t]:t.match(P)||[]).length;while(n--)delete r[t[n]]}(void 0===t||S.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!S.isEmptyObject(t)}};var Y=new G,Q=new G,J=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,K=/[A-Z]/g;function Z(e,t,n){var r,i;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(K,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n="true"===(i=n)||"false"!==i&&("null"===i?null:i===+i+""?+i:J.test(i)?JSON.parse(i):i)}catch(e){}Q.set(e,t,n)}else n=void 0;return n}S.extend({hasData:function(e){return Q.hasData(e)||Y.hasData(e)},data:function(e,t,n){return Q.access(e,t,n)},removeData:function(e,t){Q.remove(e,t)},_data:function(e,t,n){return Y.access(e,t,n)},_removeData:function(e,t){Y.remove(e,t)}}),S.fn.extend({data:function(n,e){var t,r,i,o=this[0],a=o&&o.attributes;if(void 0===n){if(this.length&&(i=Q.get(o),
+1===o.nodeType&&!Y.get(o,"hasDataAttrs"))){t=a.length;while(t--)a[t]&&0===(r=a[t].name).indexOf("data-")&&(r=X(r.slice(5)),Z(o,r,i[r]));Y.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof n?this.each(function(){Q.set(this,n)}):$(this,function(e){var t;if(o&&void 0===e)return void 0!==(t=Q.get(o,n))?t:void 0!==(t=Z(o,n))?t:void 0;this.each(function(){Q.set(this,n,e)})},null,e,1<arguments.length,null,!0)},removeData:function(e){return this.each(function(){Q.remove(this,e)})}}),S.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Y.get(e,t),n&&(!r||Array.isArray(n)?r=Y.access(e,t,S.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=S.queue(e,t),r=n.length,i=n.shift(),o=S._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,function(){S.dequeue(e,t)},o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Y.get(e,n)||Y.access(e,n,{empty:S.Callbacks("once memory").add(function(){
+Y.remove(e,[t+"queue",n])})})}}),S.fn.extend({queue:function(t,n){var e=2;return"string"!=typeof t&&(n=t,t="fx",e--),arguments.length<e?S.queue(this[0],t):void 0===n?this:this.each(function(){var e=S.queue(this,t,n);S._queueHooks(this,t),"fx"===t&&"inprogress"!==e[0]&&S.dequeue(this,t)})},dequeue:function(e){return this.each(function(){S.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=S.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};"string"!=typeof e&&(t=e,e=void 0),e=e||"fx";while(a--)(n=Y.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var ee=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,te=new RegExp("^(?:([+-])=|)("+ee+")([a-z%]*)$","i"),ne=["Top","Right","Bottom","Left"],re=E.documentElement,ie=function(e){return S.contains(e.ownerDocument,e)},oe={composed:!0};re.getRootNode&&(ie=function(e){return S.contains(e.ownerDocument,e)||e.getRootNode(oe)===e.ownerDocument});var ae=function(e,t
+){return"none"===(e=t||e).style.display||""===e.style.display&&ie(e)&&"none"===S.css(e,"display")};function se(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return S.css(e,t,"")},u=s(),l=n&&n[3]||(S.cssNumber[t]?"":"px"),c=e.nodeType&&(S.cssNumber[t]||"px"!==l&&+u)&&te.exec(S.css(e,t));if(c&&c[3]!==l){u/=2,l=l||c[3],c=+u||1;while(a--)S.style(e,t,c+l),(1-o)*(1-(o=s()/u||.5))<=0&&(a=0),c/=o;c*=2,S.style(e,t,c+l),n=n||[]}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}var ue={};function le(e,t){for(var n,r,i,o,a,s,u,l=[],c=0,f=e.length;c<f;c++)(r=e[c]).style&&(n=r.style.display,t?("none"===n&&(l[c]=Y.get(r,"display")||null,l[c]||(r.style.display="")),""===r.style.display&&ae(r)&&(l[c]=(u=a=o=void 0,a=(i=r).ownerDocument,s=i.nodeName,(u=ue[s])||(o=a.body.appendChild(a.createElement(s)),u=S.css(o,"display"),o.parentNode.removeChild(o),"none"===u&&(u="block"),ue[s]=u)))):"none"!==n&&(l[c]="none",Y.set(r,"display",n)));for(c=0;c<f;c++)null!=l[c]&&(e[c
+].style.display=l[c]);return e}S.fn.extend({show:function(){return le(this,!0)},hide:function(){return le(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){ae(this)?S(this).show():S(this).hide()})}});var ce,fe,pe=/^(?:checkbox|radio)$/i,de=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="<textarea>x</textarea>",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="<option></option>",y.option=!!ce.lastChild;var ge={thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function ve(e,t){var n;
+return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n<r;n++)Y.set(e[n],"globalEval",!t||Y.get(t[n],"globalEval"))}ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td,y.option||(ge.optgroup=ge.option=[1,"<select multiple='multiple'>","</select>"]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d<h;d++)if((o=e[d])||0===o)if("object"===w(o))S.merge(p,o.nodeType?[o]:o);else if(me.test(o)){a=a||f.appendChild(t.createElement("div")),s=(de.exec(o)||["",""])[1].toLowerCase(),u=ge[s]||ge._default,a.innerHTML=u[1]+S.htmlPrefilter(o)+u[2],c=u[0];while(c--)a=a.lastChild;S.merge(p,a.childNodes),(a=f.firstChild).textContent=""}else p.push(t.createTextNode(o));f.textContent="",d=0;while(o=p[d++])if(r&&-1<S.inArray(o,r))i&&i.push(o);else if(l=ie(o),a=ve(f.appendChild(o),
+"script"),l&&ye(a),n){c=0;while(o=a[c++])he.test(o.type||"")&&n.push(o)}return f}var be=/^([^.]*)(?:\.(.+)|)/;function we(){return!0}function Te(){return!1}function Ce(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ee(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ee(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Te;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return S().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=S.guid++)),e.each(function(){S.event.add(this,t,i,r,n)})}function Se(e,i,o){o?(Y.set(e,i,!1),S.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Y.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(S.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Y.set(this,i,r),t=o(this,i),this[i](),r!==(n=Y.get(this,i))||t?Y.set(this,i,!1):n={},r!==n
+)return e.stopImmediatePropagation(),e.preventDefault(),n&&n.value}else r.length&&(Y.set(this,i,{value:S.event.trigger(S.extend(r[0],S.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Y.get(e,i)&&S.event.add(e,i,we)}S.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.get(t);if(V(t)){n.handler&&(n=(o=n).handler,i=o.selector),i&&S.find.matchesSelector(re,i),n.guid||(n.guid=S.guid++),(u=v.events)||(u=v.events=Object.create(null)),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof S&&S.event.triggered!==e.type?S.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(P)||[""]).length;while(l--)d=g=(s=be.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=S.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=S.event.special[d]||{},c=S.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&S.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,
+f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),S.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.hasData(e)&&Y.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(P)||[""]).length;while(l--)if(d=g=(s=be.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=S.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||S.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)S.event.remove(e,d+t[l],n,r,!0);S.isEmptyObject(u)&&Y.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=new Array(
+arguments.length),u=S.event.fix(e),l=(Y.get(this,"events")||Object.create(null))[u.type]||[],c=S.event.special[u.type]||{};for(s[0]=u,t=1;t<arguments.length;t++)s[t]=arguments[t];if(u.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,u)){a=S.event.handlers.call(this,u,l),t=0;while((i=a[t++])&&!u.isPropagationStopped()){u.currentTarget=i.elem,n=0;while((o=i.handlers[n++])&&!u.isImmediatePropagationStopped())u.rnamespace&&!1!==o.namespace&&!u.rnamespace.test(o.namespace)||(u.handleObj=o,u.data=o.data,void 0!==(r=((S.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,s))&&!1===(u.result=r)&&(u.preventDefault(),u.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,u),u.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!("click"===e.type&&1<=e.button))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<u;n++)void 0===a[i=(r=t[n]).selector+" "]&&(a[i
+]=r.needsContext?-1<S(i,this).index(l):S.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(t,e){Object.defineProperty(S.Event.prototype,t,{enumerable:!0,configurable:!0,get:m(e)?function(){if(this.originalEvent)return e(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[t]},set:function(e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e})}})},fix:function(e){return e[S.expando]?e:new S.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Se(t,"click",we),!1},trigger:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Se(t,"click"),!0},_default:function(e){var t=e.target;return pe.test(t.type)&&t.click&&A(t,"input")&&Y.get(t,"click")||A(t,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(
+e.originalEvent.returnValue=e.result)}}}},S.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},S.Event=function(e,t){if(!(this instanceof S.Event))return new S.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?we:Te,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&S.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[S.expando]=!0},S.Event.prototype={constructor:S.Event,isDefaultPrevented:Te,isPropagationStopped:Te,isImmediatePropagationStopped:Te,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=we,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=we,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;
+this.isImmediatePropagationStopped=we,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},S.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,char:!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:!0},S.event.addProp),S.each({focus:"focusin",blur:"focusout"},function(e,t){S.event.special[e]={setup:function(){return Se(this,e,Ce),!1},trigger:function(){return Se(this,e),!0},_default:function(){return!0},delegateType:t}}),S.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,i){S.event.special[e]={delegateType:i,bindType:i,handle:function(e){var t,n=e.relatedTarget,r=e.handleObj;return n&&(n===this||S.contains(this,n))||(e.type=r.origType,t=r.handler.apply(this,arguments),e.type=i),t
+}}}),S.fn.extend({on:function(e,t,n,r){return Ee(this,e,t,n,r)},one:function(e,t,n,r){return Ee(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,S(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=Te),this.each(function(){S.event.remove(this,e,n,t)})}});var ke=/<script|<style|<link/i,Ae=/checked\s*(?:[^=]|=\s*.checked.)/i,Ne=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function je(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function De(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function qe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Le(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,
+r=s[i].length;n<r;n++)S.event.add(t,i,s[i][n]);Q.hasData(e)&&(o=Q.access(e),a=S.extend({},o),Q.set(t,a))}}function He(n,r,i,o){r=g(r);var e,t,a,s,u,l,c=0,f=n.length,p=f-1,d=r[0],h=m(d);if(h||1<f&&"string"==typeof d&&!y.checkClone&&Ae.test(d))return n.each(function(e){var t=n.eq(e);h&&(r[0]=d.call(this,e,t.html())),He(t,r,i,o)});if(f&&(t=(e=xe(r,n[0].ownerDocument,!1,n,o)).firstChild,1===e.childNodes.length&&(e=t),t||o)){for(s=(a=S.map(ve(e,"script"),De)).length;c<f;c++)u=e,c!==p&&(u=S.clone(u,!0,!0),s&&S.merge(a,ve(u,"script"))),i.call(n[c],u,c);if(s)for(l=a[a.length-1].ownerDocument,S.map(a,qe),c=0;c<s;c++)u=a[c],he.test(u.type||"")&&!Y.access(u,"globalEval")&&S.contains(l,u)&&(u.src&&"module"!==(u.type||"").toLowerCase()?S._evalUrl&&!u.noModule&&S._evalUrl(u.src,{nonce:u.nonce||u.getAttribute("nonce")},l):b(u.textContent.replace(Ne,""),u,l))}return n}function Oe(e,t,n){for(var r,i=t?S.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||S.cleanData(ve(r)),r.parentNode&&(n&&ie(r)&&ye(ve(r,"script")),
+r.parentNode.removeChild(r));return e}S.extend({htmlPrefilter:function(e){return e},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=ie(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||S.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r<i;r++)s=o[r],u=a[r],void 0,"input"===(l=u.nodeName.toLowerCase())&&pe.test(s.type)?u.checked=s.checked:"input"!==l&&"textarea"!==l||(u.defaultValue=s.defaultValue);if(t)if(n)for(o=o||ve(e),a=a||ve(c),r=0,i=o.length;r<i;r++)Le(o[r],a[r]);else Le(e,c);return 0<(a=ve(c,"script")).length&&ye(a,!f&&ve(e,"script")),c},cleanData:function(e){for(var t,n,r,i=S.event.special,o=0;void 0!==(n=e[o]);o++)if(V(n)){if(t=n[Y.expando]){if(t.events)for(r in t.events)i[r]?S.event.remove(n,r):S.removeEvent(n,r,t.handle);n[Y.expando]=void 0}n[Q.expando]&&(n[Q.expando]=void 0)}}}),S.fn.extend({detach:function(e){return Oe(this,e,!0)},remove:function(e){return Oe(this,e)},text:function(e){return $(this,function(e){return void 0===e?S.text(this):this.empty().each(function(){
+1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return He(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||je(this,e).appendChild(e)})},prepend:function(){return He(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=je(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return He(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return He(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(S.cleanData(ve(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return S.clone(this,e,t)})},html:function(e){return $(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if(
+"string"==typeof e&&!ke.test(e)&&!ge[(de.exec(e)||["",""])[1].toLowerCase()]){e=S.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(S.cleanData(ve(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var n=[];return He(this,arguments,function(e){var t=this.parentNode;S.inArray(this,n)<0&&(S.cleanData(ve(this)),t&&t.replaceChild(e,this))},n)}}),S.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,a){S.fn[e]=function(e){for(var t,n=[],r=S(e),i=r.length-1,o=0;o<=i;o++)t=o===i?this:this.clone(!0),S(r[o])[a](t),u.apply(n,t.get());return this.pushStack(n)}});var Pe=new RegExp("^("+ee+")(?!px)[a-z%]+$","i"),Re=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=C),t.getComputedStyle(e)},Me=function(e,t,n){var r,i,o={};for(i in t)o[i]=e.style[i],e.style[i]=t[i];for(i in r=n.call(e),t)e.style[i]=o[i];return r},Ie=new RegExp(ne.join("|"),"i");function We(e,t
+,n){var r,i,o,a,s=e.style;return(n=n||Re(e))&&(""!==(a=n.getPropertyValue(t)||n[t])||ie(e)||(a=S.style(e,t)),!y.pixelBoxStyles()&&Pe.test(a)&&Ie.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function Fe(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(l){u.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",l.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",re.appendChild(u).appendChild(l);var e=C.getComputedStyle(l);n="1%"!==e.top,s=12===t(e.marginLeft),l.style.right="60%",o=36===t(e.right),r=36===t(e.width),l.style.position="absolute",i=12===t(l.offsetWidth/3),re.removeChild(u),l=null}}function t(e){return Math.round(parseFloat(e))}var n,r,i,o,a,s,u=E.createElement("div"),l=E.createElement("div");l.style&&(
+l.style.backgroundClip="content-box",l.cloneNode(!0).style.backgroundClip="",y.clearCloneStyle="content-box"===l.style.backgroundClip,S.extend(y,{boxSizingReliable:function(){return e(),r},pixelBoxStyles:function(){return e(),o},pixelPosition:function(){return e(),n},reliableMarginLeft:function(){return e(),s},scrollboxSize:function(){return e(),i},reliableTrDimensions:function(){var e,t,n,r;return null==a&&(e=E.createElement("table"),t=E.createElement("tr"),n=E.createElement("div"),e.style.cssText="position:absolute;left:-11111px;border-collapse:separate",t.style.cssText="border:1px solid",t.style.height="1px",n.style.height="9px",n.style.display="block",re.appendChild(e).appendChild(t).appendChild(n),r=C.getComputedStyle(t),a=parseInt(r.height,10)+parseInt(r.borderTopWidth,10)+parseInt(r.borderBottomWidth,10)===t.offsetHeight,re.removeChild(e)),a}}))}();var Be=["Webkit","Moz","ms"],$e=E.createElement("div").style,_e={};function ze(e){var t=S.cssProps[e]||_e[e];return t||(e in $e?e:_e[e]=function(e){var t=e[
+0].toUpperCase()+e.slice(1),n=Be.length;while(n--)if((e=Be[n]+t)in $e)return e}(e)||e)}var Ue=/^(none|table(?!-c[ea]).+)/,Xe=/^--/,Ve={position:"absolute",visibility:"hidden",display:"block"},Ge={letterSpacing:"0",fontWeight:"400"};function Ye(e,t,n){var r=te.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function Qe(e,t,n,r,i,o){var a="width"===t?1:0,s=0,u=0;if(n===(r?"border":"content"))return 0;for(;a<4;a+=2)"margin"===n&&(u+=S.css(e,n+ne[a],!0,i)),r?("content"===n&&(u-=S.css(e,"padding"+ne[a],!0,i)),"margin"!==n&&(u-=S.css(e,"border"+ne[a]+"Width",!0,i))):(u+=S.css(e,"padding"+ne[a],!0,i),"padding"!==n?u+=S.css(e,"border"+ne[a]+"Width",!0,i):s+=S.css(e,"border"+ne[a]+"Width",!0,i));return!r&&0<=o&&(u+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))||0),u}function Je(e,t,n){var r=Re(e),i=(!y.boxSizingReliable()||n)&&"border-box"===S.css(e,"boxSizing",!1,r),o=i,a=We(e,t,r),s="offset"+t[0].toUpperCase()+t.slice(1);if(Pe.test(a)){if(!n)return a;a="auto"}return(
+!y.boxSizingReliable()&&i||!y.reliableTrDimensions()&&A(e,"tr")||"auto"===a||!parseFloat(a)&&"inline"===S.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===S.css(e,"boxSizing",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+Qe(e,t,n||(i?"border":"content"),o,r,a)+"px"}function Ke(e,t,n,r,i){return new Ke.prototype.init(e,t,n,r,i)}S.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=We(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=X(t),u=Xe.test(t),l=e.style;if(u||(t=ze(s)),a=S.cssHooks[t]||S.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"===(o=typeof n)&&(i=te.exec(n))&&i[1]&&(n=se(
+e,t,i),o="number"),null!=n&&n==n&&("number"!==o||u||(n+=i&&i[3]||(S.cssNumber[s]?"":"px")),y.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=X(t);return Xe.test(t)||(t=ze(s)),(a=S.cssHooks[t]||S.cssHooks[s])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=We(e,t,r)),"normal"===i&&t in Ge&&(i=Ge[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),S.each(["height","width"],function(e,u){S.cssHooks[u]={get:function(e,t,n){if(t)return!Ue.test(S.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?Je(e,u,n):Me(e,Ve,function(){return Je(e,u,n)})},set:function(e,t,n){var r,i=Re(e),o=!y.scrollboxSize()&&"absolute"===i.position,a=(o||n)&&"border-box"===S.css(e,"boxSizing",!1,i),s=n?Qe(e,u,n,a,i):0;return a&&o&&(s-=Math.ceil(e["offset"+u[0].toUpperCase()+u.slice(1)]-parseFloat(i[u])-Qe(e,u,"border",!1,i)-.5)),s&&(r=te.exec(t))&&"px"!==(r[3]||"px")&&(
+e.style[u]=t,t=S.css(e,u)),Ye(0,t,s)}}}),S.cssHooks.marginLeft=Fe(y.reliableMarginLeft,function(e,t){if(t)return(parseFloat(We(e,"marginLeft"))||e.getBoundingClientRect().left-Me(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),S.each({margin:"",padding:"",border:"Width"},function(i,o){S.cssHooks[i+o]={expand:function(e){for(var t=0,n={},r="string"==typeof e?e.split(" "):[e];t<4;t++)n[i+ne[t]+o]=r[t]||r[t-2]||r[0];return n}},"margin"!==i&&(S.cssHooks[i+o].set=Ye)}),S.fn.extend({css:function(e,t){return $(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=Re(e),i=t.length;a<i;a++)o[t[a]]=S.css(e,t[a],!1,r);return o}return void 0!==n?S.style(e,t,n):S.css(e,t)},e,t,1<arguments.length)}}),((S.Tween=Ke).prototype={constructor:Ke,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||S.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(S.cssNumber[n]?"":"px")},cur:function(){var e=Ke.propHooks[this.prop];return e&&e.get?e.get(
+this):Ke.propHooks._default.get(this)},run:function(e){var t,n=Ke.propHooks[this.prop];return this.options.duration?this.pos=t=S.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):Ke.propHooks._default.set(this),this}}).init.prototype=Ke.prototype,(Ke.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=S.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){S.fx.step[e.prop]?S.fx.step[e.prop](e):1!==e.elem.nodeType||!S.cssHooks[e.prop]&&null==e.elem.style[ze(e.prop)]?e.elem[e.prop]=e.now:S.style(e.elem,e.prop,e.now+e.unit)}}}).scrollTop=Ke.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},S.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},
+S.fx=Ke.prototype.init,S.fx.step={};var Ze,et,tt,nt,rt=/^(?:toggle|show|hide)$/,it=/queueHooks$/;function ot(){et&&(!1===E.hidden&&C.requestAnimationFrame?C.requestAnimationFrame(ot):C.setTimeout(ot,S.fx.interval),S.fx.tick())}function at(){return C.setTimeout(function(){Ze=void 0}),Ze=Date.now()}function st(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=ne[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function ut(e,t,n){for(var r,i=(lt.tweeners[t]||[]).concat(lt.tweeners["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function lt(o,e,t){var n,a,r=0,i=lt.prefilters.length,s=S.Deferred().always(function(){delete u.elem}),u=function(){if(a)return!1;for(var e=Ze||at(),t=Math.max(0,l.startTime+l.duration-e),n=1-(t/l.duration||0),r=0,i=l.tweens.length;r<i;r++)l.tweens[r].run(n);return s.notifyWith(o,[l,n,t]),n<1&&i?t:(i||s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l]),!1)},l=s.promise({elem:o,props:S.extend({},e),opts:S.extend(!0,{specialEasing:{},easing:S.easing._default},t),
+originalProperties:e,originalOptions:t,startTime:Ze||at(),duration:t.duration,tweens:[],createTween:function(e,t){var n=S.Tween(o,l.opts,e,t,l.opts.specialEasing[e]||l.opts.easing);return l.tweens.push(n),n},stop:function(e){var t=0,n=e?l.tweens.length:0;if(a)return this;for(a=!0;t<n;t++)l.tweens[t].run(1);return e?(s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l,e])):s.rejectWith(o,[l,e]),this}}),c=l.props;for(!function(e,t){var n,r,i,o,a;for(n in e)if(i=t[r=X(n)],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=S.cssHooks[r])&&"expand"in a)for(n in o=a.expand(o),delete e[r],o)n in e||(e[n]=o[n],t[n]=i);else t[r]=i}(c,l.opts.specialEasing);r<i;r++)if(n=lt.prefilters[r].call(l,o,c,l.opts))return m(n.stop)&&(S._queueHooks(l.elem,l.opts.queue).stop=n.stop.bind(n)),n;return S.map(c,ut,l),m(l.opts.start)&&l.opts.start.call(o,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),S.fx.timer(S.extend(u,{elem:o,anim:l,queue:l.opts.queue})),l}
+S.Animation=S.extend(lt,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return se(n.elem,e,te.exec(t),n),n}]},tweener:function(e,t){m(e)?(t=e,e=["*"]):e=e.match(P);for(var n,r=0,i=e.length;r<i;r++)n=e[r],lt.tweeners[n]=lt.tweeners[n]||[],lt.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var r,i,o,a,s,u,l,c,f="width"in t||"height"in t,p=this,d={},h=e.style,g=e.nodeType&&ae(e),v=Y.get(e,"fxshow");for(r in n.queue||(null==(a=S._queueHooks(e,"fx")).unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,p.always(function(){p.always(function(){a.unqueued--,S.queue(e,"fx").length||a.empty.fire()})})),t)if(i=t[r],rt.test(i)){if(delete t[r],o=o||"toggle"===i,i===(g?"hide":"show")){if("show"!==i||!v||void 0===v[r])continue;g=!0}d[r]=v&&v[r]||S.style(e,r)}if((u=!S.isEmptyObject(t))||!S.isEmptyObject(d))for(r in f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(l=v&&v.display)&&(l=Y.get(e,"display")),"none"===(c=S.css(e,"display"))&&(l?c=l:(
+le([e],!0),l=e.style.display||l,c=S.css(e,"display"),le([e]))),("inline"===c||"inline-block"===c&&null!=l)&&"none"===S.css(e,"float")&&(u||(p.done(function(){h.display=l}),null==l&&(c=h.display,l="none"===c?"":c)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",p.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),u=!1,d)u||(v?"hidden"in v&&(g=v.hidden):v=Y.access(e,"fxshow",{display:l}),o&&(v.hidden=!g),g&&le([e],!0),p.done(function(){for(r in g||le([e]),Y.remove(e,"fxshow"),d)S.style(e,r,d[r])})),u=ut(g?v[r]:0,r,p),r in v||(v[r]=u.start,g&&(u.end=u.start,u.start=0))}],prefilter:function(e,t){t?lt.prefilters.unshift(e):lt.prefilters.push(e)}}),S.speed=function(e,t,n){var r=e&&"object"==typeof e?S.extend({},e):{complete:n||!n&&t||m(e)&&e,duration:e,easing:n&&t||t&&!m(t)&&t};return S.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in S.fx.speeds?r.duration=S.fx.speeds[r.duration]:r.duration=S.fx.speeds._default),
+null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){m(r.old)&&r.old.call(this),r.queue&&S.dequeue(this,r.queue)},r},S.fn.extend({fadeTo:function(e,t,n,r){return this.filter(ae).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(t,e,n,r){var i=S.isEmptyObject(t),o=S.speed(e,n,r),a=function(){var e=lt(this,S.extend({},t),o);(i||Y.get(this,"finish"))&&e.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(i,e,o){var a=function(e){var t=e.stop;delete e.stop,t(o)};return"string"!=typeof i&&(o=e,e=i,i=void 0),e&&this.queue(i||"fx",[]),this.each(function(){var e=!0,t=null!=i&&i+"queueHooks",n=S.timers,r=Y.get(this);if(t)r[t]&&r[t].stop&&a(r[t]);else for(t in r)r[t]&&r[t].stop&&it.test(t)&&a(r[t]);for(t=n.length;t--;)n[t].elem!==this||null!=i&&n[t].queue!==i||(n[t].anim.stop(o),e=!1,n.splice(t,1));!e&&o||S.dequeue(this,i)})},finish:function(a){return!1!==a&&(a=a||"fx"),this.each(function(){var e,t=Y.get(this),n=t[a+"queue"
+],r=t[a+"queueHooks"],i=S.timers,o=n?n.length:0;for(t.finish=!0,S.queue(this,a,[]),r&&r.stop&&r.stop.call(this,!0),e=i.length;e--;)i[e].elem===this&&i[e].queue===a&&(i[e].anim.stop(!0),i.splice(e,1));for(e=0;e<o;e++)n[e]&&n[e].finish&&n[e].finish.call(this);delete t.finish})}}),S.each(["toggle","show","hide"],function(e,r){var i=S.fn[r];S.fn[r]=function(e,t,n){return null==e||"boolean"==typeof e?i.apply(this,arguments):this.animate(st(r,!0),e,t,n)}}),S.each({slideDown:st("show"),slideUp:st("hide"),slideToggle:st("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,r){S.fn[e]=function(e,t,n){return this.animate(r,e,t,n)}}),S.timers=[],S.fx.tick=function(){var e,t=0,n=S.timers;for(Ze=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||S.fx.stop(),Ze=void 0},S.fx.timer=function(e){S.timers.push(e),S.fx.start()},S.fx.interval=13,S.fx.start=function(){et||(et=!0,ot())},S.fx.stop=function(){et=null},S.fx.speeds={slow:600,fast:200,_default:400},
+S.fn.delay=function(r,e){return r=S.fx&&S.fx.speeds[r]||r,e=e||"fx",this.queue(e,function(e,t){var n=C.setTimeout(e,r);t.stop=function(){C.clearTimeout(n)}})},tt=E.createElement("input"),nt=E.createElement("select").appendChild(E.createElement("option")),tt.type="checkbox",y.checkOn=""!==tt.value,y.optSelected=nt.selected,(tt=E.createElement("input")).value="t",tt.type="radio",y.radioValue="t"===tt.value;var ct,ft=S.expr.attrHandle;S.fn.extend({attr:function(e,t){return $(this,S.attr,e,t,1<arguments.length)},removeAttr:function(e){return this.each(function(){S.removeAttr(this,e)})}}),S.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?S.prop(e,t,n):(1===o&&S.isXMLDoc(e)||(i=S.attrHooks[t.toLowerCase()]||(S.expr.match.bool.test(t)?ct:void 0)),void 0!==n?null===n?void S.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=S.find.attr(e,t))?void 0:r)},attrHooks:{type:{
+set:function(e,t){if(!y.radioValue&&"radio"===t&&A(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(P);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),ct={set:function(e,t,n){return!1===t?S.removeAttr(e,n):e.setAttribute(n,n),n}},S.each(S.expr.match.bool.source.match(/\w+/g),function(e,t){var a=ft[t]||S.find.attr;ft[t]=function(e,t,n){var r,i,o=t.toLowerCase();return n||(i=ft[o],ft[o]=r,r=null!=a(e,t,n)?o:null,ft[o]=i),r}});var pt=/^(?:input|select|textarea|button)$/i,dt=/^(?:a|area)$/i;function ht(e){return(e.match(P)||[]).join(" ")}function gt(e){return e.getAttribute&&e.getAttribute("class")||""}function vt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(P)||[]}S.fn.extend({prop:function(e,t){return $(this,S.prop,e,t,1<arguments.length)},removeProp:function(e){return this.each(function(){delete this[S.propFix[e]||e]})}}),S.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o
+)return 1===o&&S.isXMLDoc(e)||(t=S.propFix[t]||t,i=S.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=S.find.attr(e,"tabindex");return t?parseInt(t,10):pt.test(e.nodeName)||dt.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),y.optSelected||(S.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),S.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){S.propFix[this.toLowerCase()]=this}),S.fn.extend({addClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).addClass(t.call(this,e,gt(this)))});if((e=vt(t)).length)while(n=this[u++])if(i=gt(n),r=1===n.nodeType&&" "+ht(i)+" "){a=0;while(o=e[a++])r.indexOf(
+" "+o+" ")<0&&(r+=o+" ");i!==(s=ht(r))&&n.setAttribute("class",s)}return this},removeClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).removeClass(t.call(this,e,gt(this)))});if(!arguments.length)return this.attr("class","");if((e=vt(t)).length)while(n=this[u++])if(i=gt(n),r=1===n.nodeType&&" "+ht(i)+" "){a=0;while(o=e[a++])while(-1<r.indexOf(" "+o+" "))r=r.replace(" "+o+" "," ");i!==(s=ht(r))&&n.setAttribute("class",s)}return this},toggleClass:function(i,t){var o=typeof i,a="string"===o||Array.isArray(i);return"boolean"==typeof t&&a?t?this.addClass(i):this.removeClass(i):m(i)?this.each(function(e){S(this).toggleClass(i.call(this,e,gt(this),t),t)}):this.each(function(){var e,t,n,r;if(a){t=0,n=S(this),r=vt(i);while(e=r[t++])n.hasClass(e)?n.removeClass(e):n.addClass(e)}else void 0!==i&&"boolean"!==o||((e=gt(this))&&Y.set(this,"__className__",e),this.setAttribute&&this.setAttribute("class",e||!1===i?"":Y.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;
+t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&-1<(" "+ht(gt(n))+" ").indexOf(t))return!0;return!1}});var yt=/\r/g;S.fn.extend({val:function(n){var r,e,i,t=this[0];return arguments.length?(i=m(n),this.each(function(e){var t;1===this.nodeType&&(null==(t=i?n.call(this,e,S(this).val()):n)?t="":"number"==typeof t?t+="":Array.isArray(t)&&(t=S.map(t,function(e){return null==e?"":e+""})),(r=S.valHooks[this.type]||S.valHooks[this.nodeName.toLowerCase()])&&"set"in r&&void 0!==r.set(this,t,"value")||(this.value=t))})):t?(r=S.valHooks[t.type]||S.valHooks[t.nodeName.toLowerCase()])&&"get"in r&&void 0!==(e=r.get(t,"value"))?e:"string"==typeof(e=t.value)?e.replace(yt,""):null==e?"":e:void 0}}),S.extend({valHooks:{option:{get:function(e){var t=S.find.attr(e,"value");return null!=t?t:ht(S.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!A(n.parentNode
+,"optgroup"))){if(t=S(n).val(),a)return t;s.push(t)}return s},set:function(e,t){var n,r,i=e.options,o=S.makeArray(t),a=i.length;while(a--)((r=i[a]).selected=-1<S.inArray(S.valHooks.option.get(r),o))&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),S.each(["radio","checkbox"],function(){S.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=-1<S.inArray(S(e).val(),t)}},y.checkOn||(S.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),y.focusin="onfocusin"in C;var mt=/^(?:focusinfocus|focusoutblur)$/,xt=function(e){e.stopPropagation()};S.extend(S.event,{trigger:function(e,t,n,r){var i,o,a,s,u,l,c,f,p=[n||E],d=v.call(e,"type")?e.type:e,h=v.call(e,"namespace")?e.namespace.split("."):[];if(o=f=a=n=n||E,3!==n.nodeType&&8!==n.nodeType&&!mt.test(d+S.event.triggered)&&(-1<d.indexOf(".")&&(d=(h=d.split(".")).shift(),h.sort()),u=d.indexOf(":")<0&&"on"+d,(e=e[S.expando]?e:new S.Event(d,"object"==typeof e&&e)).isTrigger=r?2:3,e.namespace=h.join("."),
+e.rnamespace=e.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:S.makeArray(t,[e]),c=S.event.special[d]||{},r||!c.trigger||!1!==c.trigger.apply(n,t))){if(!r&&!c.noBubble&&!x(n)){for(s=c.delegateType||d,mt.test(s+d)||(o=o.parentNode);o;o=o.parentNode)p.push(o),a=o;a===(n.ownerDocument||E)&&p.push(a.defaultView||a.parentWindow||C)}i=0;while((o=p[i++])&&!e.isPropagationStopped())f=o,e.type=1<i?s:c.bindType||d,(l=(Y.get(o,"events")||Object.create(null))[e.type]&&Y.get(o,"handle"))&&l.apply(o,t),(l=u&&o[u])&&l.apply&&V(o)&&(e.result=l.apply(o,t),!1===e.result&&e.preventDefault());return e.type=d,r||e.isDefaultPrevented()||c._default&&!1!==c._default.apply(p.pop(),t)||!V(n)||u&&m(n[d])&&!x(n)&&((a=n[u])&&(n[u]=null),S.event.triggered=d,e.isPropagationStopped()&&f.addEventListener(d,xt),n[d](),e.isPropagationStopped()&&f.removeEventListener(d,xt),S.event.triggered=void 0,a&&(n[u]=a)),e.result}},simulate:function(e,t,n){var r=S.extend(
+new S.Event,n,{type:e,isSimulated:!0});S.event.trigger(r,null,t)}}),S.fn.extend({trigger:function(e,t){return this.each(function(){S.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return S.event.trigger(e,t,n,!0)}}),y.focusin||S.each({focus:"focusin",blur:"focusout"},function(n,r){var i=function(e){S.event.simulate(r,e.target,S.event.fix(e))};S.event.special[r]={setup:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r);t||e.addEventListener(n,i,!0),Y.access(e,r,(t||0)+1)},teardown:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r)-1;t?Y.access(e,r,t):(e.removeEventListener(n,i,!0),Y.remove(e,r))}}});var bt=C.location,wt={guid:Date.now()},Tt=/\?/;S.parseXML=function(e){var t,n;if(!e||"string"!=typeof e)return null;try{t=(new C.DOMParser).parseFromString(e,"text/xml")}catch(e){}return n=t&&t.getElementsByTagName("parsererror")[0],t&&!n||S.error("Invalid XML: "+(n?S.map(n.childNodes,function(e){return e.textContent}).join("\n"):e)),t};
+var Ct=/\[\]$/,Et=/\r?\n/g,St=/^(?:submit|button|image|reset|file)$/i,kt=/^(?:input|select|textarea|keygen)/i;function At(n,e,r,i){var t;if(Array.isArray(e))S.each(e,function(e,t){r||Ct.test(n)?i(n,t):At(n+"["+("object"==typeof t&&null!=t?e:"")+"]",t,r,i)});else if(r||"object"!==w(e))i(n,e);else for(t in e)At(n+"["+t+"]",e[t],r,i)}S.param=function(e,t){var n,r=[],i=function(e,t){var n=m(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!S.isPlainObject(e))S.each(e,function(){i(this.name,this.value)});else for(n in e)At(n,e[n],t,i);return r.join("&")},S.fn.extend({serialize:function(){return S.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=S.prop(this,"elements");return e?S.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!S(this).is(":disabled")&&kt.test(this.nodeName)&&!St.test(e)&&(this.checked||!pe.test(e))}).map(function(e,t){var n=S(this).val();
+return null==n?null:Array.isArray(n)?S.map(n,function(e){return{name:t.name,value:e.replace(Et,"\r\n")}}):{name:t.name,value:n.replace(Et,"\r\n")}}).get()}});var Nt=/%20/g,jt=/#.*$/,Dt=/([?&])_=[^&]*/,qt=/^(.*?):[ \t]*([^\r\n]*)$/gm,Lt=/^(?:GET|HEAD)$/,Ht=/^\/\//,Ot={},Pt={},Rt="*/".concat("*"),Mt=E.createElement("a");function It(o){return function(e,t){"string"!=typeof e&&(t=e,e="*");var n,r=0,i=e.toLowerCase().match(P)||[];if(m(t))while(n=i[r++])"+"===n[0]?(n=n.slice(1)||"*",(o[n]=o[n]||[]).unshift(t)):(o[n]=o[n]||[]).push(t)}}function Wt(t,i,o,a){var s={},u=t===Pt;function l(e){var r;return s[e]=!0,S.each(t[e]||[],function(e,t){var n=t(i,o,a);return"string"!=typeof n||u||s[n]?u?!(r=n):void 0:(i.dataTypes.unshift(n),l(n),!1)}),r}return l(i.dataTypes[0])||!s["*"]&&l("*")}function Ft(e,t){var n,r,i=S.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&S.extend(!0,e,r),e}Mt.href=bt.href,S.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:bt.href,type:"GET",
+isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(bt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Rt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":S.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Ft(Ft(e,S.ajaxSettings),t):Ft(S.ajaxSettings,e)},ajaxPrefilter:It(Ot),ajaxTransport:It(Pt),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var c,f,p,n,d,r,h,g,i,o,v=S.ajaxSetup({},t),y=v.context||v,m=v.context&&(y.nodeType||y.jquery)?S(y):S.event,x=S.Deferred(),b=S.Callbacks("once memory"),w=v.statusCode||{},a={},s={},u="canceled",T={readyState:0,getResponseHeader:function(e){var t;if(h){if(!n){n={};while(
+t=qt.exec(p))n[t[1].toLowerCase()+" "]=(n[t[1].toLowerCase()+" "]||[]).concat(t[2])}t=n[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return h?p:null},setRequestHeader:function(e,t){return null==h&&(e=s[e.toLowerCase()]=s[e.toLowerCase()]||e,a[e]=t),this},overrideMimeType:function(e){return null==h&&(v.mimeType=e),this},statusCode:function(e){var t;if(e)if(h)T.always(e[T.status]);else for(t in e)w[t]=[w[t],e[t]];return this},abort:function(e){var t=e||u;return c&&c.abort(t),l(0,t),this}};if(x.promise(T),v.url=((e||v.url||bt.href)+"").replace(Ht,bt.protocol+"//"),v.type=t.method||t.type||v.method||v.type,v.dataTypes=(v.dataType||"*").toLowerCase().match(P)||[""],null==v.crossDomain){r=E.createElement("a");try{r.href=v.url,r.href=r.href,v.crossDomain=Mt.protocol+"//"+Mt.host!=r.protocol+"//"+r.host}catch(e){v.crossDomain=!0}}if(v.data&&v.processData&&"string"!=typeof v.data&&(v.data=S.param(v.data,v.traditional)),Wt(Ot,v,t,T),h)return T;for(i in(g=S.event&&v.global
+)&&0==S.active++&&S.event.trigger("ajaxStart"),v.type=v.type.toUpperCase(),v.hasContent=!Lt.test(v.type),f=v.url.replace(jt,""),v.hasContent?v.data&&v.processData&&0===(v.contentType||"").indexOf("application/x-www-form-urlencoded")&&(v.data=v.data.replace(Nt,"+")):(o=v.url.slice(f.length),v.data&&(v.processData||"string"==typeof v.data)&&(f+=(Tt.test(f)?"&":"?")+v.data,delete v.data),!1===v.cache&&(f=f.replace(Dt,"$1"),o=(Tt.test(f)?"&":"?")+"_="+wt.guid+++o),v.url=f+o),v.ifModified&&(S.lastModified[f]&&T.setRequestHeader("If-Modified-Since",S.lastModified[f]),S.etag[f]&&T.setRequestHeader("If-None-Match",S.etag[f])),(v.data&&v.hasContent&&!1!==v.contentType||t.contentType)&&T.setRequestHeader("Content-Type",v.contentType),T.setRequestHeader("Accept",v.dataTypes[0]&&v.accepts[v.dataTypes[0]]?v.accepts[v.dataTypes[0]]+("*"!==v.dataTypes[0]?", "+Rt+"; q=0.01":""):v.accepts["*"]),v.headers)T.setRequestHeader(i,v.headers[i]);if(v.beforeSend&&(!1===v.beforeSend.call(y,T,v)||h))return T.abort();if(u="abort",b.add(
+v.complete),T.done(v.success),T.fail(v.error),c=Wt(Pt,v,t,T)){if(T.readyState=1,g&&m.trigger("ajaxSend",[T,v]),h)return T;v.async&&0<v.timeout&&(d=C.setTimeout(function(){T.abort("timeout")},v.timeout));try{h=!1,c.send(a,l)}catch(e){if(h)throw e;l(-1,e)}}else l(-1,"No Transport");function l(e,t,n,r){var i,o,a,s,u,l=t;h||(h=!0,d&&C.clearTimeout(d),c=void 0,p=r||"",T.readyState=0<e?4:0,i=200<=e&&e<300||304===e,n&&(s=function(e,t,n){var r,i,o,a,s=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}(v,T,n)),!i&&-1<S.inArray("script",v.dataTypes)&&S.inArray("json",v.dataTypes)<0&&(v.converters["text script"]=function(){}),s=function(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];o=c.shift();
+while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(a=l[u+" "+o]||l["* "+o]))for(i in l)if((s=i.split(" "))[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}(v,s,T,i),i?(v.ifModified&&((u=T.getResponseHeader("Last-Modified"))&&(S.lastModified[f]=u),(u=T.getResponseHeader("etag"))&&(S.etag[f]=u)),204===e||"HEAD"===v.type?l="nocontent":304===e?l="notmodified":(l=s.state,o=s.data,i=!(a=s.error))):(a=l,!e&&l||(l="error",e<0&&(e=0))),T.status=e,T.statusText=(t||l)+"",i?x.resolveWith(y,[o,l,T]):x.rejectWith(y,[T,l,a]),T.statusCode(w),w=void 0,g&&m.trigger(i?"ajaxSuccess":"ajaxError",[T,v,i?o:a]),b.fireWith(y,[T,l]),g&&(m.trigger("ajaxComplete",[T,v]),--S.active||S.event.trigger("ajaxStop")))
+}return T},getJSON:function(e,t,n){return S.get(e,t,n,"json")},getScript:function(e,t){return S.get(e,void 0,t,"script")}}),S.each(["get","post"],function(e,i){S[i]=function(e,t,n,r){return m(t)&&(r=r||n,n=t,t=void 0),S.ajax(S.extend({url:e,type:i,dataType:r,data:t,success:n},S.isPlainObject(e)&&e))}}),S.ajaxPrefilter(function(e){var t;for(t in e.headers)"content-type"===t.toLowerCase()&&(e.contentType=e.headers[t]||"")}),S._evalUrl=function(e,t,n){return S.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){S.globalEval(e,t,n)}})},S.fn.extend({wrapAll:function(e){var t;return this[0]&&(m(e)&&(e=e.call(this[0])),t=S(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(n){return m(n)?this.each(function(e){S(this).wrapInner(n.call(this,e))}):this.each(function(){var e=S(this),
+t=e.contents();t.length?t.wrapAll(n):e.append(n)})},wrap:function(t){var n=m(t);return this.each(function(e){S(this).wrapAll(n?t.call(this,e):t)})},unwrap:function(e){return this.parent(e).not("body").each(function(){S(this).replaceWith(this.childNodes)}),this}}),S.expr.pseudos.hidden=function(e){return!S.expr.pseudos.visible(e)},S.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},S.ajaxSettings.xhr=function(){try{return new C.XMLHttpRequest}catch(e){}};var Bt={0:200,1223:204},$t=S.ajaxSettings.xhr();y.cors=!!$t&&"withCredentials"in $t,y.ajax=$t=!!$t,S.ajaxTransport(function(i){var o,a;if(y.cors||$t&&!i.crossDomain)return{send:function(e,t){var n,r=i.xhr();if(r.open(i.type,i.url,i.async,i.username,i.password),i.xhrFields)for(n in i.xhrFields)r[n]=i.xhrFields[n];for(n in i.mimeType&&r.overrideMimeType&&r.overrideMimeType(i.mimeType),i.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest"),e)r.setRequestHeader(n,e[n]);o=function(e){
+return function(){o&&(o=a=r.onload=r.onerror=r.onabort=r.ontimeout=r.onreadystatechange=null,"abort"===e?r.abort():"error"===e?"number"!=typeof r.status?t(0,"error"):t(r.status,r.statusText):t(Bt[r.status]||r.status,r.statusText,"text"!==(r.responseType||"text")||"string"!=typeof r.responseText?{binary:r.response}:{text:r.responseText},r.getAllResponseHeaders()))}},r.onload=o(),a=r.onerror=r.ontimeout=o("error"),void 0!==r.onabort?r.onabort=a:r.onreadystatechange=function(){4===r.readyState&&C.setTimeout(function(){o&&a()})},o=o("abort");try{r.send(i.hasContent&&i.data||null)}catch(e){if(o)throw e}},abort:function(){o&&o()}}}),S.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),S.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return S.globalEval(e),e}}}),S.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(
+e.type="GET")}),S.ajaxTransport("script",function(n){var r,i;if(n.crossDomain||n.scriptAttrs)return{send:function(e,t){r=S("<script>").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var _t,zt=[],Ut=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=zt.pop()||S.expando+"_"+wt.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Ut.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Ut.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Ut,"$1"+r):!1!==e.jsonp&&(e.url+=(Tt.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r]
+,C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,zt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((_t=E.implementation.createHTMLDocument("").body).innerHTML="<form></form><form></form>",2===_t.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1<s&&(r=ht(e.slice(s)),e=e.slice(0,s)),m(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),0<a.length&&S.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){o=arguments,a.html(r?S("<div>").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(
+function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,
+"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=Fe(y.pixelPosition,function(e,t){if(t)return t=We(e,n),Pe.test(t)?S(e).position()[n]+"px":t})}
+),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each(
+"blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0<arguments.length?this.on(n,null,e,t):this.trigger(n)}});var Xt=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;S.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),m(e))return r=s.call(arguments,2),(i=function(){return e.apply(t||this,r.concat(s.call(arguments)))}).guid=e.guid=e.guid||S.guid++,i},S.holdReady=function(e){e?S.readyWait++:S.ready(!0)},S.isArray=Array.isArray,S.parseJSON=JSON.parse,S.nodeName=A,S.isFunction=m,S.isWindow=x,S.camelCase=X,S.type=w,S.now=Date.now,S.isNumeric=function(e){var t=S.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},S.trim=function(e){return null==e?"":(e+"").replace(Xt,"")},"function"==typeof define&&define.amd&&define("jquery",[],function(){return S});var Vt=C.jQuery,Gt=C.$;return S.noConflict=function(e){
+return C.$===S&&(C.$=Gt),e&&C.jQuery===S&&(C.jQuery=Vt),S},"undefined"==typeof e&&(C.jQuery=C.$=S),S});
+/*! jQuery UI - v1.13.2 - 2022-08-01
+* http://jqueryui.com
+* Includes: widget.js, position.js, data.js, disable-selection.js, focusable.js, form-reset-mixin.js, jquery-patch.js, keycode.js, labels.js, scroll-parent.js, tabbable.js, unique-id.js, widgets/resizable.js, widgets/mouse.js
+* Copyright jQuery Foundation and other contributors; Licensed MIT */!function(t){"use strict";"function"==typeof define&&define.amd?define(["jquery"],t):t(jQuery)}(function(y){"use strict";y.ui=y.ui||{};y.ui.version="1.13.2";var n,i=0,h=Array.prototype.hasOwnProperty,a=Array.prototype.slice;y.cleanData=(n=y.cleanData,function(t){for(var e,i,s=0;null!=(i=t[s]);s++)(e=y._data(i,"events"))&&e.remove&&y(i).triggerHandler("remove");n(t)}),y.widget=function(t,i,e){var s,n,o,h={},a=t.split(".")[0],r=a+"-"+(t=t.split(".")[1]);return e||(e=i,i=y.Widget),Array.isArray(e)&&(e=y.extend.apply(null,[{}].concat(e))),y.expr.pseudos[r.toLowerCase()]=function(t){return!!y.data(t,r)},y[a]=y[a]||{},s=y[a][t],n=y[a][t]=function(t,e){if(!this||!this._createWidget)return new n(t,e);arguments.length&&this._createWidget(t,e)},y.extend(n,s,{version:e.version,_proto:y.extend({},e),_childConstructors:[]}),(o=new i).options=y.widget.extend({},o.options),y.each(e,function(e,s){function n(){return i.prototype[e].apply(this,arguments)}
+function o(t){return i.prototype[e].apply(this,t)}h[e]="function"==typeof s?function(){var t,e=this._super,i=this._superApply;return this._super=n,this._superApply=o,t=s.apply(this,arguments),this._super=e,this._superApply=i,t}:s}),n.prototype=y.widget.extend(o,{widgetEventPrefix:s&&o.widgetEventPrefix||t},h,{constructor:n,namespace:a,widgetName:t,widgetFullName:r}),s?(y.each(s._childConstructors,function(t,e){var i=e.prototype;y.widget(i.namespace+"."+i.widgetName,n,e._proto)}),delete s._childConstructors):i._childConstructors.push(n),y.widget.bridge(t,n),n},y.widget.extend=function(t){for(var e,i,s=a.call(arguments,1),n=0,o=s.length;n<o;n++)for(e in s[n])i=s[n][e],h.call(s[n],e)&&void 0!==i&&(y.isPlainObject(i)?t[e]=y.isPlainObject(t[e])?y.widget.extend({},t[e],i):y.widget.extend({},i):t[e]=i);return t},y.widget.bridge=function(o,e){var h=e.prototype.widgetFullName||o;y.fn[o]=function(i){var t="string"==typeof i,s=a.call(arguments,1),n=this;return t?this.length||"instance"!==i?this.each(function(){var t,
+e=y.data(this,h);return"instance"===i?(n=e,!1):e?"function"!=typeof e[i]||"_"===i.charAt(0)?y.error("no such method '"+i+"' for "+o+" widget instance"):(t=e[i].apply(e,s))!==e&&void 0!==t?(n=t&&t.jquery?n.pushStack(t.get()):t,!1):void 0:y.error("cannot call methods on "+o+" prior to initialization; attempted to call method '"+i+"'")}):n=void 0:(s.length&&(i=y.widget.extend.apply(null,[i].concat(s))),this.each(function(){var t=y.data(this,h);t?(t.option(i||{}),t._init&&t._init()):y.data(this,h,new e(i,this))})),n}},y.Widget=function(){},y.Widget._childConstructors=[],y.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{classes:{},disabled:!1,create:null},_createWidget:function(t,e){e=y(e||this.defaultElement||this)[0],this.element=y(e),this.uuid=i++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=y(),this.hoverable=y(),this.focusable=y(),this.classesElementLookup={},e!==this&&(y.data(e,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t
+){t.target===e&&this.destroy()}}),this.document=y(e.style?e.ownerDocument:e.document||e),this.window=y(this.document[0].defaultView||this.document[0].parentWindow)),this.options=y.widget.extend({},this.options,this._getCreateOptions(),t),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:y.noop,_create:y.noop,_init:y.noop,destroy:function(){var i=this;this._destroy(),y.each(this.classesElementLookup,function(t,e){i._removeClass(e,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:y.noop,widget:function(){return this.element},option:function(t,e){var i,s,n,o=t;if(0===arguments.length)return y.widget.extend({},this.options);if("string"==typeof t)if(o={},t=(i=t.split(".")).shift(),i.length){for(s=o[t
+]=y.widget.extend({},this.options[t]),n=0;n<i.length-1;n++)s[i[n]]=s[i[n]]||{},s=s[i[n]];if(t=i.pop(),1===arguments.length)return void 0===s[t]?null:s[t];s[t]=e}else{if(1===arguments.length)return void 0===this.options[t]?null:this.options[t];o[t]=e}return this._setOptions(o),this},_setOptions:function(t){for(var e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return"classes"===t&&this._setOptionClasses(e),this.options[t]=e,"disabled"===t&&this._setOptionDisabled(e),this},_setOptionClasses:function(t){var e,i,s;for(e in t)s=this.classesElementLookup[e],t[e]!==this.options.classes[e]&&s&&s.length&&(i=y(s.get()),this._removeClass(s,e),i.addClass(this._classes({element:i,keys:e,classes:t,add:!0})))},_setOptionDisabled:function(t){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!t),t&&(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},
+disable:function(){return this._setOptions({disabled:!0})},_classes:function(n){var o=[],h=this;function t(t,e){for(var i,s=0;s<t.length;s++)i=h.classesElementLookup[t[s]]||y(),i=n.add?(function(){var i=[];n.element.each(function(t,e){y.map(h.classesElementLookup,function(t){return t}).some(function(t){return t.is(e)})||i.push(e)}),h._on(y(i),{remove:"_untrackClassesElement"})}(),y(y.uniqueSort(i.get().concat(n.element.get())))):y(i.not(n.element).get()),h.classesElementLookup[t[s]]=i,o.push(t[s]),e&&n.classes[t[s]]&&o.push(n.classes[t[s]])}return(n=y.extend({element:this.element,classes:this.options.classes||{}},n)).keys&&t(n.keys.match(/\S+/g)||[],!0),n.extra&&t(n.extra.match(/\S+/g)||[]),o.join(" ")},_untrackClassesElement:function(i){var s=this;y.each(s.classesElementLookup,function(t,e){-1!==y.inArray(i.target,e)&&(s.classesElementLookup[t]=y(e.not(i.target).get()))}),this._off(y(i.target))},_removeClass:function(t,e,i){return this._toggleClass(t,e,i,!1)},_addClass:function(t,e,i){
+return this._toggleClass(t,e,i,!0)},_toggleClass:function(t,e,i,s){var n="string"==typeof t||null===t,i={extra:n?e:i,keys:n?t:e,element:n?this.element:t,add:s="boolean"==typeof s?s:i};return i.element.toggleClass(this._classes(i),s),this},_on:function(n,o,t){var h,a=this;"boolean"!=typeof n&&(t=o,o=n,n=!1),t?(o=h=y(o),this.bindings=this.bindings.add(o)):(t=o,o=this.element,h=this.widget()),y.each(t,function(t,e){function i(){if(n||!0!==a.options.disabled&&!y(this).hasClass("ui-state-disabled"))return("string"==typeof e?a[e]:e).apply(a,arguments)}"string"!=typeof e&&(i.guid=e.guid=e.guid||i.guid||y.guid++);var s=t.match(/^([\w:-]*)\s*(.*)$/),t=s[1]+a.eventNamespace,s=s[2];s?h.on(t,s,i):o.on(t,i)})},_off:function(t,e){e=(e||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,t.off(e),this.bindings=y(this.bindings.not(t).get()),this.focusable=y(this.focusable.not(t).get()),this.hoverable=y(this.hoverable.not(t).get())},_delay:function(t,e){var i=this;return setTimeout(function(){return(
+"string"==typeof t?i[t]:t).apply(i,arguments)},e||0)},_hoverable:function(t){this.hoverable=this.hoverable.add(t),this._on(t,{mouseenter:function(t){this._addClass(y(t.currentTarget),null,"ui-state-hover")},mouseleave:function(t){this._removeClass(y(t.currentTarget),null,"ui-state-hover")}})},_focusable:function(t){this.focusable=this.focusable.add(t),this._on(t,{focusin:function(t){this._addClass(y(t.currentTarget),null,"ui-state-focus")},focusout:function(t){this._removeClass(y(t.currentTarget),null,"ui-state-focus")}})},_trigger:function(t,e,i){var s,n,o=this.options[t];if(i=i||{},(e=y.Event(e)).type=(t===this.widgetEventPrefix?t:this.widgetEventPrefix+t).toLowerCase(),e.target=this.element[0],n=e.originalEvent)for(s in n)s in e||(e[s]=n[s]);return this.element.trigger(e,i),!("function"==typeof o&&!1===o.apply(this.element[0],[e].concat(i))||e.isDefaultPrevented())}},y.each({show:"fadeIn",hide:"fadeOut"},function(o,h){y.Widget.prototype["_"+o]=function(e,t,i){var s,n=(t="string"==typeof t?{effect:t}:t
+)?!0!==t&&"number"!=typeof t&&t.effect||h:o;"number"==typeof(t=t||{})?t={duration:t}:!0===t&&(t={}),s=!y.isEmptyObject(t),t.complete=i,t.delay&&e.delay(t.delay),s&&y.effects&&y.effects.effect[n]?e[o](t):n!==o&&e[n]?e[n](t.duration,t.easing,i):e.queue(function(t){y(this)[o](),i&&i.call(e[0]),t()})}});var s,x,D,o,r,l,u,p,W;y.widget;function E(t,e,i){return[parseFloat(t[0])*(p.test(t[0])?e/100:1),parseFloat(t[1])*(p.test(t[1])?i/100:1)]}function H(t,e){return parseInt(y.css(t,e),10)||0}function S(t){return null!=t&&t===t.window}x=Math.max,D=Math.abs,o=/left|center|right/,r=/top|center|bottom/,l=/[\+\-]\d+(\.[\d]+)?%?/,u=/^\w+/,p=/%$/,W=y.fn.position,y.position={scrollbarWidth:function(){if(void 0!==s)return s;var t,e=y("<div style='display:block;position:absolute;width:200px;height:200px;overflow:hidden;'><div style='height:300px;width:auto;'></div></div>"),i=e.children()[0];return y("body").append(e),t=i.offsetWidth,e.css("overflow","scroll"),t===(i=i.offsetWidth)&&(i=e[0].clientWidth),e.remove(),s=t-i},
+getScrollInfo:function(t){var e=t.isWindow||t.isDocument?"":t.element.css("overflow-x"),i=t.isWindow||t.isDocument?"":t.element.css("overflow-y"),e="scroll"===e||"auto"===e&&t.width<t.element[0].scrollWidth;return{width:"scroll"===i||"auto"===i&&t.height<t.element[0].scrollHeight?y.position.scrollbarWidth():0,height:e?y.position.scrollbarWidth():0}},getWithinInfo:function(t){var e=y(t||window),i=S(e[0]),s=!!e[0]&&9===e[0].nodeType;return{element:e,isWindow:i,isDocument:s,offset:!i&&!s?y(t).offset():{left:0,top:0},scrollLeft:e.scrollLeft(),scrollTop:e.scrollTop(),width:e.outerWidth(),height:e.outerHeight()}}},y.fn.position=function(p){if(!p||!p.of)return W.apply(this,arguments);var d,c,f,g,m,t,_="string"==typeof(p=y.extend({},p)).of?y(document).find(p.of):y(p.of),w=y.position.getWithinInfo(p.within),v=y.position.getScrollInfo(w),b=(p.collision||"flip").split(" "),z={},e=9===(t=(e=_)[0]).nodeType?{width:e.width(),height:e.height(),offset:{top:0,left:0}}:S(t)?{width:e.width(),height:e.height(),offset:{
+top:e.scrollTop(),left:e.scrollLeft()}}:t.preventDefault?{width:0,height:0,offset:{top:t.pageY,left:t.pageX}}:{width:e.outerWidth(),height:e.outerHeight(),offset:e.offset()};return _[0].preventDefault&&(p.at="left top"),c=e.width,f=e.height,m=y.extend({},g=e.offset),y.each(["my","at"],function(){var t,e,i=(p[this]||"").split(" ");(i=1===i.length?o.test(i[0])?i.concat(["center"]):r.test(i[0])?["center"].concat(i):["center","center"]:i)[0]=o.test(i[0])?i[0]:"center",i[1]=r.test(i[1])?i[1]:"center",t=l.exec(i[0]),e=l.exec(i[1]),z[this]=[t?t[0]:0,e?e[0]:0],p[this]=[u.exec(i[0])[0],u.exec(i[1])[0]]}),1===b.length&&(b[1]=b[0]),"right"===p.at[0]?m.left+=c:"center"===p.at[0]&&(m.left+=c/2),"bottom"===p.at[1]?m.top+=f:"center"===p.at[1]&&(m.top+=f/2),d=E(z.at,c,f),m.left+=d[0],m.top+=d[1],this.each(function(){var i,t,h=y(this),a=h.outerWidth(),r=h.outerHeight(),e=H(this,"marginLeft"),s=H(this,"marginTop"),n=a+e+H(this,"marginRight")+v.width,o=r+s+H(this,"marginBottom")+v.height,l=y.extend({},m),u=E(z.my,h.outerWidth()
+,h.outerHeight());"right"===p.my[0]?l.left-=a:"center"===p.my[0]&&(l.left-=a/2),"bottom"===p.my[1]?l.top-=r:"center"===p.my[1]&&(l.top-=r/2),l.left+=u[0],l.top+=u[1],i={marginLeft:e,marginTop:s},y.each(["left","top"],function(t,e){y.ui.position[b[t]]&&y.ui.position[b[t]][e](l,{targetWidth:c,targetHeight:f,elemWidth:a,elemHeight:r,collisionPosition:i,collisionWidth:n,collisionHeight:o,offset:[d[0]+u[0],d[1]+u[1]],my:p.my,at:p.at,within:w,elem:h})}),p.using&&(t=function(t){var e=g.left-l.left,i=e+c-a,s=g.top-l.top,n=s+f-r,o={target:{element:_,left:g.left,top:g.top,width:c,height:f},element:{element:h,left:l.left,top:l.top,width:a,height:r},horizontal:i<0?"left":0<e?"right":"center",vertical:n<0?"top":0<s?"bottom":"middle"};c<a&&D(e+i)<c&&(o.horizontal="center"),f<r&&D(s+n)<f&&(o.vertical="middle"),x(D(e),D(i))>x(D(s),D(n))?o.important="horizontal":o.important="vertical",p.using.call(this,t,o)}),h.offset(y.extend(l,{using:t}))})},y.ui.position={fit:{left:function(t,e){var i=e.within,
+s=i.isWindow?i.scrollLeft:i.offset.left,n=i.width,o=t.left-e.collisionPosition.marginLeft,h=s-o,a=o+e.collisionWidth-n-s;e.collisionWidth>n?0<h&&a<=0?(i=t.left+h+e.collisionWidth-n-s,t.left+=h-i):t.left=!(0<a&&h<=0)&&a<h?s+n-e.collisionWidth:s:0<h?t.left+=h:0<a?t.left-=a:t.left=x(t.left-o,t.left)},top:function(t,e){var i=e.within,s=i.isWindow?i.scrollTop:i.offset.top,n=e.within.height,o=t.top-e.collisionPosition.marginTop,h=s-o,a=o+e.collisionHeight-n-s;e.collisionHeight>n?0<h&&a<=0?(i=t.top+h+e.collisionHeight-n-s,t.top+=h-i):t.top=!(0<a&&h<=0)&&a<h?s+n-e.collisionHeight:s:0<h?t.top+=h:0<a?t.top-=a:t.top=x(t.top-o,t.top)}},flip:{left:function(t,e){var i=e.within,s=i.offset.left+i.scrollLeft,n=i.width,o=i.isWindow?i.scrollLeft:i.offset.left,h=t.left-e.collisionPosition.marginLeft,a=h-o,r=h+e.collisionWidth-n-o,l="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,i="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,h=-2*e.offset[0];a<0?((s=t.left+l+i+h+e.collisionWidth-n-s)<0||s<D(a)
+)&&(t.left+=l+i+h):0<r&&(0<(o=t.left-e.collisionPosition.marginLeft+l+i+h-o)||D(o)<r)&&(t.left+=l+i+h)},top:function(t,e){var i=e.within,s=i.offset.top+i.scrollTop,n=i.height,o=i.isWindow?i.scrollTop:i.offset.top,h=t.top-e.collisionPosition.marginTop,a=h-o,r=h+e.collisionHeight-n-o,l="top"===e.my[1]?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,i="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,h=-2*e.offset[1];a<0?((s=t.top+l+i+h+e.collisionHeight-n-s)<0||s<D(a))&&(t.top+=l+i+h):0<r&&(0<(o=t.top-e.collisionPosition.marginTop+l+i+h-o)||D(o)<r)&&(t.top+=l+i+h)}},flipfit:{left:function(){y.ui.position.flip.left.apply(this,arguments),y.ui.position.fit.left.apply(this,arguments)},top:function(){y.ui.position.flip.top.apply(this,arguments),y.ui.position.fit.top.apply(this,arguments)}}};var t;y.ui.position,y.extend(y.expr.pseudos,{data:y.expr.createPseudo?y.expr.createPseudo(function(e){return function(t){return!!y.data(t,e)}}):function(t,e,i){return!!y.data(t,i[3])}}),y.fn.extend({
+disableSelection:(t="onselectstart"in document.createElement("div")?"selectstart":"mousedown",function(){return this.on(t+".ui-disableSelection",function(t){t.preventDefault()})}),enableSelection:function(){return this.off(".ui-disableSelection")}});y.ui.focusable=function(t,e){var i,s,n,o,h=t.nodeName.toLowerCase();return"area"===h?(s=(i=t.parentNode).name,!(!t.href||!s||"map"!==i.nodeName.toLowerCase())&&(0<(s=y("img[usemap='#"+s+"']")).length&&s.is(":visible"))):(/^(input|select|textarea|button|object)$/.test(h)?(n=!t.disabled)&&(o=y(t).closest("fieldset")[0])&&(n=!o.disabled):n="a"===h&&t.href||e,n&&y(t).is(":visible")&&function(t){var e=t.css("visibility");for(;"inherit"===e;)t=t.parent(),e=t.css("visibility");return"visible"===e}(y(t)))},y.extend(y.expr.pseudos,{focusable:function(t){return y.ui.focusable(t,null!=y.attr(t,"tabindex"))}});var e,d;y.ui.focusable,y.fn._form=function(){return"string"==typeof this[0].form?this.closest("form"):y(this[0].form)},y.ui.formResetMixin={_formResetHandler:function(
+){var e=y(this);setTimeout(function(){var t=e.data("ui-form-reset-instances");y.each(t,function(){this.refresh()})})},_bindFormResetHandler:function(){var t;this.form=this.element._form(),this.form.length&&((t=this.form.data("ui-form-reset-instances")||[]).length||this.form.on("reset.ui-form-reset",this._formResetHandler),t.push(this),this.form.data("ui-form-reset-instances",t))},_unbindFormResetHandler:function(){var t;this.form.length&&((t=this.form.data("ui-form-reset-instances")).splice(y.inArray(this,t),1),t.length?this.form.data("ui-form-reset-instances",t):this.form.removeData("ui-form-reset-instances").off("reset.ui-form-reset"))}};y.expr.pseudos||(y.expr.pseudos=y.expr[":"]),y.uniqueSort||(y.uniqueSort=y.unique),y.escapeSelector||(e=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\x80-\uFFFF\w-]/g,d=function(t,e){return e?"\0"===t?"пїЅ":t.slice(0,-1)+"\\"+t.charCodeAt(t.length-1).toString(16)+" ":"\\"+t},y.escapeSelector=function(t){return(t+"").replace(e,d)}),y.fn.even&&y.fn.odd||y.fn.extend({even:function(){
+return this.filter(function(t){return t%2==0})},odd:function(){return this.filter(function(t){return t%2==1})}});y.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38},y.fn.labels=function(){var t,e,i;return this.length?this[0].labels&&this[0].labels.length?this.pushStack(this[0].labels):(e=this.eq(0).parents("label"),(t=this.attr("id"))&&(i=(i=this.eq(0).parents().last()).add((i.length?i:this).siblings()),t="label[for='"+y.escapeSelector(t)+"']",e=e.add(i.find(t).addBack(t))),this.pushStack(e)):this.pushStack([])},y.fn.scrollParent=function(t){var e=this.css("position"),i="absolute"===e,s=t?/(auto|scroll|hidden)/:/(auto|scroll)/,t=this.parents().filter(function(){var t=y(this);return(!i||"static"!==t.css("position"))&&s.test(t.css("overflow")+t.css("overflow-y")+t.css("overflow-x"))}).eq(0);return"fixed"!==e&&t.length?t:y(this[0].ownerDocument||document)},y.extend(y.expr.pseudos,{tabbable:function(t){
+var e=y.attr(t,"tabindex"),i=null!=e;return(!i||0<=e)&&y.ui.focusable(t,i)}}),y.fn.extend({uniqueId:(c=0,function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++c)})}),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&y(this).removeAttr("id")})}}),y.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase());var c,f=!1;y(document).on("mouseup",function(){f=!1});y.widget("ui.mouse",{version:"1.13.2",options:{cancel:"input, textarea, button, select, option",distance:1,delay:0},_mouseInit:function(){var e=this;this.element.on("mousedown."+this.widgetName,function(t){return e._mouseDown(t)}).on("click."+this.widgetName,function(t){if(!0===y.data(t.target,e.widgetName+".preventClickEvent"))return y.removeData(t.target,e.widgetName+".preventClickEvent"),t.stopImmediatePropagation(),!1}),this.started=!1},_mouseDestroy:function(){this.element.off("."+this.widgetName),this._mouseMoveDelegate&&this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off(
+"mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(t){if(!f){this._mouseMoved=!1,this._mouseStarted&&this._mouseUp(t),this._mouseDownEvent=t;var e=this,i=1===t.which,s=!("string"!=typeof this.options.cancel||!t.target.nodeName)&&y(t.target).closest(this.options.cancel).length;return i&&!s&&this._mouseCapture(t)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){e.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=!1!==this._mouseStart(t),!this._mouseStarted)?(t.preventDefault(),!0):(!0===y.data(t.target,this.widgetName+".preventClickEvent")&&y.removeData(t.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(t){return e._mouseMove(t)},this._mouseUpDelegate=function(t){return e._mouseUp(t)},this.document.on("mousemove."+this.widgetName,this._mouseMoveDelegate).on("mouseup."+this.widgetName,this._mouseUpDelegate),t.preventDefault(),f=!0)):!0}},
+_mouseMove:function(t){if(this._mouseMoved){if(y.ui.ie&&(!document.documentMode||document.documentMode<9)&&!t.button)return this._mouseUp(t);if(!t.which)if(t.originalEvent.altKey||t.originalEvent.ctrlKey||t.originalEvent.metaKey||t.originalEvent.shiftKey)this.ignoreMissingWhich=!0;else if(!this.ignoreMissingWhich)return this._mouseUp(t)}return(t.which||t.button)&&(this._mouseMoved=!0),this._mouseStarted?(this._mouseDrag(t),t.preventDefault()):(this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=!1!==this._mouseStart(this._mouseDownEvent,t),this._mouseStarted?this._mouseDrag(t):this._mouseUp(t)),!this._mouseStarted)},_mouseUp:function(t){this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,t.target===this._mouseDownEvent.target&&y.data(t.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(t)),this._mouseDelayTimer&&(clearTimeout(this._mouseDelayTimer),
+delete this._mouseDelayTimer),this.ignoreMissingWhich=!1,f=!1,t.preventDefault()},_mouseDistanceMet:function(t){return Math.max(Math.abs(this._mouseDownEvent.pageX-t.pageX),Math.abs(this._mouseDownEvent.pageY-t.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),y.ui.plugin={add:function(t,e,i){var s,n=y.ui[t].prototype;for(s in i)n.plugins[s]=n.plugins[s]||[],n.plugins[s].push([e,i[s]])},call:function(t,e,i,s){var n,o=t.plugins[e];if(o&&(s||t.element[0].parentNode&&11!==t.element[0].parentNode.nodeType))for(n=0;n<o.length;n++)t.options[o[n][0]]&&o[n][1].apply(t.element,i)}};y.widget("ui.resizable",y.ui.mouse,{version:"1.13.2",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,classes:{"ui-resizable-se":"ui-icon ui-icon-gripsmall-diagonal-se"},containment:!1,ghost:!1,grid:!1,
+handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_num:function(t){return parseFloat(t)||0},_isNumber:function(t){return!isNaN(parseFloat(t))},_hasScroll:function(t,e){if("hidden"===y(t).css("overflow"))return!1;var i=e&&"left"===e?"scrollLeft":"scrollTop",e=!1;if(0<t[i])return!0;try{t[i]=1,e=0<t[i],t[i]=0}catch(t){}return e},_create:function(){var t,e=this.options,i=this;this._addClass("ui-resizable"),y.extend(this,{_aspectRatio:!!e.aspectRatio,aspectRatio:e.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:e.helper||e.ghost||e.animate?e.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/^(canvas|textarea|input|select|button|img)$/i)&&(this.element.wrap(y("<div class='ui-wrapper'></div>").css({overflow:"hidden",position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),
+this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance")),this.elementIsWrapper=!0,t={marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom"),marginLeft:this.originalElement.css("marginLeft")},this.element.css(t),this.originalElement.css("margin",0),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css(t),this._proportionallyResize()),this._setupHandles(),e.autoHide&&y(this.element).on("mouseenter",function(){e.disabled||(i._removeClass("ui-resizable-autohide"),i._handles.show())}).on("mouseleave",function(){e.disabled||i.resizing||(i._addClass("ui-resizable-autohide"),i._handles.hide())}),this._mouseInit()},_destroy:function(){this._mouseDestroy(),this._addedHandles.remove();function t(t){y(t
+).removeData("resizable").removeData("ui-resizable").off(".resizable")}var e;return this.elementIsWrapper&&(t(this.element),e=this.element,this.originalElement.css({position:e.css("position"),width:e.outerWidth(),height:e.outerHeight(),top:e.css("top"),left:e.css("left")}).insertAfter(e),e.remove()),this.originalElement.css("resize",this.originalResizeStyle),t(this.originalElement),this},_setOption:function(t,e){switch(this._super(t,e),t){case"handles":this._removeHandles(),this._setupHandles();break;case"aspectRatio":this._aspectRatio=!!e}},_setupHandles:function(){var t,e,i,s,n,o=this.options,h=this;if(this.handles=o.handles||(y(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this._handles=y(),this._addedHandles=y(),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),i=this.handles.split(
+","),this.handles={},e=0;e<i.length;e++)s="ui-resizable-"+(t=String.prototype.trim.call(i[e])),n=y("<div>"),this._addClass(n,"ui-resizable-handle "+s),n.css({zIndex:o.zIndex}),this.handles[t]=".ui-resizable-"+t,this.element.children(this.handles[t]).length||(this.element.append(n),this._addedHandles=this._addedHandles.add(n));this._renderAxis=function(t){var e,i,s;for(e in t=t||this.element,this.handles)this.handles[e].constructor===String?this.handles[e]=this.element.children(this.handles[e]).first().show():(this.handles[e].jquery||this.handles[e].nodeType)&&(this.handles[e]=y(this.handles[e]),this._on(this.handles[e],{mousedown:h._mouseDown})),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/^(textarea|input|select|button)$/i)&&(i=y(this.handles[e],this.element),s=/sw|ne|nw|se|n|s/.test(e)?i.outerHeight():i.outerWidth(),i=["padding",/ne|nw|n/.test(e)?"Top":/se|sw|s/.test(e)?"Bottom":/^e$/.test(e)?"Right":"Left"].join(""),t.css(i,s),this._proportionallyResize()),this._handles=this._handles.add(
+this.handles[e])},this._renderAxis(this.element),this._handles=this._handles.add(this.element.find(".ui-resizable-handle")),this._handles.disableSelection(),this._handles.on("mouseover",function(){h.resizing||(this.className&&(n=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),h.axis=n&&n[1]?n[1]:"se")}),o.autoHide&&(this._handles.hide(),this._addClass("ui-resizable-autohide"))},_removeHandles:function(){this._addedHandles.remove()},_mouseCapture:function(t){var e,i,s=!1;for(e in this.handles)(i=y(this.handles[e])[0])!==t.target&&!y.contains(i,t.target)||(s=!0);return!this.options.disabled&&s},_mouseStart:function(t){var e,i,s=this.options,n=this.element;return this.resizing=!0,this._renderProxy(),e=this._num(this.helper.css("left")),i=this._num(this.helper.css("top")),s.containment&&(e+=y(s.containment).scrollLeft()||0,i+=y(s.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:e,top:i},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{
+width:n.width(),height:n.height()},this.originalSize=this._helper?{width:n.outerWidth(),height:n.outerHeight()}:{width:n.width(),height:n.height()},this.sizeDiff={width:n.outerWidth()-n.width(),height:n.outerHeight()-n.height()},this.originalPosition={left:e,top:i},this.originalMousePosition={left:t.pageX,top:t.pageY},this.aspectRatio="number"==typeof s.aspectRatio?s.aspectRatio:this.originalSize.width/this.originalSize.height||1,s=y(".ui-resizable-"+this.axis).css("cursor"),y("body").css("cursor","auto"===s?this.axis+"-resize":s),this._addClass("ui-resizable-resizing"),this._propagate("start",t),!0},_mouseDrag:function(t){var e=this.originalMousePosition,i=this.axis,s=t.pageX-e.left||0,e=t.pageY-e.top||0,i=this._change[i];return this._updatePrevProperties(),i&&(e=i.apply(this,[t,s,e]),this._updateVirtualBoundaries(t.shiftKey),(this._aspectRatio||t.shiftKey)&&(e=this._updateRatio(e,t)),e=this._respectSize(e,t),this._updateCache(e),this._propagate("resize",t),e=this._applyChanges(),
+!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),y.isEmptyObject(e)||(this._updatePrevProperties(),this._trigger("resize",t,this.ui()),this._applyChanges())),!1},_mouseStop:function(t){this.resizing=!1;var e,i,s,n=this.options,o=this;return this._helper&&(s=(e=(i=this._proportionallyResizeElements).length&&/textarea/i.test(i[0].nodeName))&&this._hasScroll(i[0],"left")?0:o.sizeDiff.height,i=e?0:o.sizeDiff.width,e={width:o.helper.width()-i,height:o.helper.height()-s},i=parseFloat(o.element.css("left"))+(o.position.left-o.originalPosition.left)||null,s=parseFloat(o.element.css("top"))+(o.position.top-o.originalPosition.top)||null,n.animate||this.element.css(y.extend(e,{top:s,left:i})),o.helper.height(o.size.height),o.helper.width(o.size.width),this._helper&&!n.animate&&this._proportionallyResize()),y("body").css("cursor","auto"),this._removeClass("ui-resizable-resizing"),this._propagate("stop",t),this._helper&&this.helper.remove(),!1},_updatePrevProperties:function(){
+this.prevPosition={top:this.position.top,left:this.position.left},this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var t={};return this.position.top!==this.prevPosition.top&&(t.top=this.position.top+"px"),this.position.left!==this.prevPosition.left&&(t.left=this.position.left+"px"),this.size.width!==this.prevSize.width&&(t.width=this.size.width+"px"),this.size.height!==this.prevSize.height&&(t.height=this.size.height+"px"),this.helper.css(t),t},_updateVirtualBoundaries:function(t){var e,i,s=this.options,n={minWidth:this._isNumber(s.minWidth)?s.minWidth:0,maxWidth:this._isNumber(s.maxWidth)?s.maxWidth:1/0,minHeight:this._isNumber(s.minHeight)?s.minHeight:0,maxHeight:this._isNumber(s.maxHeight)?s.maxHeight:1/0};(this._aspectRatio||t)&&(e=n.minHeight*this.aspectRatio,i=n.minWidth/this.aspectRatio,s=n.maxHeight*this.aspectRatio,t=n.maxWidth/this.aspectRatio,e>n.minWidth&&(n.minWidth=e),i>n.minHeight&&(n.minHeight=i),s<n.maxWidth&&(n.maxWidth=s),t<n.maxHeight&&(n.maxHeight=t)
+),this._vBoundaries=n},_updateCache:function(t){this.offset=this.helper.offset(),this._isNumber(t.left)&&(this.position.left=t.left),this._isNumber(t.top)&&(this.position.top=t.top),this._isNumber(t.height)&&(this.size.height=t.height),this._isNumber(t.width)&&(this.size.width=t.width)},_updateRatio:function(t){var e=this.position,i=this.size,s=this.axis;return this._isNumber(t.height)?t.width=t.height*this.aspectRatio:this._isNumber(t.width)&&(t.height=t.width/this.aspectRatio),"sw"===s&&(t.left=e.left+(i.width-t.width),t.top=null),"nw"===s&&(t.top=e.top+(i.height-t.height),t.left=e.left+(i.width-t.width)),t},_respectSize:function(t){var e=this._vBoundaries,i=this.axis,s=this._isNumber(t.width)&&e.maxWidth&&e.maxWidth<t.width,n=this._isNumber(t.height)&&e.maxHeight&&e.maxHeight<t.height,o=this._isNumber(t.width)&&e.minWidth&&e.minWidth>t.width,h=this._isNumber(t.height)&&e.minHeight&&e.minHeight>t.height,a=this.originalPosition.left+this.originalSize.width,r=this.originalPosition.top+this.originalSize.height
+,l=/sw|nw|w/.test(i),i=/nw|ne|n/.test(i);return o&&(t.width=e.minWidth),h&&(t.height=e.minHeight),s&&(t.width=e.maxWidth),n&&(t.height=e.maxHeight),o&&l&&(t.left=a-e.minWidth),s&&l&&(t.left=a-e.maxWidth),h&&i&&(t.top=r-e.minHeight),n&&i&&(t.top=r-e.maxHeight),t.width||t.height||t.left||!t.top?t.width||t.height||t.top||!t.left||(t.left=null):t.top=null,t},_getPaddingPlusBorderDimensions:function(t){for(var e=0,i=[],s=[t.css("borderTopWidth"),t.css("borderRightWidth"),t.css("borderBottomWidth"),t.css("borderLeftWidth")],n=[t.css("paddingTop"),t.css("paddingRight"),t.css("paddingBottom"),t.css("paddingLeft")];e<4;e++)i[e]=parseFloat(s[e])||0,i[e]+=parseFloat(n[e])||0;return{height:i[0]+i[2],width:i[1]+i[3]}},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var t,e=0,i=this.helper||this.element;e<this._proportionallyResizeElements.length;e++)t=this._proportionallyResizeElements[e],this.outerDimensions||(this.outerDimensions=this._getPaddingPlusBorderDimensions(t)),t.css({
+height:i.height()-this.outerDimensions.height||0,width:i.width()-this.outerDimensions.width||0})},_renderProxy:function(){var t=this.element,e=this.options;this.elementOffset=t.offset(),this._helper?(this.helper=this.helper||y("<div></div>").css({overflow:"hidden"}),this._addClass(this.helper,this._helper),this.helper.css({width:this.element.outerWidth(),height:this.element.outerHeight(),position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++e.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element},_change:{e:function(t,e){return{width:this.originalSize.width+e}},w:function(t,e){var i=this.originalSize;return{left:this.originalPosition.left+e,width:i.width-e}},n:function(t,e,i){var s=this.originalSize;return{top:this.originalPosition.top+i,height:s.height-i}},s:function(t,e,i){return{height:this.originalSize.height+i}},se:function(t,e,i){return y.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[t,e,i]))},sw:function(t,e,
+i){return y.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[t,e,i]))},ne:function(t,e,i){return y.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[t,e,i]))},nw:function(t,e,i){return y.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[t,e,i]))}},_propagate:function(t,e){y.ui.plugin.call(this,t,[e,this.ui()]),"resize"!==t&&this._trigger(t,e,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),y.ui.plugin.add("resizable","animate",{stop:function(e){var i=y(this).resizable("instance"),t=i.options,s=i._proportionallyResizeElements,n=s.length&&/textarea/i.test(s[0].nodeName),o=n&&i._hasScroll(s[0],"left")?0:i.sizeDiff.height,h=n?0:i.sizeDiff.width,n={width:i.size.width-h,height:i.size.height-o},h=parseFloat(i.element.css("left"))+(i.position.left-i.originalPosition.left
+)||null,o=parseFloat(i.element.css("top"))+(i.position.top-i.originalPosition.top)||null;i.element.animate(y.extend(n,o&&h?{top:o,left:h}:{}),{duration:t.animateDuration,easing:t.animateEasing,step:function(){var t={width:parseFloat(i.element.css("width")),height:parseFloat(i.element.css("height")),top:parseFloat(i.element.css("top")),left:parseFloat(i.element.css("left"))};s&&s.length&&y(s[0]).css({width:t.width,height:t.height}),i._updateCache(t),i._propagate("resize",e)}})}}),y.ui.plugin.add("resizable","containment",{start:function(){var i,s,n=y(this).resizable("instance"),t=n.options,e=n.element,o=t.containment,h=o instanceof y?o.get(0):/parent/.test(o)?e.parent().get(0):o;h&&(n.containerElement=y(h),/document/.test(o)||o===document?(n.containerOffset={left:0,top:0},n.containerPosition={left:0,top:0},n.parentData={element:y(document),left:0,top:0,width:y(document).width(),height:y(document).height()||document.body.parentNode.scrollHeight}):(i=y(h),s=[],y(["Top","Right","Left","Bottom"]).each(function(t,e
+){s[t]=n._num(i.css("padding"+e))}),n.containerOffset=i.offset(),n.containerPosition=i.position(),n.containerSize={height:i.innerHeight()-s[3],width:i.innerWidth()-s[1]},t=n.containerOffset,e=n.containerSize.height,o=n.containerSize.width,o=n._hasScroll(h,"left")?h.scrollWidth:o,e=n._hasScroll(h)?h.scrollHeight:e,n.parentData={element:h,left:t.left,top:t.top,width:o,height:e}))},resize:function(t){var e=y(this).resizable("instance"),i=e.options,s=e.containerOffset,n=e.position,o=e._aspectRatio||t.shiftKey,h={top:0,left:0},a=e.containerElement,t=!0;a[0]!==document&&/static/.test(a.css("position"))&&(h=s),n.left<(e._helper?s.left:0)&&(e.size.width=e.size.width+(e._helper?e.position.left-s.left:e.position.left-h.left),o&&(e.size.height=e.size.width/e.aspectRatio,t=!1),e.position.left=i.helper?s.left:0),n.top<(e._helper?s.top:0)&&(e.size.height=e.size.height+(e._helper?e.position.top-s.top:e.position.top),o&&(e.size.width=e.size.height*e.aspectRatio,t=!1),e.position.top=e._helper?s.top:0),
+i=e.containerElement.get(0)===e.element.parent().get(0),n=/relative|absolute/.test(e.containerElement.css("position")),i&&n?(e.offset.left=e.parentData.left+e.position.left,e.offset.top=e.parentData.top+e.position.top):(e.offset.left=e.element.offset().left,e.offset.top=e.element.offset().top),n=Math.abs(e.sizeDiff.width+(e._helper?e.offset.left-h.left:e.offset.left-s.left)),s=Math.abs(e.sizeDiff.height+(e._helper?e.offset.top-h.top:e.offset.top-s.top)),n+e.size.width>=e.parentData.width&&(e.size.width=e.parentData.width-n,o&&(e.size.height=e.size.width/e.aspectRatio,t=!1)),s+e.size.height>=e.parentData.height&&(e.size.height=e.parentData.height-s,o&&(e.size.width=e.size.height*e.aspectRatio,t=!1)),t||(e.position.left=e.prevPosition.left,e.position.top=e.prevPosition.top,e.size.width=e.prevSize.width,e.size.height=e.prevSize.height)},stop:function(){var t=y(this).resizable("instance"),e=t.options,i=t.containerOffset,s=t.containerPosition,n=t.containerElement,o=y(t.helper),h=o.offset(),a=o.outerWidth(
+)-t.sizeDiff.width,o=o.outerHeight()-t.sizeDiff.height;t._helper&&!e.animate&&/relative/.test(n.css("position"))&&y(this).css({left:h.left-s.left-i.left,width:a,height:o}),t._helper&&!e.animate&&/static/.test(n.css("position"))&&y(this).css({left:h.left-s.left-i.left,width:a,height:o})}}),y.ui.plugin.add("resizable","alsoResize",{start:function(){var t=y(this).resizable("instance").options;y(t.alsoResize).each(function(){var t=y(this);t.data("ui-resizable-alsoresize",{width:parseFloat(t.width()),height:parseFloat(t.height()),left:parseFloat(t.css("left")),top:parseFloat(t.css("top"))})})},resize:function(t,i){var e=y(this).resizable("instance"),s=e.options,n=e.originalSize,o=e.originalPosition,h={height:e.size.height-n.height||0,width:e.size.width-n.width||0,top:e.position.top-o.top||0,left:e.position.left-o.left||0};y(s.alsoResize).each(function(){var t=y(this),s=y(this).data("ui-resizable-alsoresize"),n={},e=t.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];y.each(e,
+function(t,e){var i=(s[e]||0)+(h[e]||0);i&&0<=i&&(n[e]=i||null)}),t.css(n)})},stop:function(){y(this).removeData("ui-resizable-alsoresize")}}),y.ui.plugin.add("resizable","ghost",{start:function(){var t=y(this).resizable("instance"),e=t.size;t.ghost=t.originalElement.clone(),t.ghost.css({opacity:.25,display:"block",position:"relative",height:e.height,width:e.width,margin:0,left:0,top:0}),t._addClass(t.ghost,"ui-resizable-ghost"),!1!==y.uiBackCompat&&"string"==typeof t.options.ghost&&t.ghost.addClass(this.options.ghost),t.ghost.appendTo(t.helper)},resize:function(){var t=y(this).resizable("instance");t.ghost&&t.ghost.css({position:"relative",height:t.size.height,width:t.size.width})},stop:function(){var t=y(this).resizable("instance");t.ghost&&t.helper&&t.helper.get(0).removeChild(t.ghost.get(0))}}),y.ui.plugin.add("resizable","grid",{resize:function(){var t,e=y(this).resizable("instance"),i=e.options,s=e.size,n=e.originalSize,o=e.originalPosition,h=e.axis,a="number"==typeof i.grid?[i.grid,i.grid]:i.grid,r=a[0
+]||1,l=a[1]||1,u=Math.round((s.width-n.width)/r)*r,p=Math.round((s.height-n.height)/l)*l,d=n.width+u,c=n.height+p,f=i.maxWidth&&i.maxWidth<d,g=i.maxHeight&&i.maxHeight<c,m=i.minWidth&&i.minWidth>d,s=i.minHeight&&i.minHeight>c;i.grid=a,m&&(d+=r),s&&(c+=l),f&&(d-=r),g&&(c-=l),/^(se|s|e)$/.test(h)?(e.size.width=d,e.size.height=c):/^(ne)$/.test(h)?(e.size.width=d,e.size.height=c,e.position.top=o.top-p):/^(sw)$/.test(h)?(e.size.width=d,e.size.height=c,e.position.left=o.left-u):((c-l<=0||d-r<=0)&&(t=e._getPaddingPlusBorderDimensions(this)),0<c-l?(e.size.height=c,e.position.top=o.top-p):(c=l-t.height,e.size.height=c,e.position.top=o.top+n.height-c),0<d-r?(e.size.width=d,e.position.left=o.left-u):(d=r-t.width,e.size.width=d,e.position.left=o.left+n.width-d))}});y.ui.resizable});
+/**
+ * Copyright (c) 2007 Ariel Flesler - aflesler ○ gmail • com | https://github.com/flesler
+ * Licensed under MIT
+ * @author Ariel Flesler
+ * @version 2.1.2
+ */(function(f){"use strict";"function"===typeof define&&define.amd?define(["jquery"],f):"undefined"!==typeof module&&module.exports?module.exports=f(require("jquery")):f(jQuery)})(function($){"use strict";function n(a){return!a.nodeName||-1!==$.inArray(a.nodeName.toLowerCase(),["iframe","#document","html","body"])}function h(a){return $.isFunction(a)||$.isPlainObject(a)?a:{top:a,left:a}}var p=$.scrollTo=function(a,d,b){return $(window).scrollTo(a,d,b)};p.defaults={axis:"xy",duration:0,limit:!0};$.fn.scrollTo=function(a,d,b){"object"===typeof d&&(b=d,d=0);"function"===typeof b&&(b={onAfter:b});"max"===a&&(a=9e9);b=$.extend({},p.defaults,b);d=d||b.duration;var u=b.queue&&1<b.axis.length;u&&(d/=2);b.offset=h(b.offset);b.over=h(b.over);return this.each(function(){function k(a){var k=$.extend({},b,{queue:!0,duration:d,complete:a&&function(){a.call(q,e,b)}});r.animate(f,k)}if(null!==a){var l=n(this),q=l?this.contentWindow||window:this,r=$(q),e=a,f={},t;switch(typeof e){case"number":case"string":if(
+/^([+-]=?)?\d+(\.\d+)?(px|%)?$/.test(e)){e=h(e);break}e=l?$(e):$(e,q);case"object":if(e.length===0)return;if(e.is||e.style)t=(e=$(e)).offset()}var v=$.isFunction(b.offset)&&b.offset(q,e)||b.offset;$.each(b.axis.split(""),function(a,c){var d="x"===c?"Left":"Top",m=d.toLowerCase(),g="scroll"+d,h=r[g](),n=p.max(q,c);t?(f[g]=t[m]+(l?0:h-r.offset()[m]),b.margin&&(f[g]-=parseInt(e.css("margin"+d),10)||0,f[g]-=parseInt(e.css("border"+d+"Width"),10)||0),f[g]+=v[m]||0,b.over[m]&&(f[g]+=e["x"===c?"width":"height"]()*b.over[m])):(d=e[m],f[g]=d.slice&&"%"===d.slice(-1)?parseFloat(d)/100*n:d);b.limit&&/^\d+$/.test(f[g])&&(f[g]=0>=f[g]?0:Math.min(f[g],n));!a&&1<b.axis.length&&(h===f[g]?f={}:u&&(k(b.onAfterFirst),f={}))});k(b.onAfter)}})};p.max=function(a,d){var b="x"===d?"Width":"Height",h="scroll"+b;if(!n(a))return a[h]-$(a)[b.toLowerCase()]();var b="client"+b,k=a.ownerDocument||a.document,l=k.documentElement,k=k.body;return Math.max(l[h],k[h])-Math.min(l[b],k[b])};
+$.Tween.propHooks.scrollLeft=$.Tween.propHooks.scrollTop={get:function(a){return $(a.elem)[a.prop]()},set:function(a){var d=this.get(a);if(a.options.interrupt&&a._last&&a._last!==d)return $(a.elem).stop();var b=Math.round(a.now);d!==b&&($(a.elem)[a.prop](b),a._last=this.get(a))}};return p});
+/*!
+ PowerTip v1.3.1 (2018-04-15)
+ https://stevenbenner.github.io/jquery-powertip/
+ Copyright (c) 2018 Steven Benner (http://stevenbenner.com/).
+ Released under MIT license.
+ https://raw.github.com/stevenbenner/jquery-powertip/master/LICENSE.txt
+*/
+(function(root,factory){if(typeof define==="function"&&define.amd){define(["jquery"],factory)}else if(typeof module==="object"&&module.exports){module.exports=factory(require("jquery"))}else{factory(root.jQuery)}})(this,function($){var $document=$(document),$window=$(window),$body=$("body");var DATA_DISPLAYCONTROLLER="displayController",DATA_HASACTIVEHOVER="hasActiveHover",DATA_FORCEDOPEN="forcedOpen",DATA_HASMOUSEMOVE="hasMouseMove",DATA_MOUSEONTOTIP="mouseOnToPopup",DATA_ORIGINALTITLE="originalTitle",DATA_POWERTIP="powertip",DATA_POWERTIPJQ="powertipjq",DATA_POWERTIPTARGET="powertiptarget",EVENT_NAMESPACE=".powertip",RAD2DEG=180/Math.PI,MOUSE_EVENTS=["click","dblclick","mousedown","mouseup","mousemove","mouseover","mouseout","mouseenter","mouseleave","contextmenu"];var session={tooltips:null,isTipOpen:false,isFixedTipOpen:false,isClosing:false,tipOpenImminent:false,activeHover:null,currentX:0,currentY:0,previousX:0,previousY:0,desyncTimeout:null,closeDelayTimeout:null,mouseTrackingActive:false,
+delayInProgress:false,windowWidth:0,windowHeight:0,scrollTop:0,scrollLeft:0};var Collision={none:0,top:1,bottom:2,left:4,right:8};$.fn.powerTip=function(opts,arg){var targetElements=this,options,tipController;if(!targetElements.length){return targetElements}if($.type(opts)==="string"&&$.powerTip[opts]){return $.powerTip[opts].call(targetElements,targetElements,arg)}options=$.extend({},$.fn.powerTip.defaults,opts);tipController=new TooltipController(options);initTracking();targetElements.each(function elementSetup(){var $this=$(this),dataPowertip=$this.data(DATA_POWERTIP),dataElem=$this.data(DATA_POWERTIPJQ),dataTarget=$this.data(DATA_POWERTIPTARGET),title=$this.attr("title");if(!dataPowertip&&!dataTarget&&!dataElem&&title){$this.data(DATA_POWERTIP,title);$this.data(DATA_ORIGINALTITLE,title);$this.removeAttr("title")}$this.data(DATA_DISPLAYCONTROLLER,new DisplayController($this,options,tipController))});if(!options.manual){$.each(options.openEvents,function(idx,evt){if($.inArray(evt,options.closeEvents)>-1){
+targetElements.on(evt+EVENT_NAMESPACE,function elementToggle(event){$.powerTip.toggle(this,event)})}else{targetElements.on(evt+EVENT_NAMESPACE,function elementOpen(event){$.powerTip.show(this,event)})}});$.each(options.closeEvents,function(idx,evt){if($.inArray(evt,options.openEvents)<0){targetElements.on(evt+EVENT_NAMESPACE,function elementClose(event){$.powerTip.hide(this,!isMouseEvent(event))})}});targetElements.on("keydown"+EVENT_NAMESPACE,function elementKeyDown(event){if(event.keyCode===27){$.powerTip.hide(this,true)}})}return targetElements};$.fn.powerTip.defaults={fadeInTime:200,fadeOutTime:100,followMouse:false,popupId:"powerTip",popupClass:null,intentSensitivity:7,intentPollInterval:100,closeDelay:100,placement:"n",smartPlacement:false,offset:10,mouseOnToPopup:false,manual:false,openEvents:["mouseenter","focus"],closeEvents:["mouseleave","blur"]};$.fn.powerTip.smartPlacementLists={n:["n","ne","nw","s"],e:["e","ne","se","w","nw","sw","n","s","e"],s:["s","se","sw","n"],w:["w","nw","sw","e","ne","se",
+"n","s","w"],nw:["nw","w","sw","n","s","se","nw"],ne:["ne","e","se","n","s","sw","ne"],sw:["sw","w","nw","s","n","ne","sw"],se:["se","e","ne","s","n","nw","se"],"nw-alt":["nw-alt","n","ne-alt","sw-alt","s","se-alt","w","e"],"ne-alt":["ne-alt","n","nw-alt","se-alt","s","sw-alt","e","w"],"sw-alt":["sw-alt","s","se-alt","nw-alt","n","ne-alt","w","e"],"se-alt":["se-alt","s","sw-alt","ne-alt","n","nw-alt","e","w"]};$.powerTip={show:function apiShowTip(element,event){if(isMouseEvent(event)){trackMouse(event);session.previousX=event.pageX;session.previousY=event.pageY;$(element).data(DATA_DISPLAYCONTROLLER).show()}else{$(element).first().data(DATA_DISPLAYCONTROLLER).show(true,true)}return element},reposition:function apiResetPosition(element){$(element).first().data(DATA_DISPLAYCONTROLLER).resetPosition();return element},hide:function apiCloseTip(element,immediate){var displayController;immediate=element?immediate:true;if(element){displayController=$(element).first().data(DATA_DISPLAYCONTROLLER)}else if(
+session.activeHover){displayController=session.activeHover.data(DATA_DISPLAYCONTROLLER)}if(displayController){displayController.hide(immediate)}return element},toggle:function apiToggle(element,event){if(session.activeHover&&session.activeHover.is(element)){$.powerTip.hide(element,!isMouseEvent(event))}else{$.powerTip.show(element,event)}return element}};$.powerTip.showTip=$.powerTip.show;$.powerTip.closeTip=$.powerTip.hide;function CSSCoordinates(){var me=this;me.top="auto";me.left="auto";me.right="auto";me.bottom="auto";me.set=function(property,value){if($.isNumeric(value)){me[property]=Math.round(value)}}}function DisplayController(element,options,tipController){var hoverTimer=null,myCloseDelay=null;function openTooltip(immediate,forceOpen){cancelTimer();if(!element.data(DATA_HASACTIVEHOVER)){if(!immediate){session.tipOpenImminent=true;hoverTimer=setTimeout(function intentDelay(){hoverTimer=null;checkForIntent()},options.intentPollInterval)}else{if(forceOpen){element.data(DATA_FORCEDOPEN,true)}
+closeAnyDelayed();tipController.showTip(element)}}else{cancelClose()}}function closeTooltip(disableDelay){if(myCloseDelay){myCloseDelay=session.closeDelayTimeout=clearTimeout(myCloseDelay);session.delayInProgress=false}cancelTimer();session.tipOpenImminent=false;if(element.data(DATA_HASACTIVEHOVER)){element.data(DATA_FORCEDOPEN,false);if(!disableDelay){session.delayInProgress=true;session.closeDelayTimeout=setTimeout(function closeDelay(){session.closeDelayTimeout=null;tipController.hideTip(element);session.delayInProgress=false;myCloseDelay=null},options.closeDelay);myCloseDelay=session.closeDelayTimeout}else{tipController.hideTip(element)}}}function checkForIntent(){var xDifference=Math.abs(session.previousX-session.currentX),yDifference=Math.abs(session.previousY-session.currentY),totalDifference=xDifference+yDifference;if(totalDifference<options.intentSensitivity){cancelClose();closeAnyDelayed();tipController.showTip(element)}else{session.previousX=session.currentX;session.previousY=session.currentY;
+openTooltip()}}function cancelTimer(stopClose){hoverTimer=clearTimeout(hoverTimer);if(session.closeDelayTimeout&&myCloseDelay===session.closeDelayTimeout||stopClose){cancelClose()}}function cancelClose(){session.closeDelayTimeout=clearTimeout(session.closeDelayTimeout);session.delayInProgress=false}function closeAnyDelayed(){if(session.delayInProgress&&session.activeHover&&!session.activeHover.is(element)){session.activeHover.data(DATA_DISPLAYCONTROLLER).hide(true)}}function repositionTooltip(){tipController.resetPosition(element)}this.show=openTooltip;this.hide=closeTooltip;this.cancel=cancelTimer;this.resetPosition=repositionTooltip}function PlacementCalculator(){function computePlacementCoords(element,placement,tipWidth,tipHeight,offset){var placementBase=placement.split("-")[0],coords=new CSSCoordinates,position;if(isSvgElement(element)){position=getSvgPlacement(element,placementBase)}else{position=getHtmlPlacement(element,placementBase)}switch(placement){case"n":coords.set("left",position.left-tipWidth/2
+);coords.set("bottom",session.windowHeight-position.top+offset);break;case"e":coords.set("left",position.left+offset);coords.set("top",position.top-tipHeight/2);break;case"s":coords.set("left",position.left-tipWidth/2);coords.set("top",position.top+offset);break;case"w":coords.set("top",position.top-tipHeight/2);coords.set("right",session.windowWidth-position.left+offset);break;case"nw":coords.set("bottom",session.windowHeight-position.top+offset);coords.set("right",session.windowWidth-position.left-20);break;case"nw-alt":coords.set("left",position.left);coords.set("bottom",session.windowHeight-position.top+offset);break;case"ne":coords.set("left",position.left-20);coords.set("bottom",session.windowHeight-position.top+offset);break;case"ne-alt":coords.set("bottom",session.windowHeight-position.top+offset);coords.set("right",session.windowWidth-position.left);break;case"sw":coords.set("top",position.top+offset);coords.set("right",session.windowWidth-position.left-20);break;case"sw-alt":coords.set("left",
+position.left);coords.set("top",position.top+offset);break;case"se":coords.set("left",position.left-20);coords.set("top",position.top+offset);break;case"se-alt":coords.set("top",position.top+offset);coords.set("right",session.windowWidth-position.left);break}return coords}function getHtmlPlacement(element,placement){var objectOffset=element.offset(),objectWidth=element.outerWidth(),objectHeight=element.outerHeight(),left,top;switch(placement){case"n":left=objectOffset.left+objectWidth/2;top=objectOffset.top;break;case"e":left=objectOffset.left+objectWidth;top=objectOffset.top+objectHeight/2;break;case"s":left=objectOffset.left+objectWidth/2;top=objectOffset.top+objectHeight;break;case"w":left=objectOffset.left;top=objectOffset.top+objectHeight/2;break;case"nw":left=objectOffset.left;top=objectOffset.top;break;case"ne":left=objectOffset.left+objectWidth;top=objectOffset.top;break;case"sw":left=objectOffset.left;top=objectOffset.top+objectHeight;break;case"se":left=objectOffset.left+objectWidth;
+top=objectOffset.top+objectHeight;break}return{top:top,left:left}}function getSvgPlacement(element,placement){var svgElement=element.closest("svg")[0],domElement=element[0],point=svgElement.createSVGPoint(),boundingBox=domElement.getBBox(),matrix=domElement.getScreenCTM(),halfWidth=boundingBox.width/2,halfHeight=boundingBox.height/2,placements=[],placementKeys=["nw","n","ne","e","se","s","sw","w"],coords,rotation,steps,x;function pushPlacement(){placements.push(point.matrixTransform(matrix))}point.x=boundingBox.x;point.y=boundingBox.y;pushPlacement();point.x+=halfWidth;pushPlacement();point.x+=halfWidth;pushPlacement();point.y+=halfHeight;pushPlacement();point.y+=halfHeight;pushPlacement();point.x-=halfWidth;pushPlacement();point.x-=halfWidth;pushPlacement();point.y-=halfHeight;pushPlacement();if(placements[0].y!==placements[1].y||placements[0].x!==placements[7].x){rotation=Math.atan2(matrix.b,matrix.a)*RAD2DEG;steps=Math.ceil((rotation%360-22.5)/45);if(steps<1){steps+=8}while(steps--){placementKeys.push(
+placementKeys.shift())}}for(x=0;x<placements.length;x++){if(placementKeys[x]===placement){coords=placements[x];break}}return{top:coords.y+session.scrollTop,left:coords.x+session.scrollLeft}}this.compute=computePlacementCoords}function TooltipController(options){var placementCalculator=new PlacementCalculator,tipElement=$("#"+options.popupId);if(tipElement.length===0){tipElement=$("<div/>",{id:options.popupId});if($body.length===0){$body=$("body")}$body.append(tipElement);session.tooltips=session.tooltips?session.tooltips.add(tipElement):tipElement}if(options.followMouse){if(!tipElement.data(DATA_HASMOUSEMOVE)){$document.on("mousemove"+EVENT_NAMESPACE,positionTipOnCursor);$window.on("scroll"+EVENT_NAMESPACE,positionTipOnCursor);tipElement.data(DATA_HASMOUSEMOVE,true)}}function beginShowTip(element){element.data(DATA_HASACTIVEHOVER,true);tipElement.queue(function queueTipInit(next){showTip(element);next()})}function showTip(element){var tipContent;if(!element.data(DATA_HASACTIVEHOVER)){return}if(
+session.isTipOpen){if(!session.isClosing){hideTip(session.activeHover)}tipElement.delay(100).queue(function queueTipAgain(next){showTip(element);next()});return}element.trigger("powerTipPreRender");tipContent=getTooltipContent(element);if(tipContent){tipElement.empty().append(tipContent)}else{return}element.trigger("powerTipRender");session.activeHover=element;session.isTipOpen=true;tipElement.data(DATA_MOUSEONTOTIP,options.mouseOnToPopup);tipElement.addClass(options.popupClass);if(!options.followMouse||element.data(DATA_FORCEDOPEN)){positionTipOnElement(element);session.isFixedTipOpen=true}else{positionTipOnCursor()}if(!element.data(DATA_FORCEDOPEN)&&!options.followMouse){$document.on("click"+EVENT_NAMESPACE,function documentClick(event){var target=event.target;if(target!==element[0]){if(options.mouseOnToPopup){if(target!==tipElement[0]&&!$.contains(tipElement[0],target)){$.powerTip.hide()}}else{$.powerTip.hide()}}})}if(options.mouseOnToPopup&&!options.manual){tipElement.on("mouseenter"+EVENT_NAMESPACE,
+function tipMouseEnter(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).cancel()}});tipElement.on("mouseleave"+EVENT_NAMESPACE,function tipMouseLeave(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).hide()}})}tipElement.fadeIn(options.fadeInTime,function fadeInCallback(){if(!session.desyncTimeout){session.desyncTimeout=setInterval(closeDesyncedTip,500)}element.trigger("powerTipOpen")})}function hideTip(element){session.isClosing=true;session.isTipOpen=false;session.desyncTimeout=clearInterval(session.desyncTimeout);element.data(DATA_HASACTIVEHOVER,false);element.data(DATA_FORCEDOPEN,false);$document.off("click"+EVENT_NAMESPACE);tipElement.off(EVENT_NAMESPACE);tipElement.fadeOut(options.fadeOutTime,function fadeOutCallback(){var coords=new CSSCoordinates;session.activeHover=null;session.isClosing=false;session.isFixedTipOpen=false;tipElement.removeClass();coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);
+tipElement.css(coords);element.trigger("powerTipClose")})}function positionTipOnCursor(){var tipWidth,tipHeight,coords,collisions,collisionCount;if(!session.isFixedTipOpen&&(session.isTipOpen||session.tipOpenImminent&&tipElement.data(DATA_HASMOUSEMOVE))){tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=new CSSCoordinates;coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);collisions=getViewportCollisions(coords,tipWidth,tipHeight);if(collisions!==Collision.none){collisionCount=countFlags(collisions);if(collisionCount===1){if(collisions===Collision.right){coords.set("left",session.scrollLeft+session.windowWidth-tipWidth)}else if(collisions===Collision.bottom){coords.set("top",session.scrollTop+session.windowHeight-tipHeight)}}else{coords.set("left",session.currentX-tipWidth-options.offset);coords.set("top",session.currentY-tipHeight-options.offset)}}tipElement.css(coords)}}function positionTipOnElement(element){var priorityList,
+finalPlacement;if(options.smartPlacement||options.followMouse&&element.data(DATA_FORCEDOPEN)){priorityList=$.fn.powerTip.smartPlacementLists[options.placement];$.each(priorityList,function(idx,pos){var collisions=getViewportCollisions(placeTooltip(element,pos),tipElement.outerWidth(),tipElement.outerHeight());finalPlacement=pos;return collisions!==Collision.none})}else{placeTooltip(element,options.placement);finalPlacement=options.placement}tipElement.removeClass("w nw sw e ne se n s w se-alt sw-alt ne-alt nw-alt");tipElement.addClass(finalPlacement)}function placeTooltip(element,placement){var iterationCount=0,tipWidth,tipHeight,coords=new CSSCoordinates;coords.set("top",0);coords.set("left",0);tipElement.css(coords);do{tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=placementCalculator.compute(element,placement,tipWidth,tipHeight,options.offset);tipElement.css(coords)}while(++iterationCount<=5&&(tipWidth!==tipElement.outerWidth()||tipHeight!==tipElement.outerHeight()));
+return coords}function closeDesyncedTip(){var isDesynced=false,hasDesyncableCloseEvent=$.grep(["mouseleave","mouseout","blur","focusout"],function(eventType){return $.inArray(eventType,options.closeEvents)!==-1}).length>0;if(session.isTipOpen&&!session.isClosing&&!session.delayInProgress&&hasDesyncableCloseEvent){if(session.activeHover.data(DATA_HASACTIVEHOVER)===false||session.activeHover.is(":disabled")){isDesynced=true}else if(!isMouseOver(session.activeHover)&&!session.activeHover.is(":focus")&&!session.activeHover.data(DATA_FORCEDOPEN)){if(tipElement.data(DATA_MOUSEONTOTIP)){if(!isMouseOver(tipElement)){isDesynced=true}}else{isDesynced=true}}if(isDesynced){hideTip(session.activeHover)}}}this.showTip=beginShowTip;this.hideTip=hideTip;this.resetPosition=positionTipOnElement}function isSvgElement(element){return Boolean(window.SVGElement&&element[0]instanceof SVGElement)}function isMouseEvent(event){return Boolean(event&&$.inArray(event.type,MOUSE_EVENTS)>-1&&typeof event.pageX==="number")}
+function initTracking(){if(!session.mouseTrackingActive){session.mouseTrackingActive=true;getViewportDimensions();$(getViewportDimensions);$document.on("mousemove"+EVENT_NAMESPACE,trackMouse);$window.on("resize"+EVENT_NAMESPACE,trackResize);$window.on("scroll"+EVENT_NAMESPACE,trackScroll)}}function getViewportDimensions(){session.scrollLeft=$window.scrollLeft();session.scrollTop=$window.scrollTop();session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackResize(){session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackScroll(){var x=$window.scrollLeft(),y=$window.scrollTop();if(x!==session.scrollLeft){session.currentX+=x-session.scrollLeft;session.scrollLeft=x}if(y!==session.scrollTop){session.currentY+=y-session.scrollTop;session.scrollTop=y}}function trackMouse(event){session.currentX=event.pageX;session.currentY=event.pageY}function isMouseOver(element){var elementPosition=element.offset(),elementBox=element[0].getBoundingClientRect(),
+elementWidth=elementBox.right-elementBox.left,elementHeight=elementBox.bottom-elementBox.top;return session.currentX>=elementPosition.left&&session.currentX<=elementPosition.left+elementWidth&&session.currentY>=elementPosition.top&&session.currentY<=elementPosition.top+elementHeight}function getTooltipContent(element){var tipText=element.data(DATA_POWERTIP),tipObject=element.data(DATA_POWERTIPJQ),tipTarget=element.data(DATA_POWERTIPTARGET),targetElement,content;if(tipText){if($.isFunction(tipText)){tipText=tipText.call(element[0])}content=tipText}else if(tipObject){if($.isFunction(tipObject)){tipObject=tipObject.call(element[0])}if(tipObject.length>0){content=tipObject.clone(true,true)}}else if(tipTarget){targetElement=$("#"+tipTarget);if(targetElement.length>0){content=targetElement.html()}}return content}function getViewportCollisions(coords,elementWidth,elementHeight){var viewportTop=session.scrollTop,viewportLeft=session.scrollLeft,viewportBottom=viewportTop+session.windowHeight,
+viewportRight=viewportLeft+session.windowWidth,collisions=Collision.none;if(coords.top<viewportTop||Math.abs(coords.bottom-session.windowHeight)-elementHeight<viewportTop){collisions|=Collision.top}if(coords.top+elementHeight>viewportBottom||Math.abs(coords.bottom-session.windowHeight)>viewportBottom){collisions|=Collision.bottom}if(coords.left<viewportLeft||coords.right+elementWidth>viewportRight){collisions|=Collision.left}if(coords.left+elementWidth>viewportRight||coords.right<viewportLeft){collisions|=Collision.right}return collisions}function countFlags(value){var count=0;while(value){value&=value-1;count++}return count}return $.powerTip});
+/*!
+ * jQuery UI Touch Punch 0.2.3
+ *
+ * Copyright 2011–2014, Dave Furfero
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ *
+ * Depends:
+ *  jquery.ui.widget.js
+ *  jquery.ui.mouse.js
+ */!function(a){function f(a,b){if(!(a.originalEvent.touches.length>1)){a.preventDefault();var c=a.originalEvent.changedTouches[0],d=document.createEvent("MouseEvents");d.initMouseEvent(b,!0,!0,window,1,c.screenX,c.screenY,c.clientX,c.clientY,!1,!1,!1,!1,0,null),a.target.dispatchEvent(d)}}if(a.support.touch="ontouchend"in document,a.support.touch){var e,b=a.ui.mouse.prototype,c=b._mouseInit,d=b._mouseDestroy;b._touchStart=function(a){var b=this;!e&&b._mouseCapture(a.originalEvent.changedTouches[0])&&(e=!0,b._touchMoved=!1,f(a,"mouseover"),f(a,"mousemove"),f(a,"mousedown"))},b._touchMove=function(a){e&&(this._touchMoved=!0,f(a,"mousemove"))},b._touchEnd=function(a){e&&(f(a,"mouseup"),f(a,"mouseout"),this._touchMoved||f(a,"click"),e=!1)},b._mouseInit=function(){var b=this;b.element.bind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),c.call(b)},b._mouseDestroy=function(){var b=this;b.element.unbind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,
+"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),d.call(b)}}}(jQuery);
+/*! SmartMenus jQuery Plugin - v1.1.0 - September 17, 2017
+ * http://www.smartmenus.org/
+ * Copyright Vasil Dinkov, Vadikom Web Ltd. http://vadikom.com; Licensed MIT */(function(t){"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof module&&"object"==typeof module.exports?module.exports=t(require("jquery")):t(jQuery)})(function($){function initMouseDetection(t){var e=".smartmenus_mouse";if(mouseDetectionEnabled||t)mouseDetectionEnabled&&t&&($(document).off(e),mouseDetectionEnabled=!1);else{var i=!0,s=null,o={mousemove:function(t){var e={x:t.pageX,y:t.pageY,timeStamp:(new Date).getTime()};if(s){var o=Math.abs(s.x-e.x),a=Math.abs(s.y-e.y);if((o>0||a>0)&&2>=o&&2>=a&&300>=e.timeStamp-s.timeStamp&&(mouse=!0,i)){var n=$(t.target).closest("a");n.is("a")&&$.each(menuTrees,function(){return $.contains(this.$root[0],n[0])?(this.itemEnter({currentTarget:n[0]}),!1):void 0}),i=!1}}s=e}};o[touchEvents?"touchstart":"pointerover pointermove pointerout MSPointerOver MSPointerMove MSPointerOut"]=function(t){isTouchEvent(t.originalEvent)&&(mouse=!1)},$(document).on(getEventsNS(o,e)),
+mouseDetectionEnabled=!0}}function isTouchEvent(t){return!/^(4|mouse)$/.test(t.pointerType)}function getEventsNS(t,e){e||(e="");var i={};for(var s in t)i[s.split(" ").join(e+" ")+e]=t[s];return i}var menuTrees=[],mouse=!1,touchEvents="ontouchstart"in window,mouseDetectionEnabled=!1,requestAnimationFrame=window.requestAnimationFrame||function(t){return setTimeout(t,1e3/60)},cancelAnimationFrame=window.cancelAnimationFrame||function(t){clearTimeout(t)},canAnimate=!!$.fn.animate;return $.SmartMenus=function(t,e){this.$root=$(t),this.opts=e,this.rootId="",this.accessIdPrefix="",this.$subArrow=null,this.activatedItems=[],this.visibleSubMenus=[],this.showTimeout=0,this.hideTimeout=0,this.scrollTimeout=0,this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.idInc=0,this.$firstLink=null,this.$firstSub=null,this.disabled=!1,this.$disableOverlay=null,this.$touchScrollingSub=null,this.cssTransforms3d="perspective"in t.style||"webkitPerspective"in t.style,this.wasCollapsible=!1,this.init()},$.extend(
+$.SmartMenus,{hideAll:function(){$.each(menuTrees,function(){this.menuHideAll()})},destroy:function(){for(;menuTrees.length;)menuTrees[0].destroy();initMouseDetection(!0)},prototype:{init:function(t){var e=this;if(!t){menuTrees.push(this),this.rootId=((new Date).getTime()+Math.random()+"").replace(/\D/g,""),this.accessIdPrefix="sm-"+this.rootId+"-",this.$root.hasClass("sm-rtl")&&(this.opts.rightToLeftSubMenus=!0);var i=".smartmenus";this.$root.data("smartmenus",this).attr("data-smartmenus-id",this.rootId).dataSM("level",1).on(getEventsNS({"mouseover focusin":$.proxy(this.rootOver,this),"mouseout focusout":$.proxy(this.rootOut,this),keydown:$.proxy(this.rootKeyDown,this)},i)).on(getEventsNS({mouseenter:$.proxy(this.itemEnter,this),mouseleave:$.proxy(this.itemLeave,this),mousedown:$.proxy(this.itemDown,this),focus:$.proxy(this.itemFocus,this),blur:$.proxy(this.itemBlur,this),click:$.proxy(this.itemClick,this)},i),"a"),i+=this.rootId,this.opts.hideOnClick&&$(document).on(getEventsNS({touchstart:$.proxy(
+this.docTouchStart,this),touchmove:$.proxy(this.docTouchMove,this),touchend:$.proxy(this.docTouchEnd,this),click:$.proxy(this.docClick,this)},i)),$(window).on(getEventsNS({"resize orientationchange":$.proxy(this.winResize,this)},i)),this.opts.subIndicators&&(this.$subArrow=$("<span/>").addClass("sub-arrow"),this.opts.subIndicatorsText&&this.$subArrow.html(this.opts.subIndicatorsText)),initMouseDetection()}if(this.$firstSub=this.$root.find("ul").each(function(){e.menuInit($(this))}).eq(0),this.$firstLink=this.$root.find("a").eq(0),this.opts.markCurrentItem){var s=/(index|default)\.[^#\?\/]*/i,o=/#.*/,a=window.location.href.replace(s,""),n=a.replace(o,"");this.$root.find("a").each(function(){var t=this.href.replace(s,""),i=$(this);(t==a||t==n)&&(i.addClass("current"),e.opts.markCurrentTree&&i.parentsUntil("[data-smartmenus-id]","ul").each(function(){$(this).dataSM("parent-a").addClass("current")}))})}this.wasCollapsible=this.isCollapsible()},destroy:function(t){if(!t){var e=".smartmenus";this.$root.removeData(
+"smartmenus").removeAttr("data-smartmenus-id").removeDataSM("level").off(e),e+=this.rootId,$(document).off(e),$(window).off(e),this.opts.subIndicators&&(this.$subArrow=null)}this.menuHideAll();var i=this;this.$root.find("ul").each(function(){var t=$(this);t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.dataSM("shown-before")&&((i.opts.subMenusMinWidth||i.opts.subMenusMaxWidth)&&t.css({width:"",minWidth:"",maxWidth:""}).removeClass("sm-nowrap"),t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.css({zIndex:"",top:"",left:"",marginLeft:"",marginTop:"",display:""})),0==(t.attr("id")||"").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeDataSM("in-mega").removeDataSM("shown-before").removeDataSM("scroll-arrows").removeDataSM("parent-a").removeDataSM("level").removeDataSM("beforefirstshowfired").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeAttr("aria-expanded"),this.$root.find("a.has-submenu").each(function(){var t=$(this);0==t.attr("id"
+).indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeClass("has-submenu").removeDataSM("sub").removeAttr("aria-haspopup").removeAttr("aria-controls").removeAttr("aria-expanded").closest("li").removeDataSM("sub"),this.opts.subIndicators&&this.$root.find("span.sub-arrow").remove(),this.opts.markCurrentItem&&this.$root.find("a.current").removeClass("current"),t||(this.$root=null,this.$firstLink=null,this.$firstSub=null,this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),menuTrees.splice($.inArray(this,menuTrees),1))},disable:function(t){if(!this.disabled){if(this.menuHideAll(),!t&&!this.opts.isPopup&&this.$root.is(":visible")){var e=this.$root.offset();this.$disableOverlay=$('<div class="sm-jquery-disable-overlay"/>').css({position:"absolute",top:e.top,left:e.left,width:this.$root.outerWidth(),height:this.$root.outerHeight(),zIndex:this.getStartZIndex(!0),opacity:0}).appendTo(document.body)}this.disabled=!0}},docClick:function(t){return this.$touchScrollingSub?(
+this.$touchScrollingSub=null,void 0):((this.visibleSubMenus.length&&!$.contains(this.$root[0],t.target)||$(t.target).closest("a").length)&&this.menuHideAll(),void 0)},docTouchEnd:function(){if(this.lastTouch){if(!(!this.visibleSubMenus.length||void 0!==this.lastTouch.x2&&this.lastTouch.x1!=this.lastTouch.x2||void 0!==this.lastTouch.y2&&this.lastTouch.y1!=this.lastTouch.y2||this.lastTouch.target&&$.contains(this.$root[0],this.lastTouch.target))){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var t=this;this.hideTimeout=setTimeout(function(){t.menuHideAll()},350)}this.lastTouch=null}},docTouchMove:function(t){if(this.lastTouch){var e=t.originalEvent.touches[0];this.lastTouch.x2=e.pageX,this.lastTouch.y2=e.pageY}},docTouchStart:function(t){var e=t.originalEvent.touches[0];this.lastTouch={x1:e.pageX,y1:e.pageY,target:e.target}},enable:function(){this.disabled&&(this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),this.disabled=!1)},getClosestMenu:function(t){for(
+var e=$(t).closest("ul");e.dataSM("in-mega");)e=e.parent().closest("ul");return e[0]||null},getHeight:function(t){return this.getOffset(t,!0)},getOffset:function(t,e){var i;"none"==t.css("display")&&(i={position:t[0].style.position,visibility:t[0].style.visibility},t.css({position:"absolute",visibility:"hidden"}).show());var s=t[0].getBoundingClientRect&&t[0].getBoundingClientRect(),o=s&&(e?s.height||s.bottom-s.top:s.width||s.right-s.left);return o||0===o||(o=e?t[0].offsetHeight:t[0].offsetWidth),i&&t.hide().css(i),o},getStartZIndex:function(t){var e=parseInt(this[t?"$root":"$firstSub"].css("z-index"));return!t&&isNaN(e)&&(e=parseInt(this.$root.css("z-index"))),isNaN(e)?1:e},getTouchPoint:function(t){return t.touches&&t.touches[0]||t.changedTouches&&t.changedTouches[0]||t},getViewport:function(t){var e=t?"Height":"Width",i=document.documentElement["client"+e],s=window["inner"+e];return s&&(i=Math.min(i,s)),i},getViewportHeight:function(){return this.getViewport(!0)},getViewportWidth:function(){
+return this.getViewport()},getWidth:function(t){return this.getOffset(t)},handleEvents:function(){return!this.disabled&&this.isCSSOn()},handleItemEvents:function(t){return this.handleEvents()&&!this.isLinkInMegaMenu(t)},isCollapsible:function(){return"static"==this.$firstSub.css("position")},isCSSOn:function(){return"inline"!=this.$firstLink.css("display")},isFixed:function(){var t="fixed"==this.$root.css("position");return t||this.$root.parentsUntil("body").each(function(){return"fixed"==$(this).css("position")?(t=!0,!1):void 0}),t},isLinkInMegaMenu:function(t){return $(this.getClosestMenu(t[0])).hasClass("mega-menu")},isTouchMode:function(){return!mouse||this.opts.noMouseOver||this.isCollapsible()},itemActivate:function(t,e){var i=t.closest("ul"),s=i.dataSM("level");if(s>1&&(!this.activatedItems[s-2]||this.activatedItems[s-2][0]!=i.dataSM("parent-a")[0])){var o=this;$(i.parentsUntil("[data-smartmenus-id]","ul").get().reverse()).add(i).each(function(){o.itemActivate($(this).dataSM("parent-a"))})}if((
+!this.isCollapsible()||e)&&this.menuHideSubMenus(this.activatedItems[s-1]&&this.activatedItems[s-1][0]==t[0]?s:s-1),this.activatedItems[s-1]=t,this.$root.triggerHandler("activate.smapi",t[0])!==!1){var a=t.dataSM("sub");a&&(this.isTouchMode()||!this.opts.showOnClick||this.clickActivated)&&this.menuShow(a)}},itemBlur:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&this.$root.triggerHandler("blur.smapi",e[0])},itemClick:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(this.$touchScrollingSub&&this.$touchScrollingSub[0]==e.closest("ul")[0])return this.$touchScrollingSub=null,t.stopPropagation(),!1;if(this.$root.triggerHandler("click.smapi",e[0])===!1)return!1;var i=$(t.target).is(".sub-arrow"),s=e.dataSM("sub"),o=s?2==s.dataSM("level"):!1,a=this.isCollapsible(),n=/toggle$/.test(this.opts.collapsibleBehavior),r=/link$/.test(this.opts.collapsibleBehavior),h=/^accordion/.test(this.opts.collapsibleBehavior);if(s&&!s.is(":visible")){if((!r||!a||i)&&(this.opts.showOnClick&&o&&(
+this.clickActivated=!0),this.itemActivate(e,h),s.is(":visible")))return this.focusActivated=!0,!1}else if(a&&(n||i))return this.itemActivate(e,h),this.menuHide(s),n&&(this.focusActivated=!1),!1;return this.opts.showOnClick&&o||e.hasClass("disabled")||this.$root.triggerHandler("select.smapi",e[0])===!1?!1:void 0}},itemDown:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&e.dataSM("mousedown",!0)},itemEnter:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(!this.isTouchMode()){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);var i=this;this.showTimeout=setTimeout(function(){i.itemActivate(e)},this.opts.showOnClick&&1==e.closest("ul").dataSM("level")?1:this.opts.showTimeout)}this.$root.triggerHandler("mouseenter.smapi",e[0])}},itemFocus:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(!this.focusActivated||this.isTouchMode()&&e.dataSM("mousedown")||this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0]==e[0
+]||this.itemActivate(e,!0),this.$root.triggerHandler("focus.smapi",e[0]))},itemLeave:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(this.isTouchMode()||(e[0].blur(),this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0)),e.removeDataSM("mousedown"),this.$root.triggerHandler("mouseleave.smapi",e[0]))},menuHide:function(t){if(this.$root.triggerHandler("beforehide.smapi",t[0])!==!1&&(canAnimate&&t.stop(!0,!0),"none"!=t.css("display"))){var e=function(){t.css("z-index","")};this.isCollapsible()?canAnimate&&this.opts.collapsibleHideFunction?this.opts.collapsibleHideFunction.call(this,t,e):t.hide(this.opts.collapsibleHideDuration,e):canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,t,e):t.hide(this.opts.hideDuration,e),t.dataSM("scroll")&&(this.menuScrollStop(t),t.css({"touch-action":"","-ms-touch-action":"","-webkit-transform":"",transform:""}).off(".smartmenus_scroll").removeDataSM("scroll").dataSM("scroll-arrows").hide()),t.dataSM("parent-a").removeClass(
+"highlighted").attr("aria-expanded","false"),t.attr({"aria-expanded":"false","aria-hidden":"true"});var i=t.dataSM("level");this.activatedItems.splice(i-1,1),this.visibleSubMenus.splice($.inArray(t,this.visibleSubMenus),1),this.$root.triggerHandler("hide.smapi",t[0])}},menuHideAll:function(){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);for(var t=this.opts.isPopup?1:0,e=this.visibleSubMenus.length-1;e>=t;e--)this.menuHide(this.visibleSubMenus[e]);this.opts.isPopup&&(canAnimate&&this.$root.stop(!0,!0),this.$root.is(":visible")&&(canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,this.$root):this.$root.hide(this.opts.hideDuration))),this.activatedItems=[],this.visibleSubMenus=[],this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.$root.triggerHandler("hideAll.smapi")},menuHideSubMenus:function(t){for(var e=this.activatedItems.length-1;e>=t;e--){var i=this.activatedItems[e].dataSM("sub");i&&this.menuHide(i)}},menuInit:function(t){if(!t.dataSM("in-mega")){
+t.hasClass("mega-menu")&&t.find("ul").dataSM("in-mega",!0);for(var e=2,i=t[0];(i=i.parentNode.parentNode)!=this.$root[0];)e++;var s=t.prevAll("a").eq(-1);s.length||(s=t.prevAll().find("a").eq(-1)),s.addClass("has-submenu").dataSM("sub",t),t.dataSM("parent-a",s).dataSM("level",e).parent().dataSM("sub",t);var o=s.attr("id")||this.accessIdPrefix+ ++this.idInc,a=t.attr("id")||this.accessIdPrefix+ ++this.idInc;s.attr({id:o,"aria-haspopup":"true","aria-controls":a,"aria-expanded":"false"}),t.attr({id:a,role:"group","aria-hidden":"true","aria-labelledby":o,"aria-expanded":"false"}),this.opts.subIndicators&&s[this.opts.subIndicatorsPos](this.$subArrow.clone())}},menuPosition:function(t){var e,i,s=t.dataSM("parent-a"),o=s.closest("li"),a=o.parent(),n=t.dataSM("level"),r=this.getWidth(t),h=this.getHeight(t),u=s.offset(),l=u.left,c=u.top,d=this.getWidth(s),m=this.getHeight(s),p=$(window),f=p.scrollLeft(),v=p.scrollTop(),b=this.getViewportWidth(),S=this.getViewportHeight(),g=a.parent().is("[data-sm-horizontal-sub]"
+)||2==n&&!a.hasClass("sm-vertical"),M=this.opts.rightToLeftSubMenus&&!o.is("[data-sm-reverse]")||!this.opts.rightToLeftSubMenus&&o.is("[data-sm-reverse]"),w=2==n?this.opts.mainMenuSubOffsetX:this.opts.subMenusSubOffsetX,T=2==n?this.opts.mainMenuSubOffsetY:this.opts.subMenusSubOffsetY;if(g?(e=M?d-r-w:w,i=this.opts.bottomToTopSubMenus?-h-T:m+T):(e=M?w-r:d-w,i=this.opts.bottomToTopSubMenus?m-T-h:T),this.opts.keepInViewport){var y=l+e,I=c+i;if(M&&f>y?e=g?f-y+e:d-w:!M&&y+r>f+b&&(e=g?f+b-r-y+e:w-r),g||(S>h&&I+h>v+S?i+=v+S-h-I:(h>=S||v>I)&&(i+=v-I)),g&&(I+h>v+S+.49||v>I)||!g&&h>S+.49){var x=this;t.dataSM("scroll-arrows")||t.dataSM("scroll-arrows",$([$('<span class="scroll-up"><span class="scroll-up-arrow"></span></span>')[0],$('<span class="scroll-down"><span class="scroll-down-arrow"></span></span>')[0]]).on({mouseenter:function(){t.dataSM("scroll").up=$(this).hasClass("scroll-up"),x.menuScroll(t)},mouseleave:function(e){x.menuScrollStop(t),x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(t){
+t.preventDefault()}}).insertAfter(t));var A=".smartmenus_scroll";if(t.dataSM("scroll",{y:this.cssTransforms3d?0:i-m,step:1,itemH:m,subH:h,arrowDownH:this.getHeight(t.dataSM("scroll-arrows").eq(1))}).on(getEventsNS({mouseover:function(e){x.menuScrollOver(t,e)},mouseout:function(e){x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(e){x.menuScrollMousewheel(t,e)}},A)).dataSM("scroll-arrows").css({top:"auto",left:"0",marginLeft:e+(parseInt(t.css("border-left-width"))||0),width:r-(parseInt(t.css("border-left-width"))||0)-(parseInt(t.css("border-right-width"))||0),zIndex:t.css("z-index")}).eq(g&&this.opts.bottomToTopSubMenus?0:1).show(),this.isFixed()){var C={};C[touchEvents?"touchstart touchmove touchend":"pointerdown pointermove pointerup MSPointerDown MSPointerMove MSPointerUp"]=function(e){x.menuScrollTouch(t,e)},t.css({"touch-action":"none","-ms-touch-action":"none"}).on(getEventsNS(C,A))}}}t.css({top:"auto",left:"0",marginLeft:e,marginTop:i-m})},menuScroll:function(t,e,i){var s,o=t.dataSM("scroll"),
+a=t.dataSM("scroll-arrows"),n=o.up?o.upEnd:o.downEnd;if(!e&&o.momentum){if(o.momentum*=.92,s=o.momentum,.5>s)return this.menuScrollStop(t),void 0}else s=i||(e||!this.opts.scrollAccelerate?this.opts.scrollStep:Math.floor(o.step));var r=t.dataSM("level");if(this.activatedItems[r-1]&&this.activatedItems[r-1].dataSM("sub")&&this.activatedItems[r-1].dataSM("sub").is(":visible")&&this.menuHideSubMenus(r-1),o.y=o.up&&o.y>=n||!o.up&&n>=o.y?o.y:Math.abs(n-o.y)>s?o.y+(o.up?s:-s):n,t.css(this.cssTransforms3d?{"-webkit-transform":"translate3d(0, "+o.y+"px, 0)",transform:"translate3d(0, "+o.y+"px, 0)"}:{marginTop:o.y}),mouse&&(o.up&&o.y>o.downEnd||!o.up&&o.y<o.upEnd)&&a.eq(o.up?1:0).show(),o.y==n)mouse&&a.eq(o.up?0:1).hide(),this.menuScrollStop(t);else if(!e){this.opts.scrollAccelerate&&o.step<this.opts.scrollStep&&(o.step+=.2);var h=this;this.scrollTimeout=requestAnimationFrame(function(){h.menuScroll(t)})}},menuScrollMousewheel:function(t,e){if(this.getClosestMenu(e.target)==t[0]){e=e.originalEvent;var i=(
+e.wheelDelta||-e.detail)>0;t.dataSM("scroll-arrows").eq(i?0:1).is(":visible")&&(t.dataSM("scroll").up=i,this.menuScroll(t,!0))}e.preventDefault()},menuScrollOut:function(t,e){mouse&&(/^scroll-(up|down)/.test((e.relatedTarget||"").className)||(t[0]==e.relatedTarget||$.contains(t[0],e.relatedTarget))&&this.getClosestMenu(e.relatedTarget)==t[0]||t.dataSM("scroll-arrows").css("visibility","hidden"))},menuScrollOver:function(t,e){if(mouse&&!/^scroll-(up|down)/.test(e.target.className)&&this.getClosestMenu(e.target)==t[0]){this.menuScrollRefreshData(t);var i=t.dataSM("scroll"),s=$(window).scrollTop()-t.dataSM("parent-a").offset().top-i.itemH;t.dataSM("scroll-arrows").eq(0).css("margin-top",s).end().eq(1).css("margin-top",s+this.getViewportHeight()-i.arrowDownH).end().css("visibility","visible")}},menuScrollRefreshData:function(t){var e=t.dataSM("scroll"),i=$(window).scrollTop()-t.dataSM("parent-a").offset().top-e.itemH;this.cssTransforms3d&&(i=-(parseFloat(t.css("margin-top"))-i)),$.extend(e,{upEnd:i,
+downEnd:i+this.getViewportHeight()-e.subH})},menuScrollStop:function(t){return this.scrollTimeout?(cancelAnimationFrame(this.scrollTimeout),this.scrollTimeout=0,t.dataSM("scroll").step=1,!0):void 0},menuScrollTouch:function(t,e){if(e=e.originalEvent,isTouchEvent(e)){var i=this.getTouchPoint(e);if(this.getClosestMenu(i.target)==t[0]){var s=t.dataSM("scroll");if(/(start|down)$/i.test(e.type))this.menuScrollStop(t)?(e.preventDefault(),this.$touchScrollingSub=t):this.$touchScrollingSub=null,this.menuScrollRefreshData(t),$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp});else if(/move$/i.test(e.type)){var o=void 0!==s.touchY?s.touchY:s.touchStartY;if(void 0!==o&&o!=i.pageY){this.$touchScrollingSub=t;var a=i.pageY>o;void 0!==s.up&&s.up!=a&&$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp}),$.extend(s,{up:a,touchY:i.pageY}),this.menuScroll(t,!0,Math.abs(i.pageY-o))}e.preventDefault()}else void 0!==s.touchY&&((s.momentum=15*Math.pow(Math.abs(i.pageY-s.touchStartY)/(e.timeStamp-s.touchStartTime),2)
+)&&(this.menuScrollStop(t),this.menuScroll(t),e.preventDefault()),delete s.touchY)}}},menuShow:function(t){if((t.dataSM("beforefirstshowfired")||(t.dataSM("beforefirstshowfired",!0),this.$root.triggerHandler("beforefirstshow.smapi",t[0])!==!1))&&this.$root.triggerHandler("beforeshow.smapi",t[0])!==!1&&(t.dataSM("shown-before",!0),canAnimate&&t.stop(!0,!0),!t.is(":visible"))){var e=t.dataSM("parent-a"),i=this.isCollapsible();if((this.opts.keepHighlighted||i)&&e.addClass("highlighted"),i)t.removeClass("sm-nowrap").css({zIndex:"",width:"auto",minWidth:"",maxWidth:"",top:"",left:"",marginLeft:"",marginTop:""});else{if(t.css("z-index",this.zIndexInc=(this.zIndexInc||this.getStartZIndex())+1),(this.opts.subMenusMinWidth||this.opts.subMenusMaxWidth)&&(t.css({width:"auto",minWidth:"",maxWidth:""}).addClass("sm-nowrap"),this.opts.subMenusMinWidth&&t.css("min-width",this.opts.subMenusMinWidth),this.opts.subMenusMaxWidth)){var s=this.getWidth(t);t.css("max-width",this.opts.subMenusMaxWidth),s>this.getWidth(t
+)&&t.removeClass("sm-nowrap").css("width",this.opts.subMenusMaxWidth)}this.menuPosition(t)}var o=function(){t.css("overflow","")};i?canAnimate&&this.opts.collapsibleShowFunction?this.opts.collapsibleShowFunction.call(this,t,o):t.show(this.opts.collapsibleShowDuration,o):canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,t,o):t.show(this.opts.showDuration,o),e.attr("aria-expanded","true"),t.attr({"aria-expanded":"true","aria-hidden":"false"}),this.visibleSubMenus.push(t),this.$root.triggerHandler("show.smapi",t[0])}},popupHide:function(t){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},t?1:this.opts.hideTimeout)},popupShow:function(t,e){if(!this.opts.isPopup)return alert('SmartMenus jQuery Error:\n\nIf you want to show this menu via the "popupShow" method, set the isPopup:true option.'),void 0;if(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),this.$root.dataSM("shown-before",!0),
+canAnimate&&this.$root.stop(!0,!0),!this.$root.is(":visible")){this.$root.css({left:t,top:e});var i=this,s=function(){i.$root.css("overflow","")};canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,this.$root,s):this.$root.show(this.opts.showDuration,s),this.visibleSubMenus[0]=this.$root}},refresh:function(){this.destroy(!0),this.init(!0)},rootKeyDown:function(t){if(this.handleEvents())switch(t.keyCode){case 27:var e=this.activatedItems[0];if(e){this.menuHideAll(),e[0].focus();var i=e.dataSM("sub");i&&this.menuHide(i)}break;case 32:var s=$(t.target);if(s.is("a")&&this.handleItemEvents(s)){var i=s.dataSM("sub");i&&!i.is(":visible")&&(this.itemClick({currentTarget:t.target}),t.preventDefault())}}},rootOut:function(t){if(this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),!this.opts.showOnClick||!this.opts.hideOnClick)){var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},this.opts.hideTimeout)}},
+rootOver:function(t){this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0)},winResize:function(t){if(this.handleEvents()){if(!("onorientationchange"in window)||"orientationchange"==t.type){var e=this.isCollapsible();this.wasCollapsible&&e||(this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0].blur(),this.menuHideAll()),this.wasCollapsible=e}}else if(this.$disableOverlay){var i=this.$root.offset();this.$disableOverlay.css({top:i.top,left:i.left,width:this.$root.outerWidth(),height:this.$root.outerHeight()})}}}}),$.fn.dataSM=function(t,e){return e?this.data(t+"_smartmenus",e):this.data(t+"_smartmenus")},$.fn.removeDataSM=function(t){return this.removeData(t+"_smartmenus")},$.fn.smartmenus=function(options){if("string"==typeof options){var args=arguments,method=options;return Array.prototype.shift.call(args),this.each(function(){var t=$(this).data("smartmenus");t&&t[method]&&t[method].apply(t,args)})}
+return this.each(function(){var dataOpts=$(this).data("sm-options")||null;if(dataOpts)try{dataOpts=eval("("+dataOpts+")")}catch(e){dataOpts=null,alert('ERROR\n\nSmartMenus jQuery init:\nInvalid "data-sm-options" attribute value syntax.')}new $.SmartMenus(this,$.extend({},$.fn.smartmenus.defaults,options,dataOpts))})},$.fn.smartmenus.defaults={isPopup:!1,mainMenuSubOffsetX:0,mainMenuSubOffsetY:0,subMenusSubOffsetX:0,subMenusSubOffsetY:0,subMenusMinWidth:"10em",subMenusMaxWidth:"20em",subIndicators:!0,subIndicatorsPos:"append",subIndicatorsText:"",scrollStep:30,scrollAccelerate:!0,showTimeout:250,hideTimeout:500,showDuration:0,showFunction:null,hideDuration:0,hideFunction:function(t,e){t.fadeOut(200,e)},collapsibleShowDuration:0,collapsibleShowFunction:function(t,e){t.slideDown(200,e)},collapsibleHideDuration:0,collapsibleHideFunction:function(t,e){t.slideUp(200,e)},showOnClick:!1,hideOnClick:!0,noMouseOver:!1,keepInViewport:!0,keepHighlighted:!0,markCurrentItem:!1,markCurrentTree:!0,rightToLeftSubMenus:!1,
+bottomToTopSubMenus:!1,collapsibleBehavior:"default"},$});
diff --git a/assets/docs/html/minus.svg b/assets/docs/html/minus.svg
new file mode 100644
index 0000000000000000000000000000000000000000..f70d0c1a183d0c0323f4d5cdb48456711103d039
--- /dev/null
+++ b/assets/docs/html/minus.svg
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg width="12px" height="12px" viewBox="0 0 105.83333 105.83333" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg">
+  <g>
+    <rect style="fill:#808080;stroke-width:0" width="105.83333" height="105.83334" x="4.2409692e-08" y="-1.2701158e-06" ry="0" />
+    <rect style="fill:#fcfcfc;stroke-width:0" width="79.375" height="79.375" x="13.229166" y="13.229166" />
+    <rect style="fill:#808080;stroke-width:0" width="52.916668" height="15.874998" x="26.458332" y="44.979168" />
+  </g>
+</svg>
diff --git a/assets/docs/html/minusd.svg b/assets/docs/html/minusd.svg
new file mode 100644
index 0000000000000000000000000000000000000000..5f8e879628d5bd6c15329554c21f40ad710e86c3
--- /dev/null
+++ b/assets/docs/html/minusd.svg
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg width="12px" height="12px" viewBox="0 0 105.83333 105.83333" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg">
+  <g>
+    <rect style="fill:#808080;stroke-width:0" width="105.83333" height="105.83334" x="4.2409692e-08" y="-1.2701158e-06" ry="0" />
+    <rect style="fill:#000000;stroke-width:0" width="79.375" height="79.375" x="13.229166" y="13.229166" />
+    <rect style="fill:#808080;stroke-width:0" width="52.916668" height="15.874998" x="26.458332" y="44.979168" />
+  </g>
+</svg>
diff --git a/assets/docs/html/nav_f.png b/assets/docs/html/nav_f.png
new file mode 100644
index 0000000000000000000000000000000000000000..72a58a529ed3a9ed6aa0c51a79cf207e026deee2
Binary files /dev/null and b/assets/docs/html/nav_f.png differ
diff --git a/assets/docs/html/nav_fd.png b/assets/docs/html/nav_fd.png
new file mode 100644
index 0000000000000000000000000000000000000000..032fbdd4c54f54fa9a2e6423b94ef4b2ebdfaceb
Binary files /dev/null and b/assets/docs/html/nav_fd.png differ
diff --git a/assets/docs/html/nav_g.png b/assets/docs/html/nav_g.png
new file mode 100644
index 0000000000000000000000000000000000000000..2093a237a94f6c83e19ec6e5fd42f7ddabdafa81
Binary files /dev/null and b/assets/docs/html/nav_g.png differ
diff --git a/assets/docs/html/nav_h.png b/assets/docs/html/nav_h.png
new file mode 100644
index 0000000000000000000000000000000000000000..33389b101d9cd9b4c98ad286b5d9c46a6671f650
Binary files /dev/null and b/assets/docs/html/nav_h.png differ
diff --git a/assets/docs/html/nav_hd.png b/assets/docs/html/nav_hd.png
new file mode 100644
index 0000000000000000000000000000000000000000..de80f18ad6488b9990303f267a76fdc83f0ffd80
Binary files /dev/null and b/assets/docs/html/nav_hd.png differ
diff --git a/assets/docs/html/navtree.css b/assets/docs/html/navtree.css
new file mode 100644
index 0000000000000000000000000000000000000000..69211d4a78a62aec03f2253c26eff8e29dd1582c
--- /dev/null
+++ b/assets/docs/html/navtree.css
@@ -0,0 +1,149 @@
+#nav-tree .children_ul {
+  margin:0;
+  padding:4px;
+}
+
+#nav-tree ul {
+  list-style:none outside none;
+  margin:0px;
+  padding:0px;
+}
+
+#nav-tree li {
+  white-space:nowrap;
+  margin:0px;
+  padding:0px;
+}
+
+#nav-tree .plus {
+  margin:0px;
+}
+
+#nav-tree .selected {
+  background-image: url('tab_a.png');
+  background-repeat:repeat-x;
+  color: var(--nav-text-active-color);
+  text-shadow: var(--nav-text-active-shadow);
+}
+
+#nav-tree .selected .arrow {
+  color: var(--nav-arrow-selected-color);
+  text-shadow: none;
+}
+
+#nav-tree img {
+  margin:0px;
+  padding:0px;
+  border:0px;
+  vertical-align: middle;
+}
+
+#nav-tree a {
+  text-decoration:none;
+  padding:0px;
+  margin:0px;
+}
+
+#nav-tree .label {
+  margin:0px;
+  padding:0px;
+  font: 12px var(--font-family-nav);
+}
+
+#nav-tree .label a {
+  padding:2px;
+}
+
+#nav-tree .selected a {
+  text-decoration:none;
+  color:var(--nav-text-active-color);
+}
+
+#nav-tree .children_ul {
+  margin:0px;
+  padding:0px;
+}
+
+#nav-tree .item {
+  margin:0px;
+  padding:0px;
+}
+
+#nav-tree {
+  padding: 0px 0px;
+  font-size:14px;
+  overflow:auto;
+}
+
+#doc-content {
+  overflow:auto;
+  display:block;
+  padding:0px;
+  margin:0px;
+  -webkit-overflow-scrolling : touch; /* iOS 5+ */
+}
+
+#side-nav {
+  padding:0 6px 0 0;
+  margin: 0px;
+  display:block;
+  position: absolute;
+  left: 0px;
+  width: $width;
+  overflow : hidden;
+}
+
+.ui-resizable .ui-resizable-handle {
+  display:block;
+}
+
+.ui-resizable-e {
+  background-image:var(--nav-splitbar-image);
+  background-size:100%;
+  background-repeat:repeat-y;
+  background-attachment: scroll;
+  cursor:ew-resize;
+  height:100%;
+  right:0;
+  top:0;
+  width:6px;
+}
+
+.ui-resizable-handle {
+  display:none;
+  font-size:0.1px;
+  position:absolute;
+  z-index:1;
+}
+
+#nav-tree-contents {
+  margin: 6px 0px 0px 0px;
+}
+
+#nav-tree {
+  background-repeat:repeat-x;
+  background-color: var(--nav-background-color);
+  -webkit-overflow-scrolling : touch; /* iOS 5+ */
+}
+
+#nav-sync {
+  position:absolute;
+  top:5px;
+  right:24px;
+  z-index:0;
+}
+
+#nav-sync img {
+  opacity:0.3;
+}
+
+#nav-sync img:hover {
+  opacity:0.9;
+}
+
+@media print
+{
+  #nav-tree { display: none; }
+  div.ui-resizable-handle { display: none; position: relative; }
+}
+
diff --git a/assets/docs/html/navtree.js b/assets/docs/html/navtree.js
new file mode 100644
index 0000000000000000000000000000000000000000..2d4fa84a55d20fa1f31f3ed0aa50ab4aa018f44f
--- /dev/null
+++ b/assets/docs/html/navtree.js
@@ -0,0 +1,483 @@
+/*
+ @licstart  The following is the entire license notice for the JavaScript code in this file.
+
+ The MIT License (MIT)
+
+ Copyright (C) 1997-2020 by Dimitri van Heesch
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software
+ and associated documentation files (the "Software"), to deal in the Software without restriction,
+ including without limitation the rights to use, copy, modify, merge, publish, distribute,
+ sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in all copies or
+ substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
+ BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+ DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ @licend  The above is the entire license notice for the JavaScript code in this file
+ */
+
+function initNavTree(toroot,relpath) {
+  let navTreeSubIndices = [];
+  const ARROW_DOWN = '&#9660;';
+  const ARROW_RIGHT = '&#9658;';
+  const NAVPATH_COOKIE_NAME = ''+'navpath';
+
+  const getData = function(varName) {
+    const i = varName.lastIndexOf('/');
+    const n = i>=0 ? varName.substring(i+1) : varName;
+    return eval(n.replace(/-/g,'_'));
+  }
+
+  const stripPath = function(uri) {
+    return uri.substring(uri.lastIndexOf('/')+1);
+  }
+
+  const stripPath2 = function(uri) {
+    const i = uri.lastIndexOf('/');
+    const s = uri.substring(i+1);
+    const m = uri.substring(0,i+1).match(/\/d\w\/d\w\w\/$/);
+    return m ? uri.substring(i-6) : s;
+  }
+
+  const hashValue = function() {
+    return $(location).attr('hash').substring(1).replace(/[^\w-]/g,'');
+  }
+
+  const hashUrl = function() {
+    return '#'+hashValue();
+  }
+
+  const pathName = function() {
+    return $(location).attr('pathname').replace(/[^-A-Za-z0-9+&@#/%?=~_|!:,.;()]/g, '');
+  }
+
+  const storeLink = function(link) {
+    if (!$("#nav-sync").hasClass('sync')) {
+      Cookie.writeSetting(NAVPATH_COOKIE_NAME,link,0);
+    }
+  }
+
+  const deleteLink = function() {
+    Cookie.eraseSetting(NAVPATH_COOKIE_NAME);
+  }
+
+  const cachedLink = function() {
+    return Cookie.readSetting(NAVPATH_COOKIE_NAME,'');
+  }
+
+  const getScript = function(scriptName,func) {
+    const head = document.getElementsByTagName("head")[0];
+    const script = document.createElement('script');
+    script.id = scriptName;
+    script.type = 'text/javascript';
+    script.onload = func;
+    script.src = scriptName+'.js';
+    head.appendChild(script);
+  }
+
+  const createIndent = function(o,domNode,node) {
+    let level=-1;
+    let n = node;
+    while (n.parentNode) { level++; n=n.parentNode; }
+    if (node.childrenData) {
+      const imgNode = document.createElement("span");
+      imgNode.className = 'arrow';
+      imgNode.style.paddingLeft=(16*level).toString()+'px';
+      imgNode.innerHTML=ARROW_RIGHT;
+      node.plus_img = imgNode;
+      node.expandToggle = document.createElement("a");
+      node.expandToggle.href = "javascript:void(0)";
+      node.expandToggle.onclick = function() {
+        if (node.expanded) {
+          $(node.getChildrenUL()).slideUp("fast");
+          node.plus_img.innerHTML=ARROW_RIGHT;
+          node.expanded = false;
+        } else {
+          expandNode(o, node, false, true);
+        }
+      }
+      node.expandToggle.appendChild(imgNode);
+      domNode.appendChild(node.expandToggle);
+    } else {
+      let span = document.createElement("span");
+      span.className = 'arrow';
+      span.style.width   = 16*(level+1)+'px';
+      span.innerHTML = '&#160;';
+      domNode.appendChild(span);
+    }
+  }
+
+  let animationInProgress = false;
+
+  const gotoAnchor = function(anchor,aname) {
+    let pos, docContent = $('#doc-content');
+    let ancParent = $(anchor.parent());
+    if (ancParent.hasClass('memItemLeft') || ancParent.hasClass('memtitle')  ||
+        ancParent.hasClass('fieldname')   || ancParent.hasClass('fieldtype') ||
+        ancParent.is(':header')) {
+      pos = ancParent.offset().top;
+    } else if (anchor.position()) {
+      pos = anchor.offset().top;
+    }
+    if (pos) {
+      const dcOffset    = docContent.offset().top;
+      const dcHeight    = docContent.height();
+      const dcScrHeight = docContent[0].scrollHeight
+      const dcScrTop    = docContent.scrollTop();
+      let dist = Math.abs(Math.min(pos-dcOffset,dcScrHeight-dcHeight-dcScrTop));
+      animationInProgress = true;
+      docContent.animate({
+        scrollTop: pos + dcScrTop - dcOffset
+      },Math.max(50,Math.min(500,dist)),function() {
+        animationInProgress=false;
+        if (anchor.parent().attr('class')=='memItemLeft') {
+          let rows = $('.memberdecls tr[class$="'+hashValue()+'"]');
+          glowEffect(rows.children(),300); // member without details
+        } else if (anchor.parent().attr('class')=='fieldname') {
+          glowEffect(anchor.parent().parent(),1000); // enum value
+        } else if (anchor.parent().attr('class')=='fieldtype') {
+          glowEffect(anchor.parent().parent(),1000); // struct field
+        } else if (anchor.parent().is(":header")) {
+          glowEffect(anchor.parent(),1000); // section header
+        } else {
+          glowEffect(anchor.next(),1000); // normal member
+        }
+      });
+    }
+  }
+
+  const newNode = function(o, po, text, link, childrenData, lastNode) {
+    const node = {
+      children     : [],
+      childrenData : childrenData,
+      depth        : po.depth + 1,
+      relpath      : po.relpath,
+      isLast       : lastNode,
+      li           : document.createElement("li"),
+      parentNode   : po,
+      itemDiv      : document.createElement("div"),
+      labelSpan    : document.createElement("span"),
+      label        : document.createTextNode(text),
+      expanded     : false,
+      childrenUL   : null,
+      getChildrenUL : function() {
+        if (!this.childrenUL) {
+          this.childrenUL = document.createElement("ul");
+          this.childrenUL.className = "children_ul";
+          this.childrenUL.style.display = "none";
+          this.li.appendChild(node.childrenUL);
+        }
+        return node.childrenUL;
+      },
+    };
+
+    node.itemDiv.className = "item";
+    node.labelSpan.className = "label";
+    createIndent(o,node.itemDiv,node);
+    node.itemDiv.appendChild(node.labelSpan);
+    node.li.appendChild(node.itemDiv);
+
+    const a = document.createElement("a");
+    node.labelSpan.appendChild(a);
+    po.getChildrenUL().appendChild(node.li);
+    a.appendChild(node.label);
+    if (link) {
+      let url;
+      if (link.substring(0,1)=='^') {
+        url = link.substring(1);
+        link = url;
+      } else {
+        url = node.relpath+link;
+      }
+      a.className = stripPath(link.replace('#',':'));
+      if (link.indexOf('#')!=-1) {
+        const aname = '#'+link.split('#')[1];
+        const srcPage = stripPath(pathName());
+        const targetPage = stripPath(link.split('#')[0]);
+        a.href = srcPage!=targetPage ? url : aname;
+        a.onclick = function() {
+          storeLink(link);
+          aPPar = $(a).parent().parent();
+          if (!aPPar.hasClass('selected')) {
+            $('.item').removeClass('selected');
+            $('.item').removeAttr('id');
+            aPPar.addClass('selected');
+            aPPar.attr('id','selected');
+          }
+          const anchor = $(aname);
+          gotoAnchor(anchor,aname);
+        };
+      } else {
+        a.href = url;
+        a.onclick = () => storeLink(link);
+      }
+    } else if (childrenData != null) {
+      a.className = "nolink";
+      a.href = "javascript:void(0)";
+      a.onclick = node.expandToggle.onclick;
+    }
+    return node;
+  }
+
+  const showRoot = function() {
+    const headerHeight = $("#top").height();
+    const footerHeight = $("#nav-path").height();
+    const windowHeight = $(window).height() - headerHeight - footerHeight;
+    (function() { // retry until we can scroll to the selected item
+      try {
+        const navtree=$('#nav-tree');
+        navtree.scrollTo('#selected',100,{offset:-windowHeight/2});
+      } catch (err) {
+        setTimeout(arguments.callee, 0);
+      }
+    })();
+  }
+
+  const expandNode = function(o, node, imm, setFocus) {
+    if (node.childrenData && !node.expanded) {
+      if (typeof(node.childrenData)==='string') {
+        const varName = node.childrenData;
+        getScript(node.relpath+varName,function() {
+          node.childrenData = getData(varName);
+          expandNode(o, node, imm, setFocus);
+        });
+      } else {
+        if (!node.childrenVisited) {
+          getNode(o, node);
+        }
+        $(node.getChildrenUL()).slideDown("fast");
+        node.plus_img.innerHTML = ARROW_DOWN;
+        node.expanded = true;
+        if (setFocus) {
+          $(node.expandToggle).focus();
+        }
+      }
+    }
+  }
+
+  const glowEffect = function(n,duration) {
+    n.addClass('glow').delay(duration).queue(function(next) {
+      $(this).removeClass('glow');next();
+    });
+  }
+
+  const highlightAnchor = function() {
+    const aname = hashUrl();
+    const anchor = $(aname);
+    gotoAnchor(anchor,aname);
+  }
+
+  const selectAndHighlight = function(hash,n) {
+    let a;
+    if (hash) {
+      const link=stripPath(pathName())+':'+hash.substring(1);
+      a=$('.item a[class$="'+link+'"]');
+    }
+    if (a && a.length) {
+      a.parent().parent().addClass('selected');
+      a.parent().parent().attr('id','selected');
+      highlightAnchor();
+    } else if (n) {
+      $(n.itemDiv).addClass('selected');
+      $(n.itemDiv).attr('id','selected');
+    }
+    let topOffset=5;
+    if ($('#nav-tree-contents .item:first').hasClass('selected')) {
+      topOffset+=25;
+    }
+    $('#nav-sync').css('top',topOffset+'px');
+    showRoot();
+  }
+
+  const showNode = function(o, node, index, hash) {
+    if (node && node.childrenData) {
+      if (typeof(node.childrenData)==='string') {
+        const varName = node.childrenData;
+        getScript(node.relpath+varName,function() {
+          node.childrenData = getData(varName);
+          showNode(o,node,index,hash);
+        });
+      } else {
+        if (!node.childrenVisited) {
+          getNode(o, node);
+        }
+        $(node.getChildrenUL()).css({'display':'block'});
+        node.plus_img.innerHTML = ARROW_DOWN;
+        node.expanded = true;
+        const n = node.children[o.breadcrumbs[index]];
+        if (index+1<o.breadcrumbs.length) {
+          showNode(o,n,index+1,hash);
+        } else if (typeof(n.childrenData)==='string') {
+          const varName = n.childrenData;
+          getScript(n.relpath+varName,function() {
+            n.childrenData = getData(varName);
+            node.expanded=false;
+            showNode(o,node,index,hash); // retry with child node expanded
+          });
+        } else {
+          const rootBase = stripPath(o.toroot.replace(/\..+$/, ''));
+          if (rootBase=="index" || rootBase=="pages" || rootBase=="search") {
+            expandNode(o, n, true, false);
+          }
+          selectAndHighlight(hash,n);
+        }
+      }
+    } else {
+      selectAndHighlight(hash);
+    }
+  }
+
+  const removeToInsertLater = function(element) {
+    const parentNode = element.parentNode;
+    const nextSibling = element.nextSibling;
+    parentNode.removeChild(element);
+    return function() {
+      if (nextSibling) {
+        parentNode.insertBefore(element, nextSibling);
+      } else {
+        parentNode.appendChild(element);
+      }
+    };
+  }
+
+  const getNode = function(o, po) {
+    const insertFunction = removeToInsertLater(po.li);
+    po.childrenVisited = true;
+    const l = po.childrenData.length-1;
+    for (let i in po.childrenData) {
+      const nodeData = po.childrenData[i];
+      po.children[i] = newNode(o, po, nodeData[0], nodeData[1], nodeData[2], i==l);
+    }
+    insertFunction();
+  }
+
+  const gotoNode = function(o,subIndex,root,hash,relpath) {
+    const nti = navTreeSubIndices[subIndex][root+hash];
+    o.breadcrumbs = $.extend(true, [], nti ? nti : navTreeSubIndices[subIndex][root]);
+    if (!o.breadcrumbs && root!=NAVTREE[0][1]) { // fallback: show index
+      navTo(o,NAVTREE[0][1],"",relpath);
+      $('.item').removeClass('selected');
+      $('.item').removeAttr('id');
+    }
+    if (o.breadcrumbs) {
+      o.breadcrumbs.unshift(0); // add 0 for root node
+      showNode(o, o.node, 0, hash);
+    }
+  }
+
+  const navTo = function(o,root,hash,relpath) {
+    const link = cachedLink();
+    if (link) {
+      const parts = link.split('#');
+      root = parts[0];
+      hash = parts.length>1 ? '#'+parts[1].replace(/[^\w-]/g,'') : '';
+    }
+    if (hash.match(/^#l\d+$/)) {
+      const anchor=$('a[name='+hash.substring(1)+']');
+      glowEffect(anchor.parent(),1000); // line number
+      hash=''; // strip line number anchors
+    }
+    const url=root+hash;
+    let i=-1;
+    while (NAVTREEINDEX[i+1]<=url) i++;
+    if (i==-1) { i=0; root=NAVTREE[0][1]; } // fallback: show index
+    if (navTreeSubIndices[i]) {
+      gotoNode(o,i,root,hash,relpath)
+    } else {
+      getScript(relpath+'navtreeindex'+i,function() {
+        navTreeSubIndices[i] = eval('NAVTREEINDEX'+i);
+        if (navTreeSubIndices[i]) {
+          gotoNode(o,i,root,hash,relpath);
+        }
+      });
+    }
+  }
+
+  const showSyncOff = function(n,relpath) {
+    n.html('<img src="'+relpath+'sync_off.png" title="'+SYNCOFFMSG+'"/>');
+  }
+
+  const showSyncOn = function(n,relpath) {
+    n.html('<img src="'+relpath+'sync_on.png" title="'+SYNCONMSG+'"/>');
+  }
+
+  const o = {
+    toroot : toroot,
+    node   : {
+      childrenData  : NAVTREE,
+      children      : [],
+      childrenUL    : document.createElement("ul"),
+      getChildrenUL : function() { return this.childrenUL },
+      li            : document.getElementById("nav-tree-contents"),
+      depth         : 0,
+      relpath       : relpath,
+      expanded      : false,
+      isLast        : true,
+      plus_img      : document.createElement("span"),
+    },
+  };
+  o.node.li.appendChild(o.node.childrenUL);
+  o.node.plus_img.className = 'arrow';
+  o.node.plus_img.innerHTML = ARROW_RIGHT;
+
+  const navSync = $('#nav-sync');
+  if (cachedLink()) {
+    showSyncOff(navSync,relpath);
+    navSync.removeClass('sync');
+  } else {
+    showSyncOn(navSync,relpath);
+  }
+
+  navSync.click(() => {
+    const navSync = $('#nav-sync');
+    if (navSync.hasClass('sync')) {
+      navSync.removeClass('sync');
+      showSyncOff(navSync,relpath);
+      storeLink(stripPath2(pathName())+hashUrl());
+    } else {
+      navSync.addClass('sync');
+      showSyncOn(navSync,relpath);
+      deleteLink();
+    }
+  });
+
+  navTo(o,toroot,hashUrl(),relpath);
+  showRoot();
+
+  $(window).bind('hashchange', () => {
+    if (!animationInProgress) {
+      if (window.location.hash && window.location.hash.length>1) {
+        let a;
+        if ($(location).attr('hash')) {
+          const clslink=stripPath(pathName())+':'+hashValue();
+          a=$('.item a[class$="'+clslink.replace(/</g,'\\3c ')+'"]');
+        }
+        if (a==null || !$(a).parent().parent().hasClass('selected')) {
+          $('.item').removeClass('selected');
+          $('.item').removeAttr('id');
+        }
+        const link=stripPath2(pathName());
+        navTo(o,link,hashUrl(),relpath);
+        } else {
+        $('#doc-content').scrollTop(0);
+        $('.item').removeClass('selected');
+        $('.item').removeAttr('id');
+        navTo(o,toroot,hashUrl(),relpath);
+      }
+    }
+  });
+
+  $("div.toc a[href]").click(function(e) {
+    e.preventDefault();
+    const aname = $(this).attr("href");
+    gotoAnchor($(aname),aname);
+  });
+}
+/* @license-end */
diff --git a/assets/docs/html/navtreedata.js b/assets/docs/html/navtreedata.js
new file mode 100644
index 0000000000000000000000000000000000000000..1092ec68e4dcdf95a6300d9444feaa092dbe5b4a
--- /dev/null
+++ b/assets/docs/html/navtreedata.js
@@ -0,0 +1,50 @@
+/*
+ @licstart  The following is the entire license notice for the JavaScript code in this file.
+
+ The MIT License (MIT)
+
+ Copyright (C) 1997-2020 by Dimitri van Heesch
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software
+ and associated documentation files (the "Software"), to deal in the Software without restriction,
+ including without limitation the rights to use, copy, modify, merge, publish, distribute,
+ sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in all copies or
+ substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
+ BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+ DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ @licend  The above is the entire license notice for the JavaScript code in this file
+*/
+var NAVTREE =
+[
+  [ "Pacman", "index.html", [
+    [ "Классы", "annotated.html", [
+      [ "Классы", "annotated.html", "annotated_dup" ],
+      [ "Алфавитный указатель классов", "classes.html", null ],
+      [ "Иерархия классов", "hierarchy.html", "hierarchy" ],
+      [ "Члены классов", "functions.html", [
+        [ "Указатель", "functions.html", null ],
+        [ "Функции", "functions_func.html", null ],
+        [ "Переменные", "functions_vars.html", null ]
+      ] ]
+    ] ],
+    [ "Файлы", "files.html", [
+      [ "Файлы", "files.html", "files_dup" ]
+    ] ]
+  ] ]
+];
+
+var NAVTREEINDEX =
+[
+"_application_8h_source.html"
+];
+
+var SYNCONMSG = 'нажмите на выключить для синхронизации панелей';
+var SYNCOFFMSG = 'нажмите на включить для синхронизации панелей';
\ No newline at end of file
diff --git a/assets/docs/html/navtreeindex0.js b/assets/docs/html/navtreeindex0.js
new file mode 100644
index 0000000000000000000000000000000000000000..a9c0f2cc84239f8033c8167d1b063737312d708a
--- /dev/null
+++ b/assets/docs/html/navtreeindex0.js
@@ -0,0 +1,140 @@
+var NAVTREEINDEX0 =
+{
+"_application_8h_source.html":[1,0,0,0,0,0],
+"_bob_builder_director_8h_source.html":[1,0,0,0,2,0],
+"_button_8h_source.html":[1,0,0,0,4,0,0,0],
+"_context_8h_source.html":[1,0,0,0,3,0],
+"_game_builders_8h_source.html":[1,0,0,0,2,1],
+"_game_state_8h_source.html":[1,0,0,0,7,0],
+"_i_drawable_8h_source.html":[1,0,0,0,4,3],
+"_i_entity_8h_source.html":[1,0,0,0,4,1,0],
+"_i_game_builder_8h_source.html":[1,0,0,0,2,2],
+"_i_game_event_8h_source.html":[1,0,0,0,5,0],
+"_i_observer_8h_source.html":[1,0,0,0,4,1,1],
+"_i_select_command_8h_source.html":[1,0,0,0,6,0],
+"_i_state_8h_source.html":[1,0,0,0,7,1],
+"_i_window_keeper_8h_source.html":[1,0,0,0,7,2],
+"_maze_8h_source.html":[1,0,0,0,4,2,0],
+"_menu_8h_source.html":[1,0,0,0,4,0,1,0],
+"_menu_in_game_8h_source.html":[1,0,0,0,4,0,1,1],
+"_my_texture_8h_source.html":[1,0,0,0,4,1,2],
+"_pacman_8h_source.html":[1,0,0,0,4,1,3],
+"_select_state_8h_source.html":[1,0,0,0,7,3],
+"_texture___sound_8h_source.html":[1,0,0,0,1,0],
+"_theme_manager_8h_source.html":[1,0,0,0,7,4],
+"annotated.html":[0,0],
+"class_application.html":[0,0,0],
+"class_background_texture.html":[0,0,1],
+"class_button.html":[0,0,2],
+"class_change_state_command.html":[0,0,3],
+"class_choose_button.html":[0,0,4],
+"class_common_builder.html":[0,0,5],
+"class_common_builder.html#a4e45999e05a45814ed25ed3adbbe07e0":[0,0,5,1],
+"class_common_builder.html#aafef8d08b8bfdfccfde6ff56bfb99987":[0,0,5,2],
+"class_common_builder.html#ace9b0433bd9b849970e2b96965818789":[0,0,5,0],
+"class_common_builder.html#ae920c0a91e61aff620096c100e496da0":[0,0,5,3],
+"class_complex_builder.html":[0,0,6],
+"class_complex_builder.html#a93755bc2d5ac20722de6bce3d35aa336":[0,0,6,1],
+"class_complex_builder.html#ac0dfa4956df4c1d1d9a61aa186fc8ac0":[0,0,6,0],
+"class_context_manager.html":[0,0,7],
+"class_context_manager.html#a34dc3ea752a37fe9c54dff33e1c4b138":[0,0,7,2],
+"class_context_manager.html#a54b7081b2e31ec59e3a06ef7b8eeed8e":[0,0,7,1],
+"class_context_manager.html#a690898db09f92499c35fdbf24a7c3821":[0,0,7,0],
+"class_delete_static_entity.html":[0,0,8],
+"class_delete_static_entity.html#aadc4bbbd570e947fca78e222dbfacb43":[0,0,8,0],
+"class_enemy.html":[0,0,9],
+"class_enemy.html#a12c591e7c61ccafe8f0c0a5727434d2f":[0,0,9,0],
+"class_enemy.html#a34d900423f808c057a766daca104c6f6":[0,0,9,1],
+"class_enemy.html#aae122c696ec1c65f90d7625683183a67":[0,0,9,2],
+"class_enemy_texture.html":[0,0,10],
+"class_exit_command.html":[0,0,11],
+"class_exit_state.html":[0,0,12],
+"class_food.html":[0,0,13],
+"class_food.html#a3363e490287b67049c6771f56911d582":[0,0,13,2],
+"class_food.html#a66afb32708f97daf5bca2fae17ca3ad2":[0,0,13,1],
+"class_food.html#a75d4d7f76fd495cc8133302ca9fdc485":[0,0,13,0],
+"class_food_texture.html":[0,0,14],
+"class_game_builder_director.html":[0,0,15],
+"class_game_command.html":[0,0,16],
+"class_game_state.html":[0,0,18],
+"class_game_state.html#a180391dfe966058da0389146534e66d0":[0,0,18,1],
+"class_game_state.html#a2c36ada0cae89f91d956e2c91b070893":[0,0,18,2],
+"class_game_state.html#a3610da76344c5c2cbcc5921f877226dc":[0,0,18,3],
+"class_game_state.html#a90b51ee7191c9fd1fc5e207bc35f1153":[0,0,18,0],
+"class_i_entity.html":[0,0,21],
+"class_i_game_builder.html":[0,0,22],
+"class_i_game_event.html":[0,0,23],
+"class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711":[0,0,23,0],
+"class_i_observer.html":[0,0,24],
+"class_i_room_side.html":[0,0,26],
+"class_i_select_command.html":[0,0,27],
+"class_i_state.html":[0,0,28],
+"class_i_visitable.html":[0,0,31],
+"class_i_visitor.html":[0,0,32],
+"class_i_window_keeper.html":[0,0,33],
+"class_i_window_keeper.html#a46683ebaa51a36a8bb6bb22ed12b83b7":[0,0,33,1],
+"class_i_window_keeper.html#a973ef4befa8fd3b1fbb7e05a2c5904da":[0,0,33,0],
+"class_i_window_keeper.html#aef0780725b6f210bcbeb3b03da2445b8":[0,0,33,2],
+"class_lost_game.html":[0,0,34],
+"class_maze.html":[0,0,35],
+"class_menu.html":[0,0,36],
+"class_menu.html#a4868e5ef14960d420dc79c307d1a78cb":[0,0,36,1],
+"class_menu.html#a9174cfc103dba0ee0613196385691872":[0,0,36,2],
+"class_menu.html#aa9374182bab451e7f7bb8cc02b0db0ee":[0,0,36,0],
+"class_menu_game.html":[0,0,37],
+"class_my_texture.html":[0,0,39],
+"class_pacman.html":[0,0,40],
+"class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2":[0,0,40,0],
+"class_pacman.html#aa957cbb7b0ad1bc1f6ef2aac82423cd8":[0,0,40,1],
+"class_pacman.html#ac4b928c45d22d9814a02b7a621c5ae7c":[0,0,40,3],
+"class_pacman.html#ad41930fae2878425f80e4fea614f3a3d":[0,0,40,2],
+"class_pacman_texture.html":[0,0,41],
+"class_pacman_texture2.html":[0,0,42],
+"class_pass.html":[0,0,43],
+"class_room.html":[0,0,44],
+"class_score_count.html":[0,0,45],
+"class_score_count.html#ac3920f1272e0d1df949eea48b04896c1":[0,0,45,0],
+"class_screamer_composite_event.html":[0,0,46],
+"class_simple_builder.html":[0,0,49],
+"class_simple_builder.html#aa1c6b39ff7d52a0f8cf811ef91d1feaa":[0,0,49,1],
+"class_simple_builder.html#ad02dcc4d85cec356f6169ce938242226":[0,0,49,0],
+"class_theme_manager.html":[0,0,51],
+"class_wall.html":[0,0,52],
+"class_win_game.html":[0,0,53],
+"classes.html":[0,1],
+"dir_059b8d327d09617c411023af730a36c0.html":[1,0,0,0],
+"dir_0620867b96a9d6681889b0cd51382a82.html":[1,0,0,0,4],
+"dir_1ec01c3d118a92a59cb64fdd508b6eff.html":[1,0,0,0,4,0],
+"dir_35461bf8feb23080c5804a15bfe2f4aa.html":[1,0,0,0,5],
+"dir_36512145787243429e2d8387a78e16b9.html":[1,0,0,0,4,1],
+"dir_592f7e24f8e0510a8dca7f53521ecb86.html":[1,0,0,0,3],
+"dir_5ac36eadb58257c11ffd1fe0c36f8d44.html":[1,0,0,0,1],
+"dir_a2a010966b562bcf41b620d047d98a69.html":[1,0,0,0,4,0,1],
+"dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html":[1,0,0],
+"dir_dbd25d32f158f8fe0ac7baf637feb24d.html":[1,0,0,0,4,2],
+"dir_dd6fd865ae52f5fee8c57e83b77289db.html":[1,0,0,0,6],
+"dir_e31f3142f437cc9199f6e7da6a0351a8.html":[1,0,0,0,4,0,0],
+"dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.html":[1,0,0,0,2],
+"dir_eb37150066857c324af7acaa5f9b7e6c.html":[1,0,0,0,7],
+"dir_f4241d05c30ca25826da7a6464eec250.html":[1,0,0,0,0],
+"files.html":[1,0],
+"functions.html":[0,3,0],
+"functions_func.html":[0,3,1],
+"functions_vars.html":[0,3,2],
+"hierarchy.html":[0,2],
+"index.html":[],
+"pages.html":[],
+"struct_game_context.html":[0,0,17],
+"struct_i_drawable.html":[0,0,19],
+"struct_i_dynamic_entity.html":[0,0,20],
+"struct_i_preparable.html":[0,0,25],
+"struct_i_state_manager.html":[0,0,29],
+"struct_i_static_entity.html":[0,0,30],
+"struct_my_assets__one.html":[0,0,38],
+"struct_screamer_event.html":[0,0,47],
+"struct_select_state.html":[0,0,48],
+"struct_select_state.html#a52b35ea72577fb2d5429daf43f9110e7":[0,0,48,1],
+"struct_select_state.html#af3cc640f19d315eb79b7c9c0673a6562":[0,0,48,0],
+"struct_select_state.html#af82dbfa9bc9fc892d55baabc3f5b5243":[0,0,48,2],
+"struct_theme_colors.html":[0,0,50]
+};
diff --git a/assets/docs/html/open.png b/assets/docs/html/open.png
new file mode 100644
index 0000000000000000000000000000000000000000..30f75c7efe2dd0c9e956e35b69777a02751f048b
Binary files /dev/null and b/assets/docs/html/open.png differ
diff --git a/assets/docs/html/plus.svg b/assets/docs/html/plus.svg
new file mode 100644
index 0000000000000000000000000000000000000000..0752016553550e348b92bae6d5cb39c7122f13d8
--- /dev/null
+++ b/assets/docs/html/plus.svg
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg width="12px" height="12px" viewBox="0 0 105.83333 105.83333" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg">
+  <g>
+    <rect style="fill:#808080;stroke-width:0" width="105.83333" height="105.83334" x="4.2409692e-08" y="-1.2701158e-06" ry="0" />
+    <rect style="fill:#fcfcfc;stroke-width:0" width="79.375" height="79.375" x="13.229166" y="13.229166" />
+    <rect style="fill:#808080;stroke-width:0" width="52.916668" height="15.874998" x="26.458332" y="44.979168" />
+    <rect style="fill:#808080;stroke-width:0" width="15.874998" height="52.916668" x="44.979168" y="26.458332" />
+  </g>
+</svg>
diff --git a/assets/docs/html/plusd.svg b/assets/docs/html/plusd.svg
new file mode 100644
index 0000000000000000000000000000000000000000..0c65bfe946d2340fd759123fb4e0c6d557871efd
--- /dev/null
+++ b/assets/docs/html/plusd.svg
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg width="12px" height="12px" viewBox="0 0 105.83333 105.83333" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg">
+  <g>
+    <rect style="fill:#808080;stroke-width:0" width="105.83333" height="105.83334" x="4.2409692e-08" y="-1.2701158e-06" ry="0" />
+    <rect style="fill:#000000;stroke-width:0" width="79.375" height="79.375" x="13.229166" y="13.229166" />
+    <rect style="fill:#808080;stroke-width:0" width="52.916668" height="15.874998" x="26.458332" y="44.979168" />
+    <rect style="fill:#808080;stroke-width:0" width="15.874998" height="52.916668" x="44.979168" y="26.458332" />
+  </g>
+</svg>
diff --git a/assets/docs/html/resize.js b/assets/docs/html/resize.js
new file mode 100644
index 0000000000000000000000000000000000000000..178d03bcb80bad335d0ccbcd63241fefd66c334e
--- /dev/null
+++ b/assets/docs/html/resize.js
@@ -0,0 +1,147 @@
+/*
+ @licstart  The following is the entire license notice for the JavaScript code in this file.
+
+ The MIT License (MIT)
+
+ Copyright (C) 1997-2020 by Dimitri van Heesch
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software
+ and associated documentation files (the "Software"), to deal in the Software without restriction,
+ including without limitation the rights to use, copy, modify, merge, publish, distribute,
+ sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in all copies or
+ substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
+ BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+ DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ @licend  The above is the entire license notice for the JavaScript code in this file
+ */
+
+function initResizable(treeview) {
+  let sidenav,navtree,content,header,footer,barWidth=6;
+  const RESIZE_COOKIE_NAME = ''+'width';
+
+  function resizeWidth() {
+    const sidenavWidth = $(sidenav).outerWidth();
+    content.css({marginLeft:parseInt(sidenavWidth)+"px"});
+    if (typeof page_layout!=='undefined' && page_layout==1) {
+      footer.css({marginLeft:parseInt(sidenavWidth)+"px"});
+    }
+    Cookie.writeSetting(RESIZE_COOKIE_NAME,sidenavWidth-barWidth);
+  }
+
+  function restoreWidth(navWidth) {
+    content.css({marginLeft:parseInt(navWidth)+barWidth+"px"});
+    if (typeof page_layout!=='undefined' && page_layout==1) {
+      footer.css({marginLeft:parseInt(navWidth)+barWidth+"px"});
+    }
+    sidenav.css({width:navWidth + "px"});
+  }
+
+  function resizeHeight(treeview) {
+    const headerHeight = header.outerHeight();
+    const windowHeight = $(window).height();
+    let contentHeight;
+    if (treeview)
+    {
+      const footerHeight = footer.outerHeight();
+      let navtreeHeight,sideNavHeight;
+      if (typeof page_layout==='undefined' || page_layout==0) { /* DISABLE_INDEX=NO */
+        contentHeight = windowHeight - headerHeight - footerHeight;
+        navtreeHeight = contentHeight;
+        sideNavHeight = contentHeight;
+      } else if (page_layout==1) { /* DISABLE_INDEX=YES */
+        contentHeight = windowHeight - footerHeight;
+        navtreeHeight = windowHeight - headerHeight;
+        sideNavHeight = windowHeight;
+      }
+      navtree.css({height:navtreeHeight + "px"});
+      sidenav.css({height:sideNavHeight + "px"});
+    }
+    else
+    {
+      contentHeight = windowHeight - headerHeight;
+    }
+    content.css({height:contentHeight + "px"});
+    if (location.hash.slice(1)) {
+      (document.getElementById(location.hash.slice(1))||document.body).scrollIntoView();
+    }
+  }
+
+  function collapseExpand() {
+    let newWidth;
+    if (sidenav.width()>0) {
+      newWidth=0;
+    } else {
+      const width = Cookie.readSetting(RESIZE_COOKIE_NAME,250);
+      newWidth = (width>250 && width<$(window).width()) ? width : 250;
+    }
+    restoreWidth(newWidth);
+    const sidenavWidth = $(sidenav).outerWidth();
+    Cookie.writeSetting(RESIZE_COOKIE_NAME,sidenavWidth-barWidth);
+  }
+
+  header  = $("#top");
+  content = $("#doc-content");
+  footer  = $("#nav-path");
+  sidenav = $("#side-nav");
+  if (!treeview) {
+//    title   = $("#titlearea");
+//    titleH  = $(title).height();
+//    let animating = false;
+//    content.on("scroll", function() {
+//      slideOpts = { duration: 200,
+//                    step: function() {
+//                        contentHeight = $(window).height() - header.outerHeight();
+//                        content.css({ height : contentHeight + "px" });
+//                      },
+//                    done: function() { animating=false; }
+//                  };
+//      if (content.scrollTop()>titleH && title.css('display')!='none' && !animating) {
+//        title.slideUp(slideOpts);
+//        animating=true;
+//      } else if (content.scrollTop()<=titleH && title.css('display')=='none' && !animating) {
+//        title.slideDown(slideOpts);
+//        animating=true;
+//      }
+//    });
+  } else {
+    navtree = $("#nav-tree");
+    $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } });
+    $(sidenav).resizable({ minWidth: 0 });
+  }
+  $(window).resize(function() { resizeHeight(treeview); });
+  if (treeview)
+  {
+    const device = navigator.userAgent.toLowerCase();
+    const touch_device = device.match(/(iphone|ipod|ipad|android)/);
+    if (touch_device) { /* wider split bar for touch only devices */
+      $(sidenav).css({ paddingRight:'20px' });
+      $('.ui-resizable-e').css({ width:'20px' });
+      $('#nav-sync').css({ right:'34px' });
+      barWidth=20;
+    }
+    const width = Cookie.readSetting(RESIZE_COOKIE_NAME,250);
+    if (width) { restoreWidth(width); } else { resizeWidth(); }
+  }
+  resizeHeight(treeview);
+  const url = location.href;
+  const i=url.indexOf("#");
+  if (i>=0) window.location.hash=url.substr(i);
+  const _preventDefault = function(evt) { evt.preventDefault(); };
+  if (treeview)
+  {
+    $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault);
+    $(".ui-resizable-handle").dblclick(collapseExpand);
+    // workaround for firefox
+    $("body").css({overflow: "hidden"});
+  }
+  $(window).on('load',function() { resizeHeight(treeview); });
+}
+/* @license-end */
diff --git a/assets/docs/html/search/all_0.js b/assets/docs/html/search/all_0.js
new file mode 100644
index 0000000000000000000000000000000000000000..1d553d95d73d0cb359a24df8eda8f033925c7ae7
--- /dev/null
+++ b/assets/docs/html/search/all_0.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['accept_0',['accept',['../class_enemy.html#a12c591e7c61ccafe8f0c0a5727434d2f',1,'Enemy::accept()'],['../class_food.html#a66afb32708f97daf5bca2fae17ca3ad2',1,'Food::accept()']]],
+  ['action_1',['action',['../class_enemy.html#a34d900423f808c057a766daca104c6f6',1,'Enemy']]],
+  ['application_2',['Application',['../class_application.html',1,'']]]
+];
diff --git a/assets/docs/html/search/all_1.js b/assets/docs/html/search/all_1.js
new file mode 100644
index 0000000000000000000000000000000000000000..e95f74ed64b5ea941d4e2afbd22258b821b830a5
--- /dev/null
+++ b/assets/docs/html/search/all_1.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['backgroundtexture_0',['BackgroundTexture',['../class_background_texture.html',1,'']]],
+  ['button_1',['Button',['../class_button.html',1,'']]]
+];
diff --git a/assets/docs/html/search/all_10.js b/assets/docs/html/search/all_10.js
new file mode 100644
index 0000000000000000000000000000000000000000..95f37f8fde68d03fde4d8e87769ebac4ce0adb78
--- /dev/null
+++ b/assets/docs/html/search/all_10.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['update_0',['update',['../class_game_state.html#a3610da76344c5c2cbcc5921f877226dc',1,'GameState::update()'],['../class_i_window_keeper.html#a46683ebaa51a36a8bb6bb22ed12b83b7',1,'IWindowKeeper::update()'],['../struct_select_state.html#af82dbfa9bc9fc892d55baabc3f5b5243',1,'SelectState::update()']]]
+];
diff --git a/assets/docs/html/search/all_11.js b/assets/docs/html/search/all_11.js
new file mode 100644
index 0000000000000000000000000000000000000000..e4150b272095321dbd37b221c4e8f7d429ec0ad1
--- /dev/null
+++ b/assets/docs/html/search/all_11.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['visit_0',['visit',['../class_pacman.html#ac4b928c45d22d9814a02b7a621c5ae7c',1,'Pacman']]]
+];
diff --git a/assets/docs/html/search/all_12.js b/assets/docs/html/search/all_12.js
new file mode 100644
index 0000000000000000000000000000000000000000..5ab0f9b8cd8946c8d77bb203959fa427019abc8f
--- /dev/null
+++ b/assets/docs/html/search/all_12.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['wall_0',['Wall',['../class_wall.html',1,'']]],
+  ['wingame_1',['WinGame',['../class_win_game.html',1,'']]]
+];
diff --git a/assets/docs/html/search/all_13.js b/assets/docs/html/search/all_13.js
new file mode 100644
index 0000000000000000000000000000000000000000..393e79f4a57b3ebd050db7ddf2473e0f2697b432
--- /dev/null
+++ b/assets/docs/html/search/all_13.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['_7eigameevent_0',['~IGameEvent',['../class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711',1,'IGameEvent']]]
+];
diff --git a/assets/docs/html/search/all_2.js b/assets/docs/html/search/all_2.js
new file mode 100644
index 0000000000000000000000000000000000000000..064c777295b9612edb1b17c74af520c023fabea2
--- /dev/null
+++ b/assets/docs/html/search/all_2.js
@@ -0,0 +1,12 @@
+var searchData=
+[
+  ['changestatecommand_0',['ChangeStateCommand',['../class_change_state_command.html',1,'']]],
+  ['choosebutton_1',['ChooseButton',['../class_choose_button.html',1,'']]],
+  ['clone_2',['clone',['../class_enemy.html#aae122c696ec1c65f90d7625683183a67',1,'Enemy::clone()'],['../class_food.html#a3363e490287b67049c6771f56911d582',1,'Food::clone()']]],
+  ['commonbuilder_3',['CommonBuilder',['../class_common_builder.html',1,'']]],
+  ['complexbuilder_4',['ComplexBuilder',['../class_complex_builder.html',1,'']]],
+  ['contextmanager_5',['ContextManager',['../class_context_manager.html',1,'']]],
+  ['create_5fcontext_6',['create_context',['../class_common_builder.html#ace9b0433bd9b849970e2b96965818789',1,'CommonBuilder']]],
+  ['create_5frooms_7',['create_rooms',['../class_simple_builder.html#ad02dcc4d85cec356f6169ce938242226',1,'SimpleBuilder::create_rooms()'],['../class_complex_builder.html#ac0dfa4956df4c1d1d9a61aa186fc8ac0',1,'ComplexBuilder::create_rooms()']]],
+  ['create_5fstate_8',['create_state',['../class_common_builder.html#a4e45999e05a45814ed25ed3adbbe07e0',1,'CommonBuilder']]]
+];
diff --git a/assets/docs/html/search/all_3.js b/assets/docs/html/search/all_3.js
new file mode 100644
index 0000000000000000000000000000000000000000..6dda71e51b29a28b5775c4dadf10366afdb76ab5
--- /dev/null
+++ b/assets/docs/html/search/all_3.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['deletestaticentity_0',['DeleteStaticEntity',['../class_delete_static_entity.html',1,'']]],
+  ['draw_5finto_1',['draw_into',['../class_menu.html#a4868e5ef14960d420dc79c307d1a78cb',1,'Menu']]]
+];
diff --git a/assets/docs/html/search/all_4.js b/assets/docs/html/search/all_4.js
new file mode 100644
index 0000000000000000000000000000000000000000..c07dc5f02db8c04fe61b881f7188b6c114fde03e
--- /dev/null
+++ b/assets/docs/html/search/all_4.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+  ['enemy_0',['Enemy',['../class_enemy.html',1,'']]],
+  ['enemytexture_1',['EnemyTexture',['../class_enemy_texture.html',1,'']]],
+  ['event_5fhandling_2',['event_handling',['../class_game_state.html#a180391dfe966058da0389146534e66d0',1,'GameState']]],
+  ['exitcommand_3',['ExitCommand',['../class_exit_command.html',1,'']]],
+  ['exitstate_4',['ExitState',['../class_exit_state.html',1,'']]]
+];
diff --git a/assets/docs/html/search/all_5.js b/assets/docs/html/search/all_5.js
new file mode 100644
index 0000000000000000000000000000000000000000..53d4a5ce9e4eb79b7ebb1ccb3faa2bdac3fa7fb2
--- /dev/null
+++ b/assets/docs/html/search/all_5.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['food_0',['Food',['../class_food.html',1,'Food'],['../class_food.html#a75d4d7f76fd495cc8133302ca9fdc485',1,'Food::Food()']]],
+  ['foodtexture_1',['FoodTexture',['../class_food_texture.html',1,'']]]
+];
diff --git a/assets/docs/html/search/all_6.js b/assets/docs/html/search/all_6.js
new file mode 100644
index 0000000000000000000000000000000000000000..66616274f15bb5af8ce92f291b89ee4053b01cd8
--- /dev/null
+++ b/assets/docs/html/search/all_6.js
@@ -0,0 +1,9 @@
+var searchData=
+[
+  ['gamebuilderdirector_0',['GameBuilderDirector',['../class_game_builder_director.html',1,'']]],
+  ['gamecommand_1',['GameCommand',['../class_game_command.html',1,'']]],
+  ['gamecontext_2',['GameContext',['../struct_game_context.html',1,'']]],
+  ['gamestate_3',['GameState',['../class_game_state.html',1,'GameState'],['../class_game_state.html#a90b51ee7191c9fd1fc5e207bc35f1153',1,'GameState::GameState()']]],
+  ['get_5fcurrent_5fcontext_4',['get_current_context',['../class_context_manager.html#a690898db09f92499c35fdbf24a7c3821',1,'ContextManager']]],
+  ['get_5fgame_5',['get_game',['../class_common_builder.html#aafef8d08b8bfdfccfde6ff56bfb99987',1,'CommonBuilder']]]
+];
diff --git a/assets/docs/html/search/all_7.js b/assets/docs/html/search/all_7.js
new file mode 100644
index 0000000000000000000000000000000000000000..39076b186917fd50b3ed2ca93c1765d9b74760e7
--- /dev/null
+++ b/assets/docs/html/search/all_7.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['handle_0',['handle',['../class_delete_static_entity.html#aadc4bbbd570e947fca78e222dbfacb43',1,'DeleteStaticEntity']]]
+];
diff --git a/assets/docs/html/search/all_8.js b/assets/docs/html/search/all_8.js
new file mode 100644
index 0000000000000000000000000000000000000000..f59430f913d229a4d6251c25917b4b6609f06111
--- /dev/null
+++ b/assets/docs/html/search/all_8.js
@@ -0,0 +1,18 @@
+var searchData=
+[
+  ['idrawable_0',['IDrawable',['../struct_i_drawable.html',1,'']]],
+  ['idynamicentity_1',['IDynamicEntity',['../struct_i_dynamic_entity.html',1,'']]],
+  ['ientity_2',['IEntity',['../class_i_entity.html',1,'']]],
+  ['igamebuilder_3',['IGameBuilder',['../class_i_game_builder.html',1,'']]],
+  ['igameevent_4',['IGameEvent',['../class_i_game_event.html',1,'']]],
+  ['iobserver_5',['IObserver',['../class_i_observer.html',1,'']]],
+  ['ipreparable_6',['IPreparable',['../struct_i_preparable.html',1,'']]],
+  ['iroomside_7',['IRoomSide',['../class_i_room_side.html',1,'']]],
+  ['iselectcommand_8',['ISelectCommand',['../class_i_select_command.html',1,'']]],
+  ['istate_9',['IState',['../class_i_state.html',1,'']]],
+  ['istatemanager_10',['IStateManager',['../struct_i_state_manager.html',1,'']]],
+  ['istaticentity_11',['IStaticEntity',['../struct_i_static_entity.html',1,'']]],
+  ['ivisitable_12',['IVisitable',['../class_i_visitable.html',1,'']]],
+  ['ivisitor_13',['IVisitor',['../class_i_visitor.html',1,'']]],
+  ['iwindowkeeper_14',['IWindowKeeper',['../class_i_window_keeper.html',1,'']]]
+];
diff --git a/assets/docs/html/search/all_9.js b/assets/docs/html/search/all_9.js
new file mode 100644
index 0000000000000000000000000000000000000000..181e7788e6a534273b0110ef30f827eb632fc82b
--- /dev/null
+++ b/assets/docs/html/search/all_9.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['lostgame_0',['LostGame',['../class_lost_game.html',1,'']]]
+];
diff --git a/assets/docs/html/search/all_a.js b/assets/docs/html/search/all_a.js
new file mode 100644
index 0000000000000000000000000000000000000000..f9143e01657c7e7331b893ca8ec24567c5c0b770
--- /dev/null
+++ b/assets/docs/html/search/all_a.js
@@ -0,0 +1,10 @@
+var searchData=
+[
+  ['m_5fwindow_0',['m_window',['../class_i_window_keeper.html#aef0780725b6f210bcbeb3b03da2445b8',1,'IWindowKeeper']]],
+  ['maze_1',['Maze',['../class_maze.html',1,'']]],
+  ['menu_2',['Menu',['../class_menu.html',1,'Menu'],['../class_menu.html#aa9374182bab451e7f7bb8cc02b0db0ee',1,'Menu::Menu()']]],
+  ['menugame_3',['MenuGame',['../class_menu_game.html',1,'']]],
+  ['move_4',['move',['../class_pacman.html#aa957cbb7b0ad1bc1f6ef2aac82423cd8',1,'Pacman']]],
+  ['myassets_5fone_5',['MyAssets_one',['../struct_my_assets__one.html',1,'']]],
+  ['mytexture_6',['MyTexture',['../class_my_texture.html',1,'']]]
+];
diff --git a/assets/docs/html/search/all_b.js b/assets/docs/html/search/all_b.js
new file mode 100644
index 0000000000000000000000000000000000000000..1f21ac862c3438df9ce7e3ac02b6dc30c58d6a3e
--- /dev/null
+++ b/assets/docs/html/search/all_b.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['on_5fnotify_0',['on_notify',['../class_score_count.html#ac3920f1272e0d1df949eea48b04896c1',1,'ScoreCount']]]
+];
diff --git a/assets/docs/html/search/all_c.js b/assets/docs/html/search/all_c.js
new file mode 100644
index 0000000000000000000000000000000000000000..5b6d73e03191a0b784b1f7551a9f181de2fb182a
--- /dev/null
+++ b/assets/docs/html/search/all_c.js
@@ -0,0 +1,9 @@
+var searchData=
+[
+  ['pacman_0',['Pacman',['../class_pacman.html',1,'Pacman'],['../class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2',1,'Pacman::Pacman()']]],
+  ['pacmantexture_1',['PacmanTexture',['../class_pacman_texture.html',1,'']]],
+  ['pacmantexture2_2',['PacmanTexture2',['../class_pacman_texture2.html',1,'']]],
+  ['pass_3',['Pass',['../class_pass.html',1,'']]],
+  ['prepare_5ffor_5fdrawing_4',['prepare_for_drawing',['../class_pacman.html#ad41930fae2878425f80e4fea614f3a3d',1,'Pacman']]],
+  ['process_5fmouse_5',['process_mouse',['../class_menu.html#a9174cfc103dba0ee0613196385691872',1,'Menu']]]
+];
diff --git a/assets/docs/html/search/all_d.js b/assets/docs/html/search/all_d.js
new file mode 100644
index 0000000000000000000000000000000000000000..f49290327503998f433f214ba9dff04d9d736a67
--- /dev/null
+++ b/assets/docs/html/search/all_d.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+  ['render_0',['render',['../class_game_state.html#a2c36ada0cae89f91d956e2c91b070893',1,'GameState::render()'],['../class_i_window_keeper.html#a973ef4befa8fd3b1fbb7e05a2c5904da',1,'IWindowKeeper::render()'],['../struct_select_state.html#a52b35ea72577fb2d5429daf43f9110e7',1,'SelectState::render()']]],
+  ['reset_1',['reset',['../class_context_manager.html#a54b7081b2e31ec59e3a06ef7b8eeed8e',1,'ContextManager']]],
+  ['restore_5fprevious_5fcontext_2',['restore_previous_context',['../class_context_manager.html#a34dc3ea752a37fe9c54dff33e1c4b138',1,'ContextManager']]],
+  ['room_3',['Room',['../class_room.html',1,'']]]
+];
diff --git a/assets/docs/html/search/all_e.js b/assets/docs/html/search/all_e.js
new file mode 100644
index 0000000000000000000000000000000000000000..a65a7dd02af52ce10867575e6e1eb011b999165f
--- /dev/null
+++ b/assets/docs/html/search/all_e.js
@@ -0,0 +1,10 @@
+var searchData=
+[
+  ['scorecount_0',['ScoreCount',['../class_score_count.html',1,'']]],
+  ['screamercompositeevent_1',['ScreamerCompositeEvent',['../class_screamer_composite_event.html',1,'']]],
+  ['screamerevent_2',['ScreamerEvent',['../struct_screamer_event.html',1,'']]],
+  ['selectstate_3',['SelectState',['../struct_select_state.html',1,'SelectState'],['../struct_select_state.html#af3cc640f19d315eb79b7c9c0673a6562',1,'SelectState::SelectState()']]],
+  ['set_5fall_5fto_5fstate_4',['set_all_to_state',['../class_common_builder.html#ae920c0a91e61aff620096c100e496da0',1,'CommonBuilder']]],
+  ['set_5frooms_5fsides_5',['set_rooms_sides',['../class_simple_builder.html#aa1c6b39ff7d52a0f8cf811ef91d1feaa',1,'SimpleBuilder::set_rooms_sides()'],['../class_complex_builder.html#a93755bc2d5ac20722de6bce3d35aa336',1,'ComplexBuilder::set_rooms_sides()']]],
+  ['simplebuilder_6',['SimpleBuilder',['../class_simple_builder.html',1,'']]]
+];
diff --git a/assets/docs/html/search/all_f.js b/assets/docs/html/search/all_f.js
new file mode 100644
index 0000000000000000000000000000000000000000..60f3b694eb47dcab104f96ef5f059de6c58b4bc5
--- /dev/null
+++ b/assets/docs/html/search/all_f.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['themecolors_0',['ThemeColors',['../struct_theme_colors.html',1,'']]],
+  ['thememanager_1',['ThemeManager',['../class_theme_manager.html',1,'']]]
+];
diff --git a/assets/docs/html/search/classes_0.js b/assets/docs/html/search/classes_0.js
new file mode 100644
index 0000000000000000000000000000000000000000..398246fd8863884b0cbdda82f2d421057793465c
--- /dev/null
+++ b/assets/docs/html/search/classes_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['application_0',['Application',['../class_application.html',1,'']]]
+];
diff --git a/assets/docs/html/search/classes_1.js b/assets/docs/html/search/classes_1.js
new file mode 100644
index 0000000000000000000000000000000000000000..e95f74ed64b5ea941d4e2afbd22258b821b830a5
--- /dev/null
+++ b/assets/docs/html/search/classes_1.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['backgroundtexture_0',['BackgroundTexture',['../class_background_texture.html',1,'']]],
+  ['button_1',['Button',['../class_button.html',1,'']]]
+];
diff --git a/assets/docs/html/search/classes_2.js b/assets/docs/html/search/classes_2.js
new file mode 100644
index 0000000000000000000000000000000000000000..254c0faf351328450179861def54c5475674cc41
--- /dev/null
+++ b/assets/docs/html/search/classes_2.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+  ['changestatecommand_0',['ChangeStateCommand',['../class_change_state_command.html',1,'']]],
+  ['choosebutton_1',['ChooseButton',['../class_choose_button.html',1,'']]],
+  ['commonbuilder_2',['CommonBuilder',['../class_common_builder.html',1,'']]],
+  ['complexbuilder_3',['ComplexBuilder',['../class_complex_builder.html',1,'']]],
+  ['contextmanager_4',['ContextManager',['../class_context_manager.html',1,'']]]
+];
diff --git a/assets/docs/html/search/classes_3.js b/assets/docs/html/search/classes_3.js
new file mode 100644
index 0000000000000000000000000000000000000000..0fbb8abb1d9fb654cde60ff8371fe6afba95d822
--- /dev/null
+++ b/assets/docs/html/search/classes_3.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['deletestaticentity_0',['DeleteStaticEntity',['../class_delete_static_entity.html',1,'']]]
+];
diff --git a/assets/docs/html/search/classes_4.js b/assets/docs/html/search/classes_4.js
new file mode 100644
index 0000000000000000000000000000000000000000..673689c99eeeed24a754f71a8ed989eec84d86d0
--- /dev/null
+++ b/assets/docs/html/search/classes_4.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+  ['enemy_0',['Enemy',['../class_enemy.html',1,'']]],
+  ['enemytexture_1',['EnemyTexture',['../class_enemy_texture.html',1,'']]],
+  ['exitcommand_2',['ExitCommand',['../class_exit_command.html',1,'']]],
+  ['exitstate_3',['ExitState',['../class_exit_state.html',1,'']]]
+];
diff --git a/assets/docs/html/search/classes_5.js b/assets/docs/html/search/classes_5.js
new file mode 100644
index 0000000000000000000000000000000000000000..187fee0162f84256adc85b87812e68c47b87fa09
--- /dev/null
+++ b/assets/docs/html/search/classes_5.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['food_0',['Food',['../class_food.html',1,'']]],
+  ['foodtexture_1',['FoodTexture',['../class_food_texture.html',1,'']]]
+];
diff --git a/assets/docs/html/search/classes_6.js b/assets/docs/html/search/classes_6.js
new file mode 100644
index 0000000000000000000000000000000000000000..e7f04b34136af4f303fd88e679d57f61f7076464
--- /dev/null
+++ b/assets/docs/html/search/classes_6.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+  ['gamebuilderdirector_0',['GameBuilderDirector',['../class_game_builder_director.html',1,'']]],
+  ['gamecommand_1',['GameCommand',['../class_game_command.html',1,'']]],
+  ['gamecontext_2',['GameContext',['../struct_game_context.html',1,'']]],
+  ['gamestate_3',['GameState',['../class_game_state.html',1,'']]]
+];
diff --git a/assets/docs/html/search/classes_7.js b/assets/docs/html/search/classes_7.js
new file mode 100644
index 0000000000000000000000000000000000000000..f59430f913d229a4d6251c25917b4b6609f06111
--- /dev/null
+++ b/assets/docs/html/search/classes_7.js
@@ -0,0 +1,18 @@
+var searchData=
+[
+  ['idrawable_0',['IDrawable',['../struct_i_drawable.html',1,'']]],
+  ['idynamicentity_1',['IDynamicEntity',['../struct_i_dynamic_entity.html',1,'']]],
+  ['ientity_2',['IEntity',['../class_i_entity.html',1,'']]],
+  ['igamebuilder_3',['IGameBuilder',['../class_i_game_builder.html',1,'']]],
+  ['igameevent_4',['IGameEvent',['../class_i_game_event.html',1,'']]],
+  ['iobserver_5',['IObserver',['../class_i_observer.html',1,'']]],
+  ['ipreparable_6',['IPreparable',['../struct_i_preparable.html',1,'']]],
+  ['iroomside_7',['IRoomSide',['../class_i_room_side.html',1,'']]],
+  ['iselectcommand_8',['ISelectCommand',['../class_i_select_command.html',1,'']]],
+  ['istate_9',['IState',['../class_i_state.html',1,'']]],
+  ['istatemanager_10',['IStateManager',['../struct_i_state_manager.html',1,'']]],
+  ['istaticentity_11',['IStaticEntity',['../struct_i_static_entity.html',1,'']]],
+  ['ivisitable_12',['IVisitable',['../class_i_visitable.html',1,'']]],
+  ['ivisitor_13',['IVisitor',['../class_i_visitor.html',1,'']]],
+  ['iwindowkeeper_14',['IWindowKeeper',['../class_i_window_keeper.html',1,'']]]
+];
diff --git a/assets/docs/html/search/classes_8.js b/assets/docs/html/search/classes_8.js
new file mode 100644
index 0000000000000000000000000000000000000000..181e7788e6a534273b0110ef30f827eb632fc82b
--- /dev/null
+++ b/assets/docs/html/search/classes_8.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['lostgame_0',['LostGame',['../class_lost_game.html',1,'']]]
+];
diff --git a/assets/docs/html/search/classes_9.js b/assets/docs/html/search/classes_9.js
new file mode 100644
index 0000000000000000000000000000000000000000..fbde3d3dd54321d91cdee14e68dfa8dbb6242f3d
--- /dev/null
+++ b/assets/docs/html/search/classes_9.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+  ['maze_0',['Maze',['../class_maze.html',1,'']]],
+  ['menu_1',['Menu',['../class_menu.html',1,'']]],
+  ['menugame_2',['MenuGame',['../class_menu_game.html',1,'']]],
+  ['myassets_5fone_3',['MyAssets_one',['../struct_my_assets__one.html',1,'']]],
+  ['mytexture_4',['MyTexture',['../class_my_texture.html',1,'']]]
+];
diff --git a/assets/docs/html/search/classes_a.js b/assets/docs/html/search/classes_a.js
new file mode 100644
index 0000000000000000000000000000000000000000..ef9350f4fb46af80eb49c38870ead0b2ed1424ac
--- /dev/null
+++ b/assets/docs/html/search/classes_a.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+  ['pacman_0',['Pacman',['../class_pacman.html',1,'']]],
+  ['pacmantexture_1',['PacmanTexture',['../class_pacman_texture.html',1,'']]],
+  ['pacmantexture2_2',['PacmanTexture2',['../class_pacman_texture2.html',1,'']]],
+  ['pass_3',['Pass',['../class_pass.html',1,'']]]
+];
diff --git a/assets/docs/html/search/classes_b.js b/assets/docs/html/search/classes_b.js
new file mode 100644
index 0000000000000000000000000000000000000000..bc85167628e4381405214426b667e00d373f14fa
--- /dev/null
+++ b/assets/docs/html/search/classes_b.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['room_0',['Room',['../class_room.html',1,'']]]
+];
diff --git a/assets/docs/html/search/classes_c.js b/assets/docs/html/search/classes_c.js
new file mode 100644
index 0000000000000000000000000000000000000000..b79cee8461727bacf05f35e2ec3c1f278ab1e9ed
--- /dev/null
+++ b/assets/docs/html/search/classes_c.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+  ['scorecount_0',['ScoreCount',['../class_score_count.html',1,'']]],
+  ['screamercompositeevent_1',['ScreamerCompositeEvent',['../class_screamer_composite_event.html',1,'']]],
+  ['screamerevent_2',['ScreamerEvent',['../struct_screamer_event.html',1,'']]],
+  ['selectstate_3',['SelectState',['../struct_select_state.html',1,'']]],
+  ['simplebuilder_4',['SimpleBuilder',['../class_simple_builder.html',1,'']]]
+];
diff --git a/assets/docs/html/search/classes_d.js b/assets/docs/html/search/classes_d.js
new file mode 100644
index 0000000000000000000000000000000000000000..60f3b694eb47dcab104f96ef5f059de6c58b4bc5
--- /dev/null
+++ b/assets/docs/html/search/classes_d.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['themecolors_0',['ThemeColors',['../struct_theme_colors.html',1,'']]],
+  ['thememanager_1',['ThemeManager',['../class_theme_manager.html',1,'']]]
+];
diff --git a/assets/docs/html/search/classes_e.js b/assets/docs/html/search/classes_e.js
new file mode 100644
index 0000000000000000000000000000000000000000..5ab0f9b8cd8946c8d77bb203959fa427019abc8f
--- /dev/null
+++ b/assets/docs/html/search/classes_e.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['wall_0',['Wall',['../class_wall.html',1,'']]],
+  ['wingame_1',['WinGame',['../class_win_game.html',1,'']]]
+];
diff --git a/assets/docs/html/search/close.svg b/assets/docs/html/search/close.svg
new file mode 100644
index 0000000000000000000000000000000000000000..337d6cc13298b861a04a41f0a1003a5c9b18c8ab
--- /dev/null
+++ b/assets/docs/html/search/close.svg
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+ "https://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   viewBox="0 0 11 11"
+   height="11"
+   width="11"
+   id="svg2"
+   version="1.1">
+  <defs
+     id="defs6" />
+  <path
+     id="path12"
+     d="M 5.5 0.5 A 5 5 0 0 0 0.5 5.5 A 5 5 0 0 0 5.5 10.5 A 5 5 0 0 0 10.5 5.5 A 5 5 0 0 0 5.5 0.5 z M 3.5820312 3 A 0.58291923 0.58291923 0 0 1 4 3.1757812 L 5.5 4.6757812 L 7 3.1757812 A 0.58291923 0.58291923 0 0 1 7.4003906 3 A 0.58291923 0.58291923 0 0 1 7.8242188 4 L 6.3242188 5.5 L 7.8242188 7 A 0.58291923 0.58291923 0 1 1 7 7.8242188 L 5.5 6.3242188 L 4 7.8242188 A 0.58291923 0.58291923 0 1 1 3.1757812 7 L 4.6757812 5.5 L 3.1757812 4 A 0.58291923 0.58291923 0 0 1 3.5820312 3 z "
+     style="stroke-width:1.09870648;fill:#bababa;fill-opacity:1" />
+</svg>
diff --git a/assets/docs/html/search/functions_0.js b/assets/docs/html/search/functions_0.js
new file mode 100644
index 0000000000000000000000000000000000000000..6dd67b70ccb041a9dc9284f1e7a495dc8cf19403
--- /dev/null
+++ b/assets/docs/html/search/functions_0.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['accept_0',['accept',['../class_enemy.html#a12c591e7c61ccafe8f0c0a5727434d2f',1,'Enemy::accept()'],['../class_food.html#a66afb32708f97daf5bca2fae17ca3ad2',1,'Food::accept()']]],
+  ['action_1',['action',['../class_enemy.html#a34d900423f808c057a766daca104c6f6',1,'Enemy']]]
+];
diff --git a/assets/docs/html/search/functions_1.js b/assets/docs/html/search/functions_1.js
new file mode 100644
index 0000000000000000000000000000000000000000..5d2c138146f3619a76e7e078dc423d679342512c
--- /dev/null
+++ b/assets/docs/html/search/functions_1.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+  ['clone_0',['clone',['../class_enemy.html#aae122c696ec1c65f90d7625683183a67',1,'Enemy::clone()'],['../class_food.html#a3363e490287b67049c6771f56911d582',1,'Food::clone()']]],
+  ['create_5fcontext_1',['create_context',['../class_common_builder.html#ace9b0433bd9b849970e2b96965818789',1,'CommonBuilder']]],
+  ['create_5frooms_2',['create_rooms',['../class_simple_builder.html#ad02dcc4d85cec356f6169ce938242226',1,'SimpleBuilder::create_rooms()'],['../class_complex_builder.html#ac0dfa4956df4c1d1d9a61aa186fc8ac0',1,'ComplexBuilder::create_rooms()']]],
+  ['create_5fstate_3',['create_state',['../class_common_builder.html#a4e45999e05a45814ed25ed3adbbe07e0',1,'CommonBuilder']]]
+];
diff --git a/assets/docs/html/search/functions_2.js b/assets/docs/html/search/functions_2.js
new file mode 100644
index 0000000000000000000000000000000000000000..db930645fe20c2a30e96abae7c3a3dd9b4f0d20d
--- /dev/null
+++ b/assets/docs/html/search/functions_2.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['draw_5finto_0',['draw_into',['../class_menu.html#a4868e5ef14960d420dc79c307d1a78cb',1,'Menu']]]
+];
diff --git a/assets/docs/html/search/functions_3.js b/assets/docs/html/search/functions_3.js
new file mode 100644
index 0000000000000000000000000000000000000000..d7e7dc944888144433a68b06794739a06cba9994
--- /dev/null
+++ b/assets/docs/html/search/functions_3.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['event_5fhandling_0',['event_handling',['../class_game_state.html#a180391dfe966058da0389146534e66d0',1,'GameState']]]
+];
diff --git a/assets/docs/html/search/functions_4.js b/assets/docs/html/search/functions_4.js
new file mode 100644
index 0000000000000000000000000000000000000000..a018800950073172225bfd69c44fb593a36f6b7c
--- /dev/null
+++ b/assets/docs/html/search/functions_4.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['food_0',['Food',['../class_food.html#a75d4d7f76fd495cc8133302ca9fdc485',1,'Food']]]
+];
diff --git a/assets/docs/html/search/functions_5.js b/assets/docs/html/search/functions_5.js
new file mode 100644
index 0000000000000000000000000000000000000000..2f5fc5c5878ee8d8923516e3d63c410765b24c3a
--- /dev/null
+++ b/assets/docs/html/search/functions_5.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['gamestate_0',['GameState',['../class_game_state.html#a90b51ee7191c9fd1fc5e207bc35f1153',1,'GameState']]],
+  ['get_5fcurrent_5fcontext_1',['get_current_context',['../class_context_manager.html#a690898db09f92499c35fdbf24a7c3821',1,'ContextManager']]],
+  ['get_5fgame_2',['get_game',['../class_common_builder.html#aafef8d08b8bfdfccfde6ff56bfb99987',1,'CommonBuilder']]]
+];
diff --git a/assets/docs/html/search/functions_6.js b/assets/docs/html/search/functions_6.js
new file mode 100644
index 0000000000000000000000000000000000000000..39076b186917fd50b3ed2ca93c1765d9b74760e7
--- /dev/null
+++ b/assets/docs/html/search/functions_6.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['handle_0',['handle',['../class_delete_static_entity.html#aadc4bbbd570e947fca78e222dbfacb43',1,'DeleteStaticEntity']]]
+];
diff --git a/assets/docs/html/search/functions_7.js b/assets/docs/html/search/functions_7.js
new file mode 100644
index 0000000000000000000000000000000000000000..d21055cf188f37f59f168c1e02726e05c3744ba9
--- /dev/null
+++ b/assets/docs/html/search/functions_7.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['menu_0',['Menu',['../class_menu.html#aa9374182bab451e7f7bb8cc02b0db0ee',1,'Menu']]],
+  ['move_1',['move',['../class_pacman.html#aa957cbb7b0ad1bc1f6ef2aac82423cd8',1,'Pacman']]]
+];
diff --git a/assets/docs/html/search/functions_8.js b/assets/docs/html/search/functions_8.js
new file mode 100644
index 0000000000000000000000000000000000000000..1f21ac862c3438df9ce7e3ac02b6dc30c58d6a3e
--- /dev/null
+++ b/assets/docs/html/search/functions_8.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['on_5fnotify_0',['on_notify',['../class_score_count.html#ac3920f1272e0d1df949eea48b04896c1',1,'ScoreCount']]]
+];
diff --git a/assets/docs/html/search/functions_9.js b/assets/docs/html/search/functions_9.js
new file mode 100644
index 0000000000000000000000000000000000000000..d2007405c9842d8bbb46eb4973f53d187166218b
--- /dev/null
+++ b/assets/docs/html/search/functions_9.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['pacman_0',['Pacman',['../class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2',1,'Pacman']]],
+  ['prepare_5ffor_5fdrawing_1',['prepare_for_drawing',['../class_pacman.html#ad41930fae2878425f80e4fea614f3a3d',1,'Pacman']]],
+  ['process_5fmouse_2',['process_mouse',['../class_menu.html#a9174cfc103dba0ee0613196385691872',1,'Menu']]]
+];
diff --git a/assets/docs/html/search/functions_a.js b/assets/docs/html/search/functions_a.js
new file mode 100644
index 0000000000000000000000000000000000000000..be5584e0cf7a2ba10347f9c770727a546b707c1b
--- /dev/null
+++ b/assets/docs/html/search/functions_a.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['render_0',['render',['../class_game_state.html#a2c36ada0cae89f91d956e2c91b070893',1,'GameState::render()'],['../class_i_window_keeper.html#a973ef4befa8fd3b1fbb7e05a2c5904da',1,'IWindowKeeper::render()'],['../struct_select_state.html#a52b35ea72577fb2d5429daf43f9110e7',1,'SelectState::render()']]],
+  ['reset_1',['reset',['../class_context_manager.html#a54b7081b2e31ec59e3a06ef7b8eeed8e',1,'ContextManager']]],
+  ['restore_5fprevious_5fcontext_2',['restore_previous_context',['../class_context_manager.html#a34dc3ea752a37fe9c54dff33e1c4b138',1,'ContextManager']]]
+];
diff --git a/assets/docs/html/search/functions_b.js b/assets/docs/html/search/functions_b.js
new file mode 100644
index 0000000000000000000000000000000000000000..2d06374231a54b0aa6f27136c29c0192bb18711c
--- /dev/null
+++ b/assets/docs/html/search/functions_b.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['selectstate_0',['SelectState',['../struct_select_state.html#af3cc640f19d315eb79b7c9c0673a6562',1,'SelectState']]],
+  ['set_5fall_5fto_5fstate_1',['set_all_to_state',['../class_common_builder.html#ae920c0a91e61aff620096c100e496da0',1,'CommonBuilder']]],
+  ['set_5frooms_5fsides_2',['set_rooms_sides',['../class_simple_builder.html#aa1c6b39ff7d52a0f8cf811ef91d1feaa',1,'SimpleBuilder::set_rooms_sides()'],['../class_complex_builder.html#a93755bc2d5ac20722de6bce3d35aa336',1,'ComplexBuilder::set_rooms_sides()']]]
+];
diff --git a/assets/docs/html/search/functions_c.js b/assets/docs/html/search/functions_c.js
new file mode 100644
index 0000000000000000000000000000000000000000..95f37f8fde68d03fde4d8e87769ebac4ce0adb78
--- /dev/null
+++ b/assets/docs/html/search/functions_c.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['update_0',['update',['../class_game_state.html#a3610da76344c5c2cbcc5921f877226dc',1,'GameState::update()'],['../class_i_window_keeper.html#a46683ebaa51a36a8bb6bb22ed12b83b7',1,'IWindowKeeper::update()'],['../struct_select_state.html#af82dbfa9bc9fc892d55baabc3f5b5243',1,'SelectState::update()']]]
+];
diff --git a/assets/docs/html/search/functions_d.js b/assets/docs/html/search/functions_d.js
new file mode 100644
index 0000000000000000000000000000000000000000..e4150b272095321dbd37b221c4e8f7d429ec0ad1
--- /dev/null
+++ b/assets/docs/html/search/functions_d.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['visit_0',['visit',['../class_pacman.html#ac4b928c45d22d9814a02b7a621c5ae7c',1,'Pacman']]]
+];
diff --git a/assets/docs/html/search/functions_e.js b/assets/docs/html/search/functions_e.js
new file mode 100644
index 0000000000000000000000000000000000000000..393e79f4a57b3ebd050db7ddf2473e0f2697b432
--- /dev/null
+++ b/assets/docs/html/search/functions_e.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['_7eigameevent_0',['~IGameEvent',['../class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711',1,'IGameEvent']]]
+];
diff --git a/assets/docs/html/search/mag.svg b/assets/docs/html/search/mag.svg
new file mode 100644
index 0000000000000000000000000000000000000000..ffb6cf0d0251cb0eb2b0173fbd77ee2373385527
--- /dev/null
+++ b/assets/docs/html/search/mag.svg
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+ "https://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   viewBox="0 0 20 19"
+   height="19"
+   width="20"
+   id="svg2"
+   version="1.1">
+  <defs
+     id="defs6" />
+  <circle
+     r="3.5"
+     cy="8.5"
+     cx="5.5"
+     id="path4611"
+     style="fill:#000000;fill-opacity:0;stroke:#656565;stroke-width:1.4;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none" />
+  <path
+     id="path4630"
+     d="m 8.1085854,11.109059 2.7823556,2.782356"
+     style="fill:none;stroke:#656565;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+</svg>
diff --git a/assets/docs/html/search/mag_d.svg b/assets/docs/html/search/mag_d.svg
new file mode 100644
index 0000000000000000000000000000000000000000..4122773f92c32ce6bca14d8bf407c11c635bfcf3
--- /dev/null
+++ b/assets/docs/html/search/mag_d.svg
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+ "https://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   viewBox="0 0 20 19"
+   height="19"
+   width="20"
+   id="svg2"
+   version="1.1">
+  <defs
+     id="defs6" />
+  <circle
+     r="3.5"
+     cy="8.5"
+     cx="5.5"
+     id="path4611"
+     style="fill:#000000;fill-opacity:0;stroke:#C5C5C5;stroke-width:1.4;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none" />
+  <path
+     id="path4630"
+     d="m 8.1085854,11.109059 2.7823556,2.782356"
+     style="fill:none;stroke:#C5C5C5;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+</svg>
diff --git a/assets/docs/html/search/mag_sel.svg b/assets/docs/html/search/mag_sel.svg
new file mode 100644
index 0000000000000000000000000000000000000000..553dba8773264b110b8c04cfaecf8d94df01a975
--- /dev/null
+++ b/assets/docs/html/search/mag_sel.svg
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+ "https://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg
+   xmlns="http://www.w3.org/2000/svg"
+   version="1.1"
+   id="svg2"
+   width="20"
+   height="19"
+   viewBox="0 0 20 19"
+  >
+  <defs
+     id="defs6" />
+  <circle
+     style="fill:#000000;fill-opacity:0;stroke:#656565;stroke-width:1.4;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
+     id="path4611"
+     cx="5.5"
+     cy="8.5"
+     r="3.5" />
+  <path
+     style="fill:#656565;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+     d="M 11,7 13.5,10 16,7 Z"
+     id="path4609"
+     />
+  <path
+     style="fill:none;stroke:#656565;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+     d="m 8.1085854,11.109059 2.7823556,2.782356"
+     id="path4630"
+     />
+</svg>
diff --git a/assets/docs/html/search/mag_seld.svg b/assets/docs/html/search/mag_seld.svg
new file mode 100644
index 0000000000000000000000000000000000000000..c906f84c83a39ee10705c40b722d4eda15966327
--- /dev/null
+++ b/assets/docs/html/search/mag_seld.svg
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+ "https://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg
+   xmlns="http://www.w3.org/2000/svg"
+   version="1.1"
+   id="svg2"
+   width="20"
+   height="19"
+   viewBox="0 0 20 19"
+  >
+  <defs
+     id="defs6" />
+  <circle
+     style="fill:#000000;fill-opacity:0;stroke:#c5C5C5;stroke-width:1.4;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
+     id="path4611"
+     cx="5.5"
+     cy="8.5"
+     r="3.5" />
+  <path
+     style="fill:#c5C5C5;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+     d="M 11,7 13.5,10 16,7 Z"
+     id="path4609"
+     />
+  <path
+     style="fill:none;stroke:#c5C5C5;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+     d="m 8.1085854,11.109059 2.7823556,2.782356"
+     id="path4630"
+     />
+</svg>
diff --git a/assets/docs/html/search/search.css b/assets/docs/html/search/search.css
new file mode 100644
index 0000000000000000000000000000000000000000..a53214fcdc2d035878a0b53203327822be3dd424
--- /dev/null
+++ b/assets/docs/html/search/search.css
@@ -0,0 +1,286 @@
+/*---------------- Search Box */
+
+#MSearchBox {
+    position: absolute;
+    right: 5px;
+}
+/*---------------- Search box styling */
+
+.SRPage * {
+    font-weight: normal;
+    line-height: normal;
+}
+
+dark-mode-toggle {
+    margin-left: 5px;
+    display: flex;
+    float: right;
+}
+
+#MSearchBox {
+    display: inline-block;
+    white-space : nowrap;
+    background: var(--search-background-color);
+    border-radius: 0.65em;
+    box-shadow: var(--search-box-shadow);
+    z-index: 102;
+}
+
+#MSearchBox .left {
+    display: inline-block;
+    vertical-align: middle;
+    height: 1.4em;
+}
+
+#MSearchSelect {
+    display: inline-block;
+    vertical-align: middle;
+    width: 20px;
+    height: 19px;
+    background-image: var(--search-magnification-select-image);
+    margin: 0 0 0 0.3em;
+    padding: 0;
+}
+
+#MSearchSelectExt {
+    display: inline-block;
+    vertical-align: middle;
+    width: 10px;
+    height: 19px;
+    background-image: var(--search-magnification-image);
+    margin: 0 0 0 0.5em;
+    padding: 0;
+}
+
+
+#MSearchField {
+    display: inline-block;
+    vertical-align: middle;
+    width: 7.5em;
+    height: 19px;
+    margin: 0 0.15em;
+    padding: 0;
+    line-height: 1em;
+    border:none;
+    color: var(--search-foreground-color);
+    outline: none;
+    font-family: var(--font-family-search);
+    -webkit-border-radius: 0px;
+    border-radius: 0px;
+    background: none;
+}
+
+@media(hover: none) {
+    /* to avoid zooming on iOS */
+    #MSearchField {
+        font-size: 16px;
+    }
+}
+
+#MSearchBox .right {
+    display: inline-block;
+    vertical-align: middle;
+    width: 1.4em;
+    height: 1.4em;
+}
+
+#MSearchClose {
+    display: none;
+    font-size: inherit;
+    background : none;
+    border: none;
+    margin: 0;
+    padding: 0;
+    outline: none;
+
+}
+
+#MSearchCloseImg {
+    padding: 0.3em;
+    margin: 0;
+}
+
+.MSearchBoxActive #MSearchField {
+    color: var(--search-active-color);
+}
+
+
+
+/*---------------- Search filter selection */
+
+#MSearchSelectWindow {
+    display: none;
+    position: absolute;
+    left: 0; top: 0;
+    border: 1px solid var(--search-filter-border-color);
+    background-color: var(--search-filter-background-color);
+    z-index: 10001;
+    padding-top: 4px;
+    padding-bottom: 4px;
+    -moz-border-radius: 4px;
+    -webkit-border-top-left-radius: 4px;
+    -webkit-border-top-right-radius: 4px;
+    -webkit-border-bottom-left-radius: 4px;
+    -webkit-border-bottom-right-radius: 4px;
+    -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+}
+
+.SelectItem {
+    font: 8pt var(--font-family-search);
+    padding-left:  2px;
+    padding-right: 12px;
+    border: 0px;
+}
+
+span.SelectionMark {
+    margin-right: 4px;
+    font-family: var(--font-family-monospace);
+    outline-style: none;
+    text-decoration: none;
+}
+
+a.SelectItem {
+    display: block;
+    outline-style: none;
+    color: var(--search-filter-foreground-color);
+    text-decoration: none;
+    padding-left:   6px;
+    padding-right: 12px;
+}
+
+a.SelectItem:focus,
+a.SelectItem:active {
+    color: var(--search-filter-foreground-color);
+    outline-style: none;
+    text-decoration: none;
+}
+
+a.SelectItem:hover {
+    color: var(--search-filter-highlight-text-color);
+    background-color: var(--search-filter-highlight-bg-color);
+    outline-style: none;
+    text-decoration: none;
+    cursor: pointer;
+    display: block;
+}
+
+/*---------------- Search results window */
+
+iframe#MSearchResults {
+    /*width: 60ex;*/
+    height: 15em;
+}
+
+#MSearchResultsWindow {
+    display: none;
+    position: absolute;
+    left: 0; top: 0;
+    border: 1px solid var(--search-results-border-color);
+    background-color: var(--search-results-background-color);
+    z-index:10000;
+    width: 300px;
+    height: 400px;
+    overflow: auto;
+}
+
+/* ----------------------------------- */
+
+
+#SRIndex {
+    clear:both; 
+}
+
+.SREntry {
+    font-size: 10pt;
+    padding-left: 1ex;
+}
+
+.SRPage .SREntry {
+    font-size: 8pt;
+    padding: 1px 5px;
+}
+
+div.SRPage {
+    margin: 5px 2px;
+    background-color: var(--search-results-background-color);
+}
+
+.SRChildren {
+    padding-left: 3ex; padding-bottom: .5em 
+}
+
+.SRPage .SRChildren {
+    display: none;
+}
+
+.SRSymbol {
+    font-weight: bold;
+    color: var(--search-results-foreground-color);
+    font-family: var(--font-family-search);
+    text-decoration: none;
+    outline: none;
+}
+
+a.SRScope {
+    display: block;
+    color: var(--search-results-foreground-color);
+    font-family: var(--font-family-search);
+    font-size: 8pt;
+    text-decoration: none;
+    outline: none;
+}
+
+a.SRSymbol:focus, a.SRSymbol:active,
+a.SRScope:focus, a.SRScope:active {
+    text-decoration: underline;
+}
+
+span.SRScope {
+    padding-left: 4px;
+    font-family: var(--font-family-search);
+}
+
+.SRPage .SRStatus {
+    padding: 2px 5px;
+    font-size: 8pt;
+    font-style: italic;
+    font-family: var(--font-family-search);
+}
+
+.SRResult {
+    display: none;
+}
+
+div.searchresults {
+    margin-left: 10px;
+    margin-right: 10px;
+}
+
+/*---------------- External search page results */
+
+.pages b {
+   color: white;
+   padding: 5px 5px 3px 5px;
+   background-image: var(--nav-gradient-active-image-parent);
+   background-repeat: repeat-x;
+   text-shadow: 0 1px 1px #000000;
+}
+
+.pages {
+    line-height: 17px;
+    margin-left: 4px;
+    text-decoration: none;
+}
+
+.hl {
+    font-weight: bold;
+}
+
+#searchresults {
+    margin-bottom: 20px;
+}
+
+.searchpages {
+    margin-top: 10px;
+}
+
diff --git a/assets/docs/html/search/search.js b/assets/docs/html/search/search.js
new file mode 100644
index 0000000000000000000000000000000000000000..666af01e5ea20fd9d1bcc438698e96a97ffb1533
--- /dev/null
+++ b/assets/docs/html/search/search.js
@@ -0,0 +1,694 @@
+/*
+ @licstart  The following is the entire license notice for the JavaScript code in this file.
+
+ The MIT License (MIT)
+
+ Copyright (C) 1997-2020 by Dimitri van Heesch
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software
+ and associated documentation files (the "Software"), to deal in the Software without restriction,
+ including without limitation the rights to use, copy, modify, merge, publish, distribute,
+ sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in all copies or
+ substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
+ BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+ DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ @licend  The above is the entire license notice for the JavaScript code in this file
+ */
+const SEARCH_COOKIE_NAME = ''+'search_grp';
+
+const searchResults = new SearchResults();
+
+/* A class handling everything associated with the search panel.
+
+   Parameters:
+   name - The name of the global variable that will be
+          storing this instance.  Is needed to be able to set timeouts.
+   resultPath - path to use for external files
+*/
+function SearchBox(name, resultsPath, extension) {
+  if (!name || !resultsPath) {  alert("Missing parameters to SearchBox."); }
+  if (!extension || extension == "") { extension = ".html"; }
+
+  function getXPos(item) {
+    let x = 0;
+    if (item.offsetWidth) {
+      while (item && item!=document.body) {
+        x   += item.offsetLeft;
+        item = item.offsetParent;
+      }
+    }
+    return x;
+  }
+
+  function getYPos(item) {
+    let y = 0;
+    if (item.offsetWidth) {
+      while (item && item!=document.body) {
+        y   += item.offsetTop;
+        item = item.offsetParent;
+      }
+    }
+    return y;
+  }
+
+  // ---------- Instance variables
+  this.name                  = name;
+  this.resultsPath           = resultsPath;
+  this.keyTimeout            = 0;
+  this.keyTimeoutLength      = 500;
+  this.closeSelectionTimeout = 300;
+  this.lastSearchValue       = "";
+  this.lastResultsPage       = "";
+  this.hideTimeout           = 0;
+  this.searchIndex           = 0;
+  this.searchActive          = false;
+  this.extension             = extension;
+
+  // ----------- DOM Elements
+
+  this.DOMSearchField              = () => document.getElementById("MSearchField");
+  this.DOMSearchSelect             = () => document.getElementById("MSearchSelect");
+  this.DOMSearchSelectWindow       = () => document.getElementById("MSearchSelectWindow");
+  this.DOMPopupSearchResults       = () => document.getElementById("MSearchResults");
+  this.DOMPopupSearchResultsWindow = () => document.getElementById("MSearchResultsWindow");
+  this.DOMSearchClose              = () => document.getElementById("MSearchClose");
+  this.DOMSearchBox                = () => document.getElementById("MSearchBox");
+
+  // ------------ Event Handlers
+
+  // Called when focus is added or removed from the search field.
+  this.OnSearchFieldFocus = function(isActive) {
+    this.Activate(isActive);
+  }
+
+  this.OnSearchSelectShow = function() {
+    const searchSelectWindow = this.DOMSearchSelectWindow();
+    const searchField        = this.DOMSearchSelect();
+
+    const left = getXPos(searchField);
+    const top  = getYPos(searchField) + searchField.offsetHeight;
+
+    // show search selection popup
+    searchSelectWindow.style.display='block';
+    searchSelectWindow.style.left =  left + 'px';
+    searchSelectWindow.style.top  =  top  + 'px';
+
+    // stop selection hide timer
+    if (this.hideTimeout) {
+      clearTimeout(this.hideTimeout);
+      this.hideTimeout=0;
+    }
+    return false; // to avoid "image drag" default event
+  }
+
+  this.OnSearchSelectHide = function() {
+    this.hideTimeout = setTimeout(this.CloseSelectionWindow.bind(this),
+                                  this.closeSelectionTimeout);
+  }
+
+  // Called when the content of the search field is changed.
+  this.OnSearchFieldChange = function(evt) {
+    if (this.keyTimeout) { // kill running timer
+      clearTimeout(this.keyTimeout);
+      this.keyTimeout = 0;
+    }
+
+    const e = evt ? evt : window.event; // for IE
+    if (e.keyCode==40 || e.keyCode==13) {
+      if (e.shiftKey==1) {
+        this.OnSearchSelectShow();
+        const win=this.DOMSearchSelectWindow();
+        for (let i=0;i<win.childNodes.length;i++) {
+          const child = win.childNodes[i]; // get span within a
+          if (child.className=='SelectItem') {
+            child.focus();
+            return;
+          }
+        }
+        return;
+      } else {
+        const elem = searchResults.NavNext(0);
+        if (elem) elem.focus();
+      }
+    } else if (e.keyCode==27) { // Escape out of the search field
+      e.stopPropagation();
+      this.DOMSearchField().blur();
+      this.DOMPopupSearchResultsWindow().style.display = 'none';
+      this.DOMSearchClose().style.display = 'none';
+      this.lastSearchValue = '';
+      this.Activate(false);
+      return;
+    }
+
+    // strip whitespaces
+    const searchValue = this.DOMSearchField().value.replace(/ +/g, "");
+
+    if (searchValue != this.lastSearchValue) { // search value has changed
+      if (searchValue != "") { // non-empty search
+        // set timer for search update
+        this.keyTimeout = setTimeout(this.Search.bind(this), this.keyTimeoutLength);
+      } else { // empty search field
+        this.DOMPopupSearchResultsWindow().style.display = 'none';
+        this.DOMSearchClose().style.display = 'none';
+        this.lastSearchValue = '';
+      }
+    }
+  }
+
+  this.SelectItemCount = function() {
+    let count=0;
+    const win=this.DOMSearchSelectWindow();
+    for (let i=0;i<win.childNodes.length;i++) {
+      const child = win.childNodes[i]; // get span within a
+      if (child.className=='SelectItem') {
+        count++;
+      }
+    }
+    return count;
+  }
+
+  this.GetSelectionIdByName = function(name) {
+    let j=0;
+    const win=this.DOMSearchSelectWindow();
+    for (let i=0;i<win.childNodes.length;i++) {
+      const child = win.childNodes[i];
+      if (child.className=='SelectItem') {
+        if (child.childNodes[1].nodeValue==name) {
+          return j;
+        }
+        j++;
+      }
+    }
+    return 0;
+  }
+
+  this.SelectItemSet = function(id) {
+    let j=0;
+    const win=this.DOMSearchSelectWindow();
+    for (let i=0;i<win.childNodes.length;i++) {
+      const child = win.childNodes[i]; // get span within a
+      if (child.className=='SelectItem') {
+        const node = child.firstChild;
+        if (j==id) {
+          node.innerHTML='&#8226;';
+          Cookie.writeSetting(SEARCH_COOKIE_NAME, child.childNodes[1].nodeValue, 0)
+        } else {
+          node.innerHTML='&#160;';
+        }
+        j++;
+      }
+    }
+  }
+
+  // Called when an search filter selection is made.
+  // set item with index id as the active item
+  this.OnSelectItem = function(id) {
+    this.searchIndex = id;
+    this.SelectItemSet(id);
+    const searchValue = this.DOMSearchField().value.replace(/ +/g, "");
+    if (searchValue!="" && this.searchActive) { // something was found -> do a search
+      this.Search();
+    }
+  }
+
+  this.OnSearchSelectKey = function(evt) {
+    const e = (evt) ? evt : window.event; // for IE
+    if (e.keyCode==40 && this.searchIndex<this.SelectItemCount()) { // Down
+      this.searchIndex++;
+      this.OnSelectItem(this.searchIndex);
+    } else if (e.keyCode==38 && this.searchIndex>0) { // Up
+      this.searchIndex--;
+      this.OnSelectItem(this.searchIndex);
+    } else if (e.keyCode==13 || e.keyCode==27) {
+      e.stopPropagation();
+      this.OnSelectItem(this.searchIndex);
+      this.CloseSelectionWindow();
+      this.DOMSearchField().focus();
+    }
+    return false;
+  }
+
+  // --------- Actions
+
+  // Closes the results window.
+  this.CloseResultsWindow = function() {
+    this.DOMPopupSearchResultsWindow().style.display = 'none';
+    this.DOMSearchClose().style.display = 'none';
+    this.Activate(false);
+  }
+
+  this.CloseSelectionWindow = function() {
+    this.DOMSearchSelectWindow().style.display = 'none';
+  }
+
+  // Performs a search.
+  this.Search = function() {
+    this.keyTimeout = 0;
+
+    // strip leading whitespace
+    const searchValue = this.DOMSearchField().value.replace(/^ +/, "");
+
+    const code = searchValue.toLowerCase().charCodeAt(0);
+    let idxChar = searchValue.substr(0, 1).toLowerCase();
+    if ( 0xD800 <= code && code <= 0xDBFF && searchValue > 1) { // surrogate pair
+      idxChar = searchValue.substr(0, 2);
+    }
+
+    let jsFile;
+    let idx = indexSectionsWithContent[this.searchIndex].indexOf(idxChar);
+    if (idx!=-1) {
+      const hexCode=idx.toString(16);
+      jsFile = this.resultsPath + indexSectionNames[this.searchIndex] + '_' + hexCode + '.js';
+    }
+
+    const loadJS = function(url, impl, loc) {
+      const scriptTag = document.createElement('script');
+      scriptTag.src = url;
+      scriptTag.onload = impl;
+      scriptTag.onreadystatechange = impl;
+      loc.appendChild(scriptTag);
+    }
+
+    const domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow();
+    const domSearchBox = this.DOMSearchBox();
+    const domPopupSearchResults = this.DOMPopupSearchResults();
+    const domSearchClose = this.DOMSearchClose();
+    const resultsPath = this.resultsPath;
+
+    const handleResults = function() {
+      document.getElementById("Loading").style.display="none";
+      if (typeof searchData !== 'undefined') {
+        createResults(resultsPath);
+        document.getElementById("NoMatches").style.display="none";
+      }
+
+      if (idx!=-1) {
+        searchResults.Search(searchValue);
+      } else { // no file with search results => force empty search results
+        searchResults.Search('====');
+      }
+
+      if (domPopupSearchResultsWindow.style.display!='block') {
+        domSearchClose.style.display = 'inline-block';
+        let left = getXPos(domSearchBox) + 150;
+        let top  = getYPos(domSearchBox) + 20;
+        domPopupSearchResultsWindow.style.display = 'block';
+        left -= domPopupSearchResults.offsetWidth;
+        const maxWidth  = document.body.clientWidth;
+        const maxHeight = document.body.clientHeight;
+        let width = 300;
+        if (left<10) left=10;
+        if (width+left+8>maxWidth) width=maxWidth-left-8;
+        let height = 400;
+        if (height+top+8>maxHeight) height=maxHeight-top-8;
+        domPopupSearchResultsWindow.style.top     = top  + 'px';
+        domPopupSearchResultsWindow.style.left    = left + 'px';
+        domPopupSearchResultsWindow.style.width   = width + 'px';
+        domPopupSearchResultsWindow.style.height  = height + 'px';
+      }
+    }
+
+    if (jsFile) {
+      loadJS(jsFile, handleResults, this.DOMPopupSearchResultsWindow());
+    } else {
+      handleResults();
+    }
+
+    this.lastSearchValue = searchValue;
+  }
+
+  // -------- Activation Functions
+
+  // Activates or deactivates the search panel, resetting things to
+  // their default values if necessary.
+  this.Activate = function(isActive) {
+    if (isActive || // open it
+      this.DOMPopupSearchResultsWindow().style.display == 'block'
+    ) {
+      this.DOMSearchBox().className = 'MSearchBoxActive';
+      this.searchActive = true;
+    } else if (!isActive) { // directly remove the panel
+      this.DOMSearchBox().className = 'MSearchBoxInactive';
+      this.searchActive             = false;
+      this.lastSearchValue          = ''
+      this.lastResultsPage          = '';
+      this.DOMSearchField().value   = '';
+    }
+  }
+}
+
+// -----------------------------------------------------------------------
+
+// The class that handles everything on the search results page.
+function SearchResults() {
+
+  function convertToId(search) {
+    let result = '';
+    for (let i=0;i<search.length;i++) {
+      const c = search.charAt(i);
+      const cn = c.charCodeAt(0);
+      if (c.match(/[a-z0-9\u0080-\uFFFF]/)) {
+        result+=c;
+      } else if (cn<16) {
+        result+="_0"+cn.toString(16);
+      } else {
+        result+="_"+cn.toString(16);
+      }
+    }
+    return result;
+  }
+
+  // The number of matches from the last run of <Search()>.
+  this.lastMatchCount = 0;
+  this.lastKey = 0;
+  this.repeatOn = false;
+
+  // Toggles the visibility of the passed element ID.
+  this.FindChildElement = function(id) {
+    const parentElement = document.getElementById(id);
+    let element = parentElement.firstChild;
+
+    while (element && element!=parentElement) {
+      if (element.nodeName.toLowerCase() == 'div' && element.className == 'SRChildren') {
+        return element;
+      }
+
+      if (element.nodeName.toLowerCase() == 'div' && element.hasChildNodes()) {
+        element = element.firstChild;
+      } else if (element.nextSibling) {
+        element = element.nextSibling;
+      } else {
+        do {
+          element = element.parentNode;
+        }
+        while (element && element!=parentElement && !element.nextSibling);
+
+        if (element && element!=parentElement) {
+          element = element.nextSibling;
+        }
+      }
+    }
+  }
+
+  this.Toggle = function(id) {
+    const element = this.FindChildElement(id);
+    if (element) {
+      if (element.style.display == 'block') {
+        element.style.display = 'none';
+      } else {
+        element.style.display = 'block';
+      }
+    }
+  }
+
+  // Searches for the passed string.  If there is no parameter,
+  // it takes it from the URL query.
+  //
+  // Always returns true, since other documents may try to call it
+  // and that may or may not be possible.
+  this.Search = function(search) {
+    if (!search) { // get search word from URL
+      search = window.location.search;
+      search = search.substring(1);  // Remove the leading '?'
+      search = unescape(search);
+    }
+
+    search = search.replace(/^ +/, ""); // strip leading spaces
+    search = search.replace(/ +$/, ""); // strip trailing spaces
+    search = search.toLowerCase();
+    search = convertToId(search);
+
+    const resultRows = document.getElementsByTagName("div");
+    let matches = 0;
+
+    let i = 0;
+    while (i < resultRows.length) {
+      const row = resultRows.item(i);
+      if (row.className == "SRResult") {
+        let rowMatchName = row.id.toLowerCase();
+        rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_'
+
+        if (search.length<=rowMatchName.length &&
+          rowMatchName.substr(0, search.length)==search) {
+          row.style.display = 'block';
+          matches++;
+        } else {
+          row.style.display = 'none';
+        }
+      }
+      i++;
+    }
+    document.getElementById("Searching").style.display='none';
+    if (matches == 0) { // no results
+      document.getElementById("NoMatches").style.display='block';
+    } else { // at least one result
+      document.getElementById("NoMatches").style.display='none';
+    }
+    this.lastMatchCount = matches;
+    return true;
+  }
+
+  // return the first item with index index or higher that is visible
+  this.NavNext = function(index) {
+    let focusItem;
+    for (;;) {
+      const focusName = 'Item'+index;
+      focusItem = document.getElementById(focusName);
+      if (focusItem && focusItem.parentNode.parentNode.style.display=='block') {
+        break;
+      } else if (!focusItem) { // last element
+        break;
+      }
+      focusItem=null;
+      index++;
+    }
+    return focusItem;
+  }
+
+  this.NavPrev = function(index) {
+    let focusItem;
+    for (;;) {
+      const focusName = 'Item'+index;
+      focusItem = document.getElementById(focusName);
+      if (focusItem && focusItem.parentNode.parentNode.style.display=='block') {
+        break;
+      } else if (!focusItem) { // last element
+        break;
+      }
+      focusItem=null;
+      index--;
+    }
+    return focusItem;
+  }
+
+  this.ProcessKeys = function(e) {
+    if (e.type == "keydown") {
+      this.repeatOn = false;
+      this.lastKey = e.keyCode;
+    } else if (e.type == "keypress") {
+      if (!this.repeatOn) {
+        if (this.lastKey) this.repeatOn = true;
+        return false; // ignore first keypress after keydown
+      }
+    } else if (e.type == "keyup") {
+      this.lastKey = 0;
+      this.repeatOn = false;
+    }
+    return this.lastKey!=0;
+  }
+
+  this.Nav = function(evt,itemIndex) {
+    const e  = (evt) ? evt : window.event; // for IE
+    if (e.keyCode==13) return true;
+    if (!this.ProcessKeys(e)) return false;
+
+    if (this.lastKey==38) { // Up
+      const newIndex = itemIndex-1;
+      let focusItem = this.NavPrev(newIndex);
+      if (focusItem) {
+        let child = this.FindChildElement(focusItem.parentNode.parentNode.id);
+        if (child && child.style.display == 'block') { // children visible
+          let n=0;
+          let tmpElem;
+          for (;;) { // search for last child
+            tmpElem = document.getElementById('Item'+newIndex+'_c'+n);
+            if (tmpElem) {
+              focusItem = tmpElem;
+            } else { // found it!
+              break;
+            }
+            n++;
+          }
+        }
+      }
+      if (focusItem) {
+        focusItem.focus();
+      } else { // return focus to search field
+        document.getElementById("MSearchField").focus();
+      }
+    } else if (this.lastKey==40) { // Down
+      const newIndex = itemIndex+1;
+      let focusItem;
+      const item = document.getElementById('Item'+itemIndex);
+      const elem = this.FindChildElement(item.parentNode.parentNode.id);
+      if (elem && elem.style.display == 'block') { // children visible
+        focusItem = document.getElementById('Item'+itemIndex+'_c0');
+      }
+      if (!focusItem) focusItem = this.NavNext(newIndex);
+      if (focusItem)  focusItem.focus();
+    } else if (this.lastKey==39) { // Right
+      const item = document.getElementById('Item'+itemIndex);
+      const elem = this.FindChildElement(item.parentNode.parentNode.id);
+      if (elem) elem.style.display = 'block';
+    } else if (this.lastKey==37) { // Left
+      const item = document.getElementById('Item'+itemIndex);
+      const elem = this.FindChildElement(item.parentNode.parentNode.id);
+      if (elem) elem.style.display = 'none';
+    } else if (this.lastKey==27) { // Escape
+      e.stopPropagation();
+      searchBox.CloseResultsWindow();
+      document.getElementById("MSearchField").focus();
+    } else if (this.lastKey==13) { // Enter
+      return true;
+    }
+    return false;
+  }
+
+  this.NavChild = function(evt,itemIndex,childIndex) {
+    const e  = (evt) ? evt : window.event; // for IE
+    if (e.keyCode==13) return true;
+    if (!this.ProcessKeys(e)) return false;
+
+    if (this.lastKey==38) { // Up
+      if (childIndex>0) {
+        const newIndex = childIndex-1;
+        document.getElementById('Item'+itemIndex+'_c'+newIndex).focus();
+      } else { // already at first child, jump to parent
+        document.getElementById('Item'+itemIndex).focus();
+      }
+    } else if (this.lastKey==40) { // Down
+      const newIndex = childIndex+1;
+      let elem = document.getElementById('Item'+itemIndex+'_c'+newIndex);
+      if (!elem) { // last child, jump to parent next parent
+        elem = this.NavNext(itemIndex+1);
+      }
+      if (elem) {
+        elem.focus();
+      }
+    } else if (this.lastKey==27) { // Escape
+      e.stopPropagation();
+      searchBox.CloseResultsWindow();
+      document.getElementById("MSearchField").focus();
+    } else if (this.lastKey==13) { // Enter
+      return true;
+    }
+    return false;
+  }
+}
+
+function createResults(resultsPath) {
+
+  function setKeyActions(elem,action) {
+    elem.setAttribute('onkeydown',action);
+    elem.setAttribute('onkeypress',action);
+    elem.setAttribute('onkeyup',action);
+  }
+
+  function setClassAttr(elem,attr) {
+    elem.setAttribute('class',attr);
+    elem.setAttribute('className',attr);
+  }
+
+  const results = document.getElementById("SRResults");
+  results.innerHTML = '';
+  searchData.forEach((elem,index) => {
+    const id = elem[0];
+    const srResult = document.createElement('div');
+    srResult.setAttribute('id','SR_'+id);
+    setClassAttr(srResult,'SRResult');
+    const srEntry = document.createElement('div');
+    setClassAttr(srEntry,'SREntry');
+    const srLink = document.createElement('a');
+    srLink.setAttribute('id','Item'+index);
+    setKeyActions(srLink,'return searchResults.Nav(event,'+index+')');
+    setClassAttr(srLink,'SRSymbol');
+    srLink.innerHTML = elem[1][0];
+    srEntry.appendChild(srLink);
+    if (elem[1].length==2) { // single result
+      srLink.setAttribute('href',resultsPath+elem[1][1][0]);
+      srLink.setAttribute('onclick','searchBox.CloseResultsWindow()');
+      if (elem[1][1][1]) {
+       srLink.setAttribute('target','_parent');
+      } else {
+       srLink.setAttribute('target','_blank');
+      }
+      const srScope = document.createElement('span');
+      setClassAttr(srScope,'SRScope');
+      srScope.innerHTML = elem[1][1][2];
+      srEntry.appendChild(srScope);
+    } else { // multiple results
+      srLink.setAttribute('href','javascript:searchResults.Toggle("SR_'+id+'")');
+      const srChildren = document.createElement('div');
+      setClassAttr(srChildren,'SRChildren');
+      for (let c=0; c<elem[1].length-1; c++) {
+        const srChild = document.createElement('a');
+        srChild.setAttribute('id','Item'+index+'_c'+c);
+        setKeyActions(srChild,'return searchResults.NavChild(event,'+index+','+c+')');
+        setClassAttr(srChild,'SRScope');
+        srChild.setAttribute('href',resultsPath+elem[1][c+1][0]);
+        srChild.setAttribute('onclick','searchBox.CloseResultsWindow()');
+        if (elem[1][c+1][1]) {
+         srChild.setAttribute('target','_parent');
+        } else {
+         srChild.setAttribute('target','_blank');
+        }
+        srChild.innerHTML = elem[1][c+1][2];
+        srChildren.appendChild(srChild);
+      }
+      srEntry.appendChild(srChildren);
+    }
+    srResult.appendChild(srEntry);
+    results.appendChild(srResult);
+  });
+}
+
+function init_search() {
+  const results = document.getElementById("MSearchSelectWindow");
+
+  results.tabIndex=0;
+  for (let key in indexSectionLabels) {
+    const link = document.createElement('a');
+    link.setAttribute('class','SelectItem');
+    link.setAttribute('onclick','searchBox.OnSelectItem('+key+')');
+    link.href='javascript:void(0)';
+    link.innerHTML='<span class="SelectionMark">&#160;</span>'+indexSectionLabels[key];
+    results.appendChild(link);
+  }
+
+  const input = document.getElementById("MSearchSelect");
+  const searchSelectWindow = document.getElementById("MSearchSelectWindow");
+  input.tabIndex=0;
+  input.addEventListener("keydown", function(event) {
+    if (event.keyCode==13 || event.keyCode==40) {
+      event.preventDefault();
+      if (searchSelectWindow.style.display == 'block') {
+        searchBox.CloseSelectionWindow();
+      } else {
+        searchBox.OnSearchSelectShow();
+        searchBox.DOMSearchSelectWindow().focus();
+      }
+    }
+  });
+  const name = Cookie.readSetting(SEARCH_COOKIE_NAME,0);
+  const id = searchBox.GetSelectionIdByName(name);
+  searchBox.OnSelectItem(id);
+}
+/* @license-end */
diff --git a/assets/docs/html/search/searchdata.js b/assets/docs/html/search/searchdata.js
new file mode 100644
index 0000000000000000000000000000000000000000..cca42bf727fe4668b6eae0666067262172680b7f
--- /dev/null
+++ b/assets/docs/html/search/searchdata.js
@@ -0,0 +1,24 @@
+var indexSectionsWithContent =
+{
+  0: "abcdefghilmoprstuvw~",
+  1: "abcdefgilmprstw",
+  2: "acdefghmoprsuv~",
+  3: "m"
+};
+
+var indexSectionNames =
+{
+  0: "all",
+  1: "classes",
+  2: "functions",
+  3: "variables"
+};
+
+var indexSectionLabels =
+{
+  0: "Указатель",
+  1: "Классы",
+  2: "Функции",
+  3: "Переменные"
+};
+
diff --git a/assets/docs/html/search/variables_0.js b/assets/docs/html/search/variables_0.js
new file mode 100644
index 0000000000000000000000000000000000000000..798e34606195a5ad832a69bea91581354075de65
--- /dev/null
+++ b/assets/docs/html/search/variables_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['m_5fwindow_0',['m_window',['../class_i_window_keeper.html#aef0780725b6f210bcbeb3b03da2445b8',1,'IWindowKeeper']]]
+];
diff --git a/assets/docs/html/splitbar.png b/assets/docs/html/splitbar.png
new file mode 100644
index 0000000000000000000000000000000000000000..fe895f2c58179b471a22d8320b39a4bd7312ec8e
Binary files /dev/null and b/assets/docs/html/splitbar.png differ
diff --git a/assets/docs/html/splitbard.png b/assets/docs/html/splitbard.png
new file mode 100644
index 0000000000000000000000000000000000000000..8367416d757fd7b6dc4272b6432dc75a75abd068
Binary files /dev/null and b/assets/docs/html/splitbard.png differ
diff --git a/assets/docs/html/struct_game_context-members.html b/assets/docs/html/struct_game_context-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..516fdc8575163565d7f2b2c964ecb796b099f0e7
--- /dev/null
+++ b/assets/docs/html/struct_game_context-members.html
@@ -0,0 +1,133 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('struct_game_context.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">GameContext Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="struct_game_context.html">GameContext</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>clone</b>() (определено в <a class="el" href="struct_game_context.html">GameContext</a>)</td><td class="entry"><a class="el" href="struct_game_context.html">GameContext</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>dynamic_objects</b> (определено в <a class="el" href="struct_game_context.html">GameContext</a>)</td><td class="entry"><a class="el" href="struct_game_context.html">GameContext</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GameContext</b>() (определено в <a class="el" href="struct_game_context.html">GameContext</a>)</td><td class="entry"><a class="el" href="struct_game_context.html">GameContext</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>INGAME</b> элементы перечисления (определено в <a class="el" href="struct_game_context.html">GameContext</a>)</td><td class="entry"><a class="el" href="struct_game_context.html">GameContext</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>LOST</b> элементы перечисления (определено в <a class="el" href="struct_game_context.html">GameContext</a>)</td><td class="entry"><a class="el" href="struct_game_context.html">GameContext</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>pacman</b> (определено в <a class="el" href="struct_game_context.html">GameContext</a>)</td><td class="entry"><a class="el" href="struct_game_context.html">GameContext</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>pacman2</b> (определено в <a class="el" href="struct_game_context.html">GameContext</a>)</td><td class="entry"><a class="el" href="struct_game_context.html">GameContext</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>screamer_active</b> (определено в <a class="el" href="struct_game_context.html">GameContext</a>)</td><td class="entry"><a class="el" href="struct_game_context.html">GameContext</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>screamer_timer</b> (определено в <a class="el" href="struct_game_context.html">GameContext</a>)</td><td class="entry"><a class="el" href="struct_game_context.html">GameContext</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>State</b> перечисление (определено в <a class="el" href="struct_game_context.html">GameContext</a>)</td><td class="entry"><a class="el" href="struct_game_context.html">GameContext</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>state</b> (определено в <a class="el" href="struct_game_context.html">GameContext</a>)</td><td class="entry"><a class="el" href="struct_game_context.html">GameContext</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>static_objects</b> (определено в <a class="el" href="struct_game_context.html">GameContext</a>)</td><td class="entry"><a class="el" href="struct_game_context.html">GameContext</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>WIN</b> элементы перечисления (определено в <a class="el" href="struct_game_context.html">GameContext</a>)</td><td class="entry"><a class="el" href="struct_game_context.html">GameContext</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/struct_game_context.html b/assets/docs/html/struct_game_context.html
new file mode 100644
index 0000000000000000000000000000000000000000..54daddf66d0fd5e074e9392b7f3c0b08a6d1cd1e
--- /dev/null
+++ b/assets/docs/html/struct_game_context.html
@@ -0,0 +1,181 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Структура GameContext</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('struct_game_context.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-types">Открытые типы</a> &#124;
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="#pub-attribs">Открытые атрибуты</a> &#124;
+<a href="struct_game_context-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Структура GameContext</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Контекст игры. Тут хранится состояние всего того, что происходит в лабиринте  
+ <a href="#details">Подробнее...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_context_8h_source.html">Context.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
+Открытые типы</h2></td></tr>
+<tr class="memitem:a6973014945a430bff5a6c8c7893ed8da" id="r_a6973014945a430bff5a6c8c7893ed8da"><td class="memItemLeft" align="right" valign="top"><a id="a6973014945a430bff5a6c8c7893ed8da" name="a6973014945a430bff5a6c8c7893ed8da"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><b>State</b> { <b>INGAME</b>
+, <b>WIN</b>
+, <b>LOST</b>
+ }</td></tr>
+<tr class="separator:a6973014945a430bff5a6c8c7893ed8da"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a667d88dd4f5764284fc7bdd3212bfd1e" id="r_a667d88dd4f5764284fc7bdd3212bfd1e"><td class="memItemLeft" align="right" valign="top"><a id="a667d88dd4f5764284fc7bdd3212bfd1e" name="a667d88dd4f5764284fc7bdd3212bfd1e"></a>
+<a class="el" href="struct_game_context.html">GameContext</a>&#160;</td><td class="memItemRight" valign="bottom"><b>clone</b> ()</td></tr>
+<tr class="separator:a667d88dd4f5764284fc7bdd3212bfd1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
+Открытые атрибуты</h2></td></tr>
+<tr class="memitem:a28a9e291f13354eda87deae2393acce5" id="r_a28a9e291f13354eda87deae2393acce5"><td class="memItemLeft" align="right" valign="top"><a id="a28a9e291f13354eda87deae2393acce5" name="a28a9e291f13354eda87deae2393acce5"></a>
+enum GameContext::State&#160;</td><td class="memItemRight" valign="bottom"><b>state</b> = INGAME</td></tr>
+<tr class="separator:a28a9e291f13354eda87deae2393acce5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ffc13d9813065443cb7780c916c9313" id="r_a6ffc13d9813065443cb7780c916c9313"><td class="memItemLeft" align="right" valign="top"><a id="a6ffc13d9813065443cb7780c916c9313" name="a6ffc13d9813065443cb7780c916c9313"></a>
+std::list&lt; std::unique_ptr&lt; <a class="el" href="struct_i_dynamic_entity.html">IDynamicEntity</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>dynamic_objects</b></td></tr>
+<tr class="separator:a6ffc13d9813065443cb7780c916c9313"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a77e6366b9e9e9b2a06c58ac9d04a5b13" id="r_a77e6366b9e9e9b2a06c58ac9d04a5b13"><td class="memItemLeft" align="right" valign="top"><a id="a77e6366b9e9e9b2a06c58ac9d04a5b13" name="a77e6366b9e9e9b2a06c58ac9d04a5b13"></a>
+std::list&lt; std::unique_ptr&lt; <a class="el" href="struct_i_static_entity.html">IStaticEntity</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>static_objects</b></td></tr>
+<tr class="separator:a77e6366b9e9e9b2a06c58ac9d04a5b13"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a10be2164b4b3ad1cb34e06f03f36cbe3" id="r_a10be2164b4b3ad1cb34e06f03f36cbe3"><td class="memItemLeft" align="right" valign="top"><a id="a10be2164b4b3ad1cb34e06f03f36cbe3" name="a10be2164b4b3ad1cb34e06f03f36cbe3"></a>
+<a class="el" href="class_pacman.html">Pacman</a>&#160;</td><td class="memItemRight" valign="bottom"><b>pacman</b></td></tr>
+<tr class="separator:a10be2164b4b3ad1cb34e06f03f36cbe3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a90b900683584a793d25a12023d34898c" id="r_a90b900683584a793d25a12023d34898c"><td class="memItemLeft" align="right" valign="top"><a id="a90b900683584a793d25a12023d34898c" name="a90b900683584a793d25a12023d34898c"></a>
+<a class="el" href="class_pacman.html">Pacman</a>&#160;</td><td class="memItemRight" valign="bottom"><b>pacman2</b></td></tr>
+<tr class="separator:a90b900683584a793d25a12023d34898c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0c1ce79151cde0717e99c022c7dd7c23" id="r_a0c1ce79151cde0717e99c022c7dd7c23"><td class="memItemLeft" align="right" valign="top"><a id="a0c1ce79151cde0717e99c022c7dd7c23" name="a0c1ce79151cde0717e99c022c7dd7c23"></a>
+bool&#160;</td><td class="memItemRight" valign="bottom"><b>screamer_active</b> = false</td></tr>
+<tr class="separator:a0c1ce79151cde0717e99c022c7dd7c23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5833cfc4506cf4a746ce40d8b47389cf" id="r_a5833cfc4506cf4a746ce40d8b47389cf"><td class="memItemLeft" align="right" valign="top"><a id="a5833cfc4506cf4a746ce40d8b47389cf" name="a5833cfc4506cf4a746ce40d8b47389cf"></a>
+float&#160;</td><td class="memItemRight" valign="bottom"><b>screamer_timer</b> = 0.0f</td></tr>
+<tr class="separator:a5833cfc4506cf4a746ce40d8b47389cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p>Контекст игры. Тут хранится состояние всего того, что происходит в лабиринте </p>
+<dl class="params"><dt>Аргументы</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">pacman</td><td>два пакмана (на случай игры на двоих) </td></tr>
+    <tr><td class="paramname">dynamic_objects</td><td>static_objects массивы сущностей </td></tr>
+    <tr><td class="paramname">State</td><td>состояние игры </td></tr>
+  </table>
+  </dd>
+</dl>
+</div><hr/>Объявления и описания членов структур находятся в файлах:<ul>
+<li>source/application/Context/<a class="el" href="_context_8h_source.html">Context.h</a></li>
+<li>source/application/Context/<b>Context.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="struct_game_context.html">GameContext</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/struct_i_drawable-members.html b/assets/docs/html/struct_i_drawable-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..ccb960fea8bc670a9926be3213165d6796661200
--- /dev/null
+++ b/assets/docs/html/struct_i_drawable-members.html
@@ -0,0 +1,122 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('struct_i_drawable.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">IDrawable Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="struct_i_drawable.html">IDrawable</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>draw_into</b>(sf::RenderWindow &amp;window)=0 (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IDrawable</b>()=default (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/struct_i_drawable.html b/assets/docs/html/struct_i_drawable.html
new file mode 100644
index 0000000000000000000000000000000000000000..4476afc08ed48d715dfd5e9b152f211dcfbb9b29
--- /dev/null
+++ b/assets/docs/html/struct_i_drawable.html
@@ -0,0 +1,188 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Структура IDrawable</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('struct_i_drawable.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="struct_i_drawable-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Структура IDrawable<span class="mlabels"><span class="mlabel abstract">abstract</span></span></div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Общий интерфейс для отрисовываемых сущностей и объектов  
+ <a href="#details">Подробнее...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_i_drawable_8h_source.html">IDrawable.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:IDrawable:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="struct_i_drawable.png" usemap="#IDrawable_map" alt=""/>
+  <map id="IDrawable_map" name="IDrawable_map">
+<area href="class_button.html" alt="Button" shape="rect" coords="0,56,95,80"/>
+<area href="class_choose_button.html" alt="ChooseButton" shape="rect" coords="105,56,200,80"/>
+<area href="struct_i_preparable.html" alt="IPreparable" shape="rect" coords="288,56,383,80"/>
+<area href="class_maze.html" alt="Maze" shape="rect" coords="393,56,488,80"/>
+<area href="class_menu.html" alt="Menu" shape="rect" coords="498,56,593,80"/>
+<area href="class_room.html" alt="Room" shape="rect" coords="603,56,698,80"/>
+<area href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт." alt="IEntity" shape="rect" coords="157,112,252,136"/>
+<area href="class_i_room_side.html" alt="IRoomSide" shape="rect" coords="420,112,515,136"/>
+<area href="struct_i_dynamic_entity.html" title="Динамические сущности, наследник IEntity -&gt; может выполнять какие-то действия" alt="IDynamicEntity" shape="rect" coords="52,168,147,192"/>
+<area href="struct_i_static_entity.html" title="Статические сущности, наследник IEntity -&gt; неперемещаемые объекты, с которыми будет взаимодействовать..." alt="IStaticEntity" shape="rect" coords="157,168,252,192"/>
+<area href="class_pacman.html" alt="Pacman" shape="rect" coords="262,168,357,192"/>
+<area href="class_pass.html" title="проход, который знает о двух комнатах, которые он связывает" alt="Pass" shape="rect" coords="367,168,462,192"/>
+<area href="class_wall.html" title="стена, которая хранит в себе информацию о том в какой комнате находится" alt="Wall" shape="rect" coords="472,168,567,192"/>
+<area href="class_enemy.html" title="Конкретный наследник Enemy - враг. Если пакман наткнется хотя бы на одного врага, то он умрет -&gt; уров..." alt="Enemy" shape="rect" coords="52,224,147,248"/>
+<area href="class_food.html" title="Наследник IStaticEntity - еда." alt="Food" shape="rect" coords="157,224,252,248"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:ada7415c7b262f490e05b41ffbf6e5dd5" id="r_ada7415c7b262f490e05b41ffbf6e5dd5"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ada7415c7b262f490e05b41ffbf6e5dd5">draw_into</a> (sf::RenderWindow &amp;window)=0</td></tr>
+<tr class="separator:ada7415c7b262f490e05b41ffbf6e5dd5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p>Общий интерфейс для отрисовываемых сущностей и объектов </p>
+</div><h2 class="groupheader">Методы</h2>
+<a id="ada7415c7b262f490e05b41ffbf6e5dd5" name="ada7415c7b262f490e05b41ffbf6e5dd5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ada7415c7b262f490e05b41ffbf6e5dd5">&#9670;&#160;</a></span>draw_into()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void IDrawable::draw_into </td>
+          <td>(</td>
+          <td class="paramtype">sf::RenderWindow &amp;</td>          <td class="paramname"><span class="paramname"><em>window</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel pure-virtual">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещается в <a class="el" href="class_menu.html#a4868e5ef14960d420dc79c307d1a78cb">Menu</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов структуры находятся в файле:<ul>
+<li>source/application/Drawable/<a class="el" href="_i_drawable_8h_source.html">IDrawable.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="struct_i_drawable.html">IDrawable</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/struct_i_drawable.png b/assets/docs/html/struct_i_drawable.png
new file mode 100644
index 0000000000000000000000000000000000000000..fd92dde2c4b2730e97e92c987350e6d7363adfda
Binary files /dev/null and b/assets/docs/html/struct_i_drawable.png differ
diff --git a/assets/docs/html/struct_i_dynamic_entity-members.html b/assets/docs/html/struct_i_dynamic_entity-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..5dac07899bc6115a922d15ad7fa84e5e3b742a39
--- /dev/null
+++ b/assets/docs/html/struct_i_dynamic_entity-members.html
@@ -0,0 +1,129 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('struct_i_dynamic_entity.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">IDynamicEntity Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="struct_i_dynamic_entity.html">IDynamicEntity</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>accept</b>(IVisitor *ptr_visitor)=0 (определено в <a class="el" href="class_i_visitable.html">IVisitable</a>)</td><td class="entry"><a class="el" href="class_i_visitable.html">IVisitable</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>action</b>()=0 (определено в <a class="el" href="struct_i_dynamic_entity.html">IDynamicEntity</a>)</td><td class="entry"><a class="el" href="struct_i_dynamic_entity.html">IDynamicEntity</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>clone</b>() const =0 (определено в <a class="el" href="struct_i_dynamic_entity.html">IDynamicEntity</a>)</td><td class="entry"><a class="el" href="struct_i_dynamic_entity.html">IDynamicEntity</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>draw_into</b>(sf::RenderWindow &amp;window)=0 (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_location</b>() (определено в <a class="el" href="class_i_entity.html">IEntity</a>)</td><td class="entry"><a class="el" href="class_i_entity.html">IEntity</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_ptr_room</b> (определено в <a class="el" href="class_i_entity.html">IEntity</a>)</td><td class="entry"><a class="el" href="class_i_entity.html">IEntity</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>prepare_for_drawing</b>()=0 (определено в <a class="el" href="struct_i_preparable.html">IPreparable</a>)</td><td class="entry"><a class="el" href="struct_i_preparable.html">IPreparable</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>set_location</b>(Room *ptr_room) (определено в <a class="el" href="class_i_entity.html">IEntity</a>)</td><td class="entry"><a class="el" href="class_i_entity.html">IEntity</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~IDrawable</b>()=default (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/struct_i_dynamic_entity.html b/assets/docs/html/struct_i_dynamic_entity.html
new file mode 100644
index 0000000000000000000000000000000000000000..d1243d2951c25ff234d62ffeffa24d688c33c274
--- /dev/null
+++ b/assets/docs/html/struct_i_dynamic_entity.html
@@ -0,0 +1,233 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Структура IDynamicEntity</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('struct_i_dynamic_entity.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="struct_i_dynamic_entity-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Структура IDynamicEntity<span class="mlabels"><span class="mlabel abstract">abstract</span></span></div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Динамические сущности, наследник <a class="el" href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт.">IEntity</a> -&gt; может выполнять какие-то действия  
+ <a href="#details">Подробнее...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_i_entity_8h_source.html">IEntity.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:IDynamicEntity:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="struct_i_dynamic_entity.png" usemap="#IDynamicEntity_map" alt=""/>
+  <map id="IDynamicEntity_map" name="IDynamicEntity_map">
+<area href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт." alt="IEntity" shape="rect" coords="0,112,95,136"/>
+<area href="class_i_visitable.html" alt="IVisitable" shape="rect" coords="105,112,200,136"/>
+<area href="struct_i_preparable.html" alt="IPreparable" shape="rect" coords="0,56,95,80"/>
+<area href="struct_i_drawable.html" title="Общий интерфейс для отрисовываемых сущностей и объектов" alt="IDrawable" shape="rect" coords="0,0,95,24"/>
+<area href="class_enemy.html" title="Конкретный наследник Enemy - враг. Если пакман наткнется хотя бы на одного врага, то он умрет -&gt; уров..." alt="Enemy" shape="rect" coords="52,224,147,248"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:ac777e69f7efc65612a85fffb62a29d59" id="r_ac777e69f7efc65612a85fffb62a29d59"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac777e69f7efc65612a85fffb62a29d59">action</a> ()=0</td></tr>
+<tr class="separator:ac777e69f7efc65612a85fffb62a29d59"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6395322bc20432dad2615f91273e6e2b" id="r_a6395322bc20432dad2615f91273e6e2b"><td class="memItemLeft" align="right" valign="top">virtual std::unique_ptr&lt; <a class="el" href="struct_i_dynamic_entity.html">IDynamicEntity</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6395322bc20432dad2615f91273e6e2b">clone</a> () const =0</td></tr>
+<tr class="separator:a6395322bc20432dad2615f91273e6e2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_i_entity"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_i_entity')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_i_entity.html">IEntity</a></td></tr>
+<tr class="memitem:a548495c468f307c780941faa5b4c08a8 inherit pub_methods_class_i_entity" id="r_a548495c468f307c780941faa5b4c08a8"><td class="memItemLeft" align="right" valign="top">
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_location</b> (<a class="el" href="class_room.html">Room</a> *ptr_room)</td></tr>
+<tr class="separator:a548495c468f307c780941faa5b4c08a8 inherit pub_methods_class_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab24f318dbb232b2feb00115b7124e256 inherit pub_methods_class_i_entity" id="r_ab24f318dbb232b2feb00115b7124e256"><td class="memItemLeft" align="right" valign="top">
+<a class="el" href="class_room.html">Room</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>get_location</b> ()</td></tr>
+<tr class="separator:ab24f318dbb232b2feb00115b7124e256 inherit pub_methods_class_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_struct_i_preparable"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_struct_i_preparable')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="struct_i_preparable.html">IPreparable</a></td></tr>
+<tr class="memitem:a4966353adbbc641e0ba44a287d3a4410 inherit pub_methods_struct_i_preparable" id="r_a4966353adbbc641e0ba44a287d3a4410"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_i_preparable.html#a4966353adbbc641e0ba44a287d3a4410">prepare_for_drawing</a> ()=0</td></tr>
+<tr class="separator:a4966353adbbc641e0ba44a287d3a4410 inherit pub_methods_struct_i_preparable"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_struct_i_drawable"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_struct_i_drawable')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="struct_i_drawable.html">IDrawable</a></td></tr>
+<tr class="memitem:ada7415c7b262f490e05b41ffbf6e5dd5 inherit pub_methods_struct_i_drawable" id="r_ada7415c7b262f490e05b41ffbf6e5dd5"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_i_drawable.html#ada7415c7b262f490e05b41ffbf6e5dd5">draw_into</a> (sf::RenderWindow &amp;window)=0</td></tr>
+<tr class="separator:ada7415c7b262f490e05b41ffbf6e5dd5 inherit pub_methods_struct_i_drawable"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_i_visitable"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_i_visitable')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_i_visitable.html">IVisitable</a></td></tr>
+<tr class="memitem:a5eca8bc2f0a588e5a25498fd6e4badbf inherit pub_methods_class_i_visitable" id="r_a5eca8bc2f0a588e5a25498fd6e4badbf"><td class="memItemLeft" align="right" valign="top">virtual std::unique_ptr&lt; <a class="el" href="class_i_game_event.html">IGameEvent</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_visitable.html#a5eca8bc2f0a588e5a25498fd6e4badbf">accept</a> (<a class="el" href="class_i_visitor.html">IVisitor</a> *ptr_visitor)=0</td></tr>
+<tr class="separator:a5eca8bc2f0a588e5a25498fd6e4badbf inherit pub_methods_class_i_visitable"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Дополнительные унаследованные члены</h2></td></tr>
+<tr class="inherit_header pro_attribs_class_i_entity"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_attribs_class_i_entity')"><img src="closed.png" alt="-"/>&#160;Защищенные данные унаследованные от <a class="el" href="class_i_entity.html">IEntity</a></td></tr>
+<tr class="memitem:a7d0bfa7b8516df82bd6de6b6283f0315 inherit pro_attribs_class_i_entity" id="r_a7d0bfa7b8516df82bd6de6b6283f0315"><td class="memItemLeft" align="right" valign="top">
+<a class="el" href="class_room.html">Room</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>m_ptr_room</b></td></tr>
+<tr class="separator:a7d0bfa7b8516df82bd6de6b6283f0315 inherit pro_attribs_class_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p>Динамические сущности, наследник <a class="el" href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт.">IEntity</a> -&gt; может выполнять какие-то действия </p>
+<p>Для исполнения разных действий (размножение, перемещение) виртуальный метод - action() Каждый кадр <a class="el" href="class_game_state.html" title="Взаимодействие врага с объектами лабиринта, что порождает игровые события">GameState</a> будет вызывать action() у всех имеющихся у него динамических сущностей</p><ul>
+<li>Чтобы скопировать статические сущности, применяем паттерн Prototype. Для этого создает возможность клонирования </li>
+</ul>
+</div><h2 class="groupheader">Методы</h2>
+<a id="ac777e69f7efc65612a85fffb62a29d59" name="ac777e69f7efc65612a85fffb62a29d59"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac777e69f7efc65612a85fffb62a29d59">&#9670;&#160;</a></span>action()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void IDynamicEntity::action </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel pure-virtual">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещается в <a class="el" href="class_enemy.html#a34d900423f808c057a766daca104c6f6">Enemy</a>.</p>
+
+</div>
+</div>
+<a id="a6395322bc20432dad2615f91273e6e2b" name="a6395322bc20432dad2615f91273e6e2b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6395322bc20432dad2615f91273e6e2b">&#9670;&#160;</a></span>clone()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual std::unique_ptr&lt; <a class="el" href="struct_i_dynamic_entity.html">IDynamicEntity</a> &gt; IDynamicEntity::clone </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel pure-virtual">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещается в <a class="el" href="class_enemy.html#aae122c696ec1c65f90d7625683183a67">Enemy</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов структуры находятся в файле:<ul>
+<li>source/application/Drawable/Entity/<a class="el" href="_i_entity_8h_source.html">IEntity.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="struct_i_dynamic_entity.html">IDynamicEntity</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/struct_i_dynamic_entity.png b/assets/docs/html/struct_i_dynamic_entity.png
new file mode 100644
index 0000000000000000000000000000000000000000..985b41ffad381bfb3292756b4aa9913888a5ebd5
Binary files /dev/null and b/assets/docs/html/struct_i_dynamic_entity.png differ
diff --git a/assets/docs/html/struct_i_preparable-members.html b/assets/docs/html/struct_i_preparable-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..1986369a555cf4786f078db4927be1e866c88b94
--- /dev/null
+++ b/assets/docs/html/struct_i_preparable-members.html
@@ -0,0 +1,123 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('struct_i_preparable.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">IPreparable Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="struct_i_preparable.html">IPreparable</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>draw_into</b>(sf::RenderWindow &amp;window)=0 (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>prepare_for_drawing</b>()=0 (определено в <a class="el" href="struct_i_preparable.html">IPreparable</a>)</td><td class="entry"><a class="el" href="struct_i_preparable.html">IPreparable</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~IDrawable</b>()=default (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/struct_i_preparable.html b/assets/docs/html/struct_i_preparable.html
new file mode 100644
index 0000000000000000000000000000000000000000..93330d552a60c2fc27000b5f1f43cc33e6e30e6f
--- /dev/null
+++ b/assets/docs/html/struct_i_preparable.html
@@ -0,0 +1,179 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Структура IPreparable</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('struct_i_preparable.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="struct_i_preparable-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Структура IPreparable<span class="mlabels"><span class="mlabel abstract">abstract</span></span></div></div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Граф наследования:IPreparable:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="struct_i_preparable.png" usemap="#IPreparable_map" alt=""/>
+  <map id="IPreparable_map" name="IPreparable_map">
+<area href="struct_i_drawable.html" title="Общий интерфейс для отрисовываемых сущностей и объектов" alt="IDrawable" shape="rect" coords="236,0,331,24"/>
+<area href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт." alt="IEntity" shape="rect" coords="105,112,200,136"/>
+<area href="class_i_room_side.html" alt="IRoomSide" shape="rect" coords="367,112,462,136"/>
+<area href="struct_i_dynamic_entity.html" title="Динамические сущности, наследник IEntity -&gt; может выполнять какие-то действия" alt="IDynamicEntity" shape="rect" coords="0,168,95,192"/>
+<area href="struct_i_static_entity.html" title="Статические сущности, наследник IEntity -&gt; неперемещаемые объекты, с которыми будет взаимодействовать..." alt="IStaticEntity" shape="rect" coords="105,168,200,192"/>
+<area href="class_pacman.html" alt="Pacman" shape="rect" coords="210,168,305,192"/>
+<area href="class_pass.html" title="проход, который знает о двух комнатах, которые он связывает" alt="Pass" shape="rect" coords="315,168,410,192"/>
+<area href="class_wall.html" title="стена, которая хранит в себе информацию о том в какой комнате находится" alt="Wall" shape="rect" coords="420,168,515,192"/>
+<area href="class_enemy.html" title="Конкретный наследник Enemy - враг. Если пакман наткнется хотя бы на одного врага, то он умрет -&gt; уров..." alt="Enemy" shape="rect" coords="0,224,95,248"/>
+<area href="class_food.html" title="Наследник IStaticEntity - еда." alt="Food" shape="rect" coords="105,224,200,248"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:a4966353adbbc641e0ba44a287d3a4410" id="r_a4966353adbbc641e0ba44a287d3a4410"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4966353adbbc641e0ba44a287d3a4410">prepare_for_drawing</a> ()=0</td></tr>
+<tr class="separator:a4966353adbbc641e0ba44a287d3a4410"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_struct_i_drawable"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_struct_i_drawable')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="struct_i_drawable.html">IDrawable</a></td></tr>
+<tr class="memitem:ada7415c7b262f490e05b41ffbf6e5dd5 inherit pub_methods_struct_i_drawable" id="r_ada7415c7b262f490e05b41ffbf6e5dd5"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_i_drawable.html#ada7415c7b262f490e05b41ffbf6e5dd5">draw_into</a> (sf::RenderWindow &amp;window)=0</td></tr>
+<tr class="separator:ada7415c7b262f490e05b41ffbf6e5dd5 inherit pub_methods_struct_i_drawable"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Методы</h2>
+<a id="a4966353adbbc641e0ba44a287d3a4410" name="a4966353adbbc641e0ba44a287d3a4410"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4966353adbbc641e0ba44a287d3a4410">&#9670;&#160;</a></span>prepare_for_drawing()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void IPreparable::prepare_for_drawing </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel pure-virtual">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещается в <a class="el" href="class_pacman.html#ad41930fae2878425f80e4fea614f3a3d">Pacman</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов структуры находятся в файле:<ul>
+<li>source/application/Drawable/<a class="el" href="_i_drawable_8h_source.html">IDrawable.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="struct_i_preparable.html">IPreparable</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/struct_i_preparable.png b/assets/docs/html/struct_i_preparable.png
new file mode 100644
index 0000000000000000000000000000000000000000..57ea6627af601555992e974b8481212b9f5608e8
Binary files /dev/null and b/assets/docs/html/struct_i_preparable.png differ
diff --git a/assets/docs/html/struct_i_state_manager-members.html b/assets/docs/html/struct_i_state_manager-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..820d2e7e191f9c280c47636d37541813914e1001
--- /dev/null
+++ b/assets/docs/html/struct_i_state_manager-members.html
@@ -0,0 +1,122 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('struct_i_state_manager.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">IStateManager Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="struct_i_state_manager.html">IStateManager</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_next_state</b>(std::unique_ptr&lt; IState &gt; &amp;&amp;state)=0 (определено в <a class="el" href="struct_i_state_manager.html">IStateManager</a>)</td><td class="entry"><a class="el" href="struct_i_state_manager.html">IStateManager</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IStateManager</b>()=default (определено в <a class="el" href="struct_i_state_manager.html">IStateManager</a>)</td><td class="entry"><a class="el" href="struct_i_state_manager.html">IStateManager</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/struct_i_state_manager.html b/assets/docs/html/struct_i_state_manager.html
new file mode 100644
index 0000000000000000000000000000000000000000..a56cf5d8a0c3fa31436033bc806032bf3c932581
--- /dev/null
+++ b/assets/docs/html/struct_i_state_manager.html
@@ -0,0 +1,140 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Структура IStateManager</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('struct_i_state_manager.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="struct_i_state_manager-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Структура IStateManager<span class="mlabels"><span class="mlabel abstract">abstract</span></span></div></div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Граф наследования:IStateManager:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="struct_i_state_manager.png" usemap="#IStateManager_map" alt=""/>
+  <map id="IStateManager_map" name="IStateManager_map">
+<area href="class_application.html" alt="Application" shape="rect" coords="0,56,94,80"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:ae23fbe23495fe8ccfb46544d07bdfcd5" id="r_ae23fbe23495fe8ccfb46544d07bdfcd5"><td class="memItemLeft" align="right" valign="top"><a id="ae23fbe23495fe8ccfb46544d07bdfcd5" name="ae23fbe23495fe8ccfb46544d07bdfcd5"></a>
+virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>set_next_state</b> (std::unique_ptr&lt; <a class="el" href="class_i_state.html">IState</a> &gt; &amp;&amp;state)=0</td></tr>
+<tr class="separator:ae23fbe23495fe8ccfb46544d07bdfcd5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<hr/>Объявления и описания членов структуры находятся в файле:<ul>
+<li>source/application/State/<a class="el" href="_i_state_8h_source.html">IState.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="struct_i_state_manager.html">IStateManager</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/struct_i_state_manager.png b/assets/docs/html/struct_i_state_manager.png
new file mode 100644
index 0000000000000000000000000000000000000000..7b7251555b4ee138cc6709d171fbc763c1337f5b
Binary files /dev/null and b/assets/docs/html/struct_i_state_manager.png differ
diff --git a/assets/docs/html/struct_i_static_entity-members.html b/assets/docs/html/struct_i_static_entity-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..065c317472fffe6b76c1c1975121dfdd203ec210
--- /dev/null
+++ b/assets/docs/html/struct_i_static_entity-members.html
@@ -0,0 +1,128 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('struct_i_static_entity.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">IStaticEntity Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="struct_i_static_entity.html">IStaticEntity</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>accept</b>(IVisitor *ptr_visitor)=0 (определено в <a class="el" href="class_i_visitable.html">IVisitable</a>)</td><td class="entry"><a class="el" href="class_i_visitable.html">IVisitable</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>clone</b>() const =0 (определено в <a class="el" href="struct_i_static_entity.html">IStaticEntity</a>)</td><td class="entry"><a class="el" href="struct_i_static_entity.html">IStaticEntity</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>draw_into</b>(sf::RenderWindow &amp;window)=0 (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>get_location</b>() (определено в <a class="el" href="class_i_entity.html">IEntity</a>)</td><td class="entry"><a class="el" href="class_i_entity.html">IEntity</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_ptr_room</b> (определено в <a class="el" href="class_i_entity.html">IEntity</a>)</td><td class="entry"><a class="el" href="class_i_entity.html">IEntity</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>prepare_for_drawing</b>()=0 (определено в <a class="el" href="struct_i_preparable.html">IPreparable</a>)</td><td class="entry"><a class="el" href="struct_i_preparable.html">IPreparable</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_location</b>(Room *ptr_room) (определено в <a class="el" href="class_i_entity.html">IEntity</a>)</td><td class="entry"><a class="el" href="class_i_entity.html">IEntity</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IDrawable</b>()=default (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/struct_i_static_entity.html b/assets/docs/html/struct_i_static_entity.html
new file mode 100644
index 0000000000000000000000000000000000000000..de830c00764f4baeca7ca21496f6409761f4d0ca
--- /dev/null
+++ b/assets/docs/html/struct_i_static_entity.html
@@ -0,0 +1,201 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Структура IStaticEntity</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('struct_i_static_entity.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="struct_i_static_entity-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Структура IStaticEntity<span class="mlabels"><span class="mlabel abstract">abstract</span></span></div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Статические сущности, наследник <a class="el" href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт.">IEntity</a> -&gt; неперемещаемые объекты, с которыми будет взаимодействовать Пакман Чтобы скопировать статические сущности, применяем паттерн Prototype. Для этого создает возможность клонирования  
+ <a href="#details">Подробнее...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_i_entity_8h_source.html">IEntity.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:IStaticEntity:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="struct_i_static_entity.png" usemap="#IStaticEntity_map" alt=""/>
+  <map id="IStaticEntity_map" name="IStaticEntity_map">
+<area href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт." alt="IEntity" shape="rect" coords="0,112,78,136"/>
+<area href="class_i_visitable.html" alt="IVisitable" shape="rect" coords="88,112,166,136"/>
+<area href="struct_i_preparable.html" alt="IPreparable" shape="rect" coords="0,56,78,80"/>
+<area href="struct_i_drawable.html" title="Общий интерфейс для отрисовываемых сущностей и объектов" alt="IDrawable" shape="rect" coords="0,0,78,24"/>
+<area href="class_food.html" title="Наследник IStaticEntity - еда." alt="Food" shape="rect" coords="44,224,122,248"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:aa6c37b4115c0512d824b6501d13f6155" id="r_aa6c37b4115c0512d824b6501d13f6155"><td class="memItemLeft" align="right" valign="top">virtual std::unique_ptr&lt; <a class="el" href="struct_i_static_entity.html">IStaticEntity</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa6c37b4115c0512d824b6501d13f6155">clone</a> () const =0</td></tr>
+<tr class="separator:aa6c37b4115c0512d824b6501d13f6155"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_i_entity"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_i_entity')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_i_entity.html">IEntity</a></td></tr>
+<tr class="memitem:a548495c468f307c780941faa5b4c08a8 inherit pub_methods_class_i_entity" id="r_a548495c468f307c780941faa5b4c08a8"><td class="memItemLeft" align="right" valign="top">
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_location</b> (<a class="el" href="class_room.html">Room</a> *ptr_room)</td></tr>
+<tr class="separator:a548495c468f307c780941faa5b4c08a8 inherit pub_methods_class_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab24f318dbb232b2feb00115b7124e256 inherit pub_methods_class_i_entity" id="r_ab24f318dbb232b2feb00115b7124e256"><td class="memItemLeft" align="right" valign="top">
+<a class="el" href="class_room.html">Room</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>get_location</b> ()</td></tr>
+<tr class="separator:ab24f318dbb232b2feb00115b7124e256 inherit pub_methods_class_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_struct_i_preparable"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_struct_i_preparable')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="struct_i_preparable.html">IPreparable</a></td></tr>
+<tr class="memitem:a4966353adbbc641e0ba44a287d3a4410 inherit pub_methods_struct_i_preparable" id="r_a4966353adbbc641e0ba44a287d3a4410"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_i_preparable.html#a4966353adbbc641e0ba44a287d3a4410">prepare_for_drawing</a> ()=0</td></tr>
+<tr class="separator:a4966353adbbc641e0ba44a287d3a4410 inherit pub_methods_struct_i_preparable"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_struct_i_drawable"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_struct_i_drawable')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="struct_i_drawable.html">IDrawable</a></td></tr>
+<tr class="memitem:ada7415c7b262f490e05b41ffbf6e5dd5 inherit pub_methods_struct_i_drawable" id="r_ada7415c7b262f490e05b41ffbf6e5dd5"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_i_drawable.html#ada7415c7b262f490e05b41ffbf6e5dd5">draw_into</a> (sf::RenderWindow &amp;window)=0</td></tr>
+<tr class="separator:ada7415c7b262f490e05b41ffbf6e5dd5 inherit pub_methods_struct_i_drawable"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_i_visitable"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_i_visitable')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_i_visitable.html">IVisitable</a></td></tr>
+<tr class="memitem:a5eca8bc2f0a588e5a25498fd6e4badbf inherit pub_methods_class_i_visitable" id="r_a5eca8bc2f0a588e5a25498fd6e4badbf"><td class="memItemLeft" align="right" valign="top">virtual std::unique_ptr&lt; <a class="el" href="class_i_game_event.html">IGameEvent</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_visitable.html#a5eca8bc2f0a588e5a25498fd6e4badbf">accept</a> (<a class="el" href="class_i_visitor.html">IVisitor</a> *ptr_visitor)=0</td></tr>
+<tr class="separator:a5eca8bc2f0a588e5a25498fd6e4badbf inherit pub_methods_class_i_visitable"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Дополнительные унаследованные члены</h2></td></tr>
+<tr class="inherit_header pro_attribs_class_i_entity"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_attribs_class_i_entity')"><img src="closed.png" alt="-"/>&#160;Защищенные данные унаследованные от <a class="el" href="class_i_entity.html">IEntity</a></td></tr>
+<tr class="memitem:a7d0bfa7b8516df82bd6de6b6283f0315 inherit pro_attribs_class_i_entity" id="r_a7d0bfa7b8516df82bd6de6b6283f0315"><td class="memItemLeft" align="right" valign="top">
+<a class="el" href="class_room.html">Room</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>m_ptr_room</b></td></tr>
+<tr class="separator:a7d0bfa7b8516df82bd6de6b6283f0315 inherit pro_attribs_class_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p>Статические сущности, наследник <a class="el" href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт.">IEntity</a> -&gt; неперемещаемые объекты, с которыми будет взаимодействовать Пакман Чтобы скопировать статические сущности, применяем паттерн Prototype. Для этого создает возможность клонирования </p>
+</div><h2 class="groupheader">Методы</h2>
+<a id="aa6c37b4115c0512d824b6501d13f6155" name="aa6c37b4115c0512d824b6501d13f6155"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa6c37b4115c0512d824b6501d13f6155">&#9670;&#160;</a></span>clone()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual std::unique_ptr&lt; <a class="el" href="struct_i_static_entity.html">IStaticEntity</a> &gt; IStaticEntity::clone </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel pure-virtual">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещается в <a class="el" href="class_food.html#a3363e490287b67049c6771f56911d582">Food</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов структуры находятся в файле:<ul>
+<li>source/application/Drawable/Entity/<a class="el" href="_i_entity_8h_source.html">IEntity.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="struct_i_static_entity.html">IStaticEntity</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/struct_i_static_entity.png b/assets/docs/html/struct_i_static_entity.png
new file mode 100644
index 0000000000000000000000000000000000000000..f5e58b7df25bef6f16918610319218bda21ec560
Binary files /dev/null and b/assets/docs/html/struct_i_static_entity.png differ
diff --git a/assets/docs/html/struct_my_assets__one-members.html b/assets/docs/html/struct_my_assets__one-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..bae1d1c9c12dabec45789df8a20cdedf04fbd07d
--- /dev/null
+++ b/assets/docs/html/struct_my_assets__one-members.html
@@ -0,0 +1,128 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('struct_my_assets__one.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">MyAssets_one Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetFont</b>() (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>GetSceamer</b>() (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetScreamerTexture</b>() (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>GetSound</b>() (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetSoundInGame</b>() (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>GetSoundLost</b>() (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetSoundWin</b>() (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>MyAssets_one</b>()=delete (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/struct_my_assets__one.html b/assets/docs/html/struct_my_assets__one.html
new file mode 100644
index 0000000000000000000000000000000000000000..dabf2bca1da828e70ee202afaad03b474c25975c
--- /dev/null
+++ b/assets/docs/html/struct_my_assets__one.html
@@ -0,0 +1,157 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Структура MyAssets_one</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('struct_my_assets__one.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-static-methods">Открытые статические члены</a> &#124;
+<a href="struct_my_assets__one-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Структура MyAssets_one</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>загрузка текстур, звука, шрифта  
+ <a href="#details">Подробнее...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_texture___sound_8h_source.html">Texture_Sound.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
+Открытые статические члены</h2></td></tr>
+<tr class="memitem:a71fa22a441cee770a85771a0851719e7" id="r_a71fa22a441cee770a85771a0851719e7"><td class="memItemLeft" align="right" valign="top"><a id="a71fa22a441cee770a85771a0851719e7" name="a71fa22a441cee770a85771a0851719e7"></a>
+static sf::Font &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>GetFont</b> ()</td></tr>
+<tr class="separator:a71fa22a441cee770a85771a0851719e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aff97e0aa7085508f883cb455c2b2132c" id="r_aff97e0aa7085508f883cb455c2b2132c"><td class="memItemLeft" align="right" valign="top"><a id="aff97e0aa7085508f883cb455c2b2132c" name="aff97e0aa7085508f883cb455c2b2132c"></a>
+static sf::Texture &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>GetScreamerTexture</b> ()</td></tr>
+<tr class="separator:aff97e0aa7085508f883cb455c2b2132c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a79a84a79fc7d086ef7967d5ff961fee1" id="r_a79a84a79fc7d086ef7967d5ff961fee1"><td class="memItemLeft" align="right" valign="top"><a id="a79a84a79fc7d086ef7967d5ff961fee1" name="a79a84a79fc7d086ef7967d5ff961fee1"></a>
+static sf::SoundBuffer &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>GetSound</b> ()</td></tr>
+<tr class="separator:a79a84a79fc7d086ef7967d5ff961fee1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a92561945edd06668f0ddc11ea5f67c7c" id="r_a92561945edd06668f0ddc11ea5f67c7c"><td class="memItemLeft" align="right" valign="top"><a id="a92561945edd06668f0ddc11ea5f67c7c" name="a92561945edd06668f0ddc11ea5f67c7c"></a>
+static sf::SoundBuffer &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>GetSoundWin</b> ()</td></tr>
+<tr class="separator:a92561945edd06668f0ddc11ea5f67c7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a89ff6566992c3f5bb1d108cc2a80a060" id="r_a89ff6566992c3f5bb1d108cc2a80a060"><td class="memItemLeft" align="right" valign="top"><a id="a89ff6566992c3f5bb1d108cc2a80a060" name="a89ff6566992c3f5bb1d108cc2a80a060"></a>
+static sf::SoundBuffer &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>GetSoundLost</b> ()</td></tr>
+<tr class="separator:a89ff6566992c3f5bb1d108cc2a80a060"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad7aa9d1eb14832301ec29298e23577ca" id="r_ad7aa9d1eb14832301ec29298e23577ca"><td class="memItemLeft" align="right" valign="top"><a id="ad7aa9d1eb14832301ec29298e23577ca" name="ad7aa9d1eb14832301ec29298e23577ca"></a>
+static sf::SoundBuffer &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>GetSoundInGame</b> ()</td></tr>
+<tr class="separator:ad7aa9d1eb14832301ec29298e23577ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a6be7705daaff0133da6fbc0c3c7877" id="r_a4a6be7705daaff0133da6fbc0c3c7877"><td class="memItemLeft" align="right" valign="top"><a id="a4a6be7705daaff0133da6fbc0c3c7877" name="a4a6be7705daaff0133da6fbc0c3c7877"></a>
+static sf::SoundBuffer &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>GetSceamer</b> ()</td></tr>
+<tr class="separator:a4a6be7705daaff0133da6fbc0c3c7877"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p>загрузка текстур, звука, шрифта </p>
+</div><hr/>Объявления и описания членов структур находятся в файлах:<ul>
+<li>source/application/Assets/<a class="el" href="_texture___sound_8h_source.html">Texture_Sound.h</a></li>
+<li>source/application/Assets/<b>Texture_Sound.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/struct_screamer_event-members.html b/assets/docs/html/struct_screamer_event-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..0de93a875c7d6181ca7ff20d43fc9dfb6de2d016
--- /dev/null
+++ b/assets/docs/html/struct_screamer_event-members.html
@@ -0,0 +1,125 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('struct_screamer_event.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">ScreamerEvent Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="struct_screamer_event.html">ScreamerEvent</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>add_observer</b>(IObserver *observer) (определено в <a class="el" href="class_i_game_event.html">IGameEvent</a>)</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>handle</b>(GameContext *context) override (определено в <a class="el" href="struct_screamer_event.html">ScreamerEvent</a>)</td><td class="entry"><a class="el" href="struct_screamer_event.html">ScreamerEvent</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_sound</b> (определено в <a class="el" href="struct_screamer_event.html">ScreamerEvent</a>)</td><td class="entry"><a class="el" href="struct_screamer_event.html">ScreamerEvent</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>notify</b>() const (определено в <a class="el" href="class_i_game_event.html">IGameEvent</a>)</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">~IGameEvent</a>()=default</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/struct_screamer_event.html b/assets/docs/html/struct_screamer_event.html
new file mode 100644
index 0000000000000000000000000000000000000000..76bc2c255d35f8e6da897fd6b5c47010573f7d4b
--- /dev/null
+++ b/assets/docs/html/struct_screamer_event.html
@@ -0,0 +1,196 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Структура ScreamerEvent</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('struct_screamer_event.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="#pub-attribs">Открытые атрибуты</a> &#124;
+<a href="struct_screamer_event-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Структура ScreamerEvent</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Скример  
+ <a href="#details">Подробнее...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_i_game_event_8h_source.html">IGameEvent.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:ScreamerEvent:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="struct_screamer_event.png" usemap="#ScreamerEvent_map" alt=""/>
+  <map id="ScreamerEvent_map" name="ScreamerEvent_map">
+<area href="class_i_game_event.html" title="Абстрактрый класс для различных игровых событий" alt="IGameEvent" shape="rect" coords="0,0,99,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:ac120405fb825ae4e702cd17c5ea41981" id="r_ac120405fb825ae4e702cd17c5ea41981"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac120405fb825ae4e702cd17c5ea41981">handle</a> (<a class="el" href="struct_game_context.html">GameContext</a> *context) override</td></tr>
+<tr class="separator:ac120405fb825ae4e702cd17c5ea41981"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_i_game_event"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_i_game_event')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_i_game_event.html">IGameEvent</a></td></tr>
+<tr class="memitem:ae84f5f2b3d3bd7834e334c4e6fcde711 inherit pub_methods_class_i_game_event" id="r_ae84f5f2b3d3bd7834e334c4e6fcde711"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">~IGameEvent</a> ()=default</td></tr>
+<tr class="separator:ae84f5f2b3d3bd7834e334c4e6fcde711 inherit pub_methods_class_i_game_event"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b231dafdf4bdbc98f7d75b5205a8b99 inherit pub_methods_class_i_game_event" id="r_a6b231dafdf4bdbc98f7d75b5205a8b99"><td class="memItemLeft" align="right" valign="top">
+void&#160;</td><td class="memItemRight" valign="bottom"><b>add_observer</b> (<a class="el" href="class_i_observer.html">IObserver</a> *observer)</td></tr>
+<tr class="separator:a6b231dafdf4bdbc98f7d75b5205a8b99 inherit pub_methods_class_i_game_event"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
+Открытые атрибуты</h2></td></tr>
+<tr class="memitem:a32b9113ddd34caf675939799931c22bf" id="r_a32b9113ddd34caf675939799931c22bf"><td class="memItemLeft" align="right" valign="top"><a id="a32b9113ddd34caf675939799931c22bf" name="a32b9113ddd34caf675939799931c22bf"></a>
+sf::Sound&#160;</td><td class="memItemRight" valign="bottom"><b>m_sound</b></td></tr>
+<tr class="separator:a32b9113ddd34caf675939799931c22bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Дополнительные унаследованные члены</h2></td></tr>
+<tr class="inherit_header pro_methods_class_i_game_event"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_methods_class_i_game_event')"><img src="closed.png" alt="-"/>&#160;Защищенные члены унаследованные от <a class="el" href="class_i_game_event.html">IGameEvent</a></td></tr>
+<tr class="memitem:a1bc7533cd09ababa60363e5afbb7e787 inherit pro_methods_class_i_game_event" id="r_a1bc7533cd09ababa60363e5afbb7e787"><td class="memItemLeft" align="right" valign="top">
+void&#160;</td><td class="memItemRight" valign="bottom"><b>notify</b> () const</td></tr>
+<tr class="separator:a1bc7533cd09ababa60363e5afbb7e787 inherit pro_methods_class_i_game_event"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p>Скример </p>
+<p>Такое событие возникает при взаимодействии пакмана с едой, где под едой скрывается скример </p>
+</div><h2 class="groupheader">Методы</h2>
+<a id="ac120405fb825ae4e702cd17c5ea41981" name="ac120405fb825ae4e702cd17c5ea41981"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac120405fb825ae4e702cd17c5ea41981">&#9670;&#160;</a></span>handle()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void ScreamerEvent::handle </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="struct_game_context.html">GameContext</a> *</td>          <td class="paramname"><span class="paramname"><em>context</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="class_i_game_event.html">IGameEvent</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов структур находятся в файлах:<ul>
+<li>source/application/Event/<a class="el" href="_i_game_event_8h_source.html">IGameEvent.h</a></li>
+<li>source/application/Event/<b>IGameEvent.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="struct_screamer_event.html">ScreamerEvent</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/struct_screamer_event.png b/assets/docs/html/struct_screamer_event.png
new file mode 100644
index 0000000000000000000000000000000000000000..193525c2a0be11d1a5c67fd07f8024e2dc15aa4c
Binary files /dev/null and b/assets/docs/html/struct_screamer_event.png differ
diff --git a/assets/docs/html/struct_select_state-members.html b/assets/docs/html/struct_select_state-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..287dc0d459aa9b57de061cacb9bf6de393297613
--- /dev/null
+++ b/assets/docs/html/struct_select_state-members.html
@@ -0,0 +1,132 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('struct_select_state.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">SelectState Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="struct_select_state.html">SelectState</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>do_step</b>() override (определено в <a class="el" href="struct_select_state.html">SelectState</a>)</td><td class="entry"><a class="el" href="struct_select_state.html">SelectState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>event_handling</b>() override (определено в <a class="el" href="struct_select_state.html">SelectState</a>)</td><td class="entry"><a class="el" href="struct_select_state.html">SelectState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>IState</b>(IStateManager &amp;state_manager) (определено в <a class="el" href="class_i_state.html">IState</a>)</td><td class="entry"><a class="el" href="class_i_state.html">IState</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>IWindowKeeper</b>(const sf::VideoMode &amp;video_mode, const std::string &amp;window_title) (определено в <a class="el" href="class_i_window_keeper.html">IWindowKeeper</a>)</td><td class="entry"><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_state_manager</b> (определено в <a class="el" href="class_i_state.html">IState</a>)</td><td class="entry"><a class="el" href="class_i_state.html">IState</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_i_window_keeper.html#aef0780725b6f210bcbeb3b03da2445b8">m_window</a></td><td class="entry"><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="struct_select_state.html#a52b35ea72577fb2d5429daf43f9110e7">render</a>() override</td><td class="entry"><a class="el" href="struct_select_state.html">SelectState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="struct_select_state.html#af3cc640f19d315eb79b7c9c0673a6562">SelectState</a>(IStateManager &amp;state_manager, const sf::VideoMode &amp;video_mode, const std::string &amp;window_title)</td><td class="entry"><a class="el" href="struct_select_state.html">SelectState</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_texture</b>(MyTexture *ptr_texture) (определено в <a class="el" href="struct_select_state.html">SelectState</a>)</td><td class="entry"><a class="el" href="struct_select_state.html">SelectState</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="struct_select_state.html#af82dbfa9bc9fc892d55baabc3f5b5243">update</a>() override</td><td class="entry"><a class="el" href="struct_select_state.html">SelectState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~IState</b>()=default (определено в <a class="el" href="class_i_state.html">IState</a>)</td><td class="entry"><a class="el" href="class_i_state.html">IState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IWindowKeeper</b>()=default (определено в <a class="el" href="class_i_window_keeper.html">IWindowKeeper</a>)</td><td class="entry"><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/struct_select_state.html b/assets/docs/html/struct_select_state.html
new file mode 100644
index 0000000000000000000000000000000000000000..a8306a708dedd62a80077dcbbd50d5aa321db72c
--- /dev/null
+++ b/assets/docs/html/struct_select_state.html
@@ -0,0 +1,320 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Структура SelectState</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('struct_select_state.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="struct_select_state-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Структура SelectState</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="struct_select_state.html" title="SelectState - состояние, при котором происходит выбор уровня и выход из игры.">SelectState</a> - состояние, при котором происходит выбор уровня и выход из игры.  
+ <a href="#details">Подробнее...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_select_state_8h_source.html">SelectState.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:SelectState:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="struct_select_state.png" usemap="#SelectState_map" alt=""/>
+  <map id="SelectState_map" name="SelectState_map">
+<area href="class_i_state.html" alt="IState" shape="rect" coords="0,0,100,24"/>
+<area href="class_i_window_keeper.html" alt="IWindowKeeper" shape="rect" coords="110,0,210,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:af3cc640f19d315eb79b7c9c0673a6562" id="r_af3cc640f19d315eb79b7c9c0673a6562"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af3cc640f19d315eb79b7c9c0673a6562">SelectState</a> (<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;state_manager, const sf::VideoMode &amp;video_mode, const std::string &amp;window_title)</td></tr>
+<tr class="separator:af3cc640f19d315eb79b7c9c0673a6562"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a42934d0842634240dafe15af750a6090" id="r_a42934d0842634240dafe15af750a6090"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a42934d0842634240dafe15af750a6090">event_handling</a> () override</td></tr>
+<tr class="separator:a42934d0842634240dafe15af750a6090"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a29aa6f7798ddcc3da5a6cfbad6104d7d" id="r_a29aa6f7798ddcc3da5a6cfbad6104d7d"><td class="memItemLeft" align="right" valign="top"><a id="a29aa6f7798ddcc3da5a6cfbad6104d7d" name="a29aa6f7798ddcc3da5a6cfbad6104d7d"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_texture</b> (<a class="el" href="class_my_texture.html">MyTexture</a> *ptr_texture)</td></tr>
+<tr class="separator:a29aa6f7798ddcc3da5a6cfbad6104d7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af82dbfa9bc9fc892d55baabc3f5b5243" id="r_af82dbfa9bc9fc892d55baabc3f5b5243"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af82dbfa9bc9fc892d55baabc3f5b5243">update</a> () override</td></tr>
+<tr class="separator:af82dbfa9bc9fc892d55baabc3f5b5243"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52b35ea72577fb2d5429daf43f9110e7" id="r_a52b35ea72577fb2d5429daf43f9110e7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a52b35ea72577fb2d5429daf43f9110e7">render</a> () override</td></tr>
+<tr class="separator:a52b35ea72577fb2d5429daf43f9110e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ed12333bf35a4aac5878b44be220875" id="r_a6ed12333bf35a4aac5878b44be220875"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6ed12333bf35a4aac5878b44be220875">do_step</a> () override</td></tr>
+<tr class="separator:a6ed12333bf35a4aac5878b44be220875"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_i_state"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_i_state')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_i_state.html">IState</a></td></tr>
+<tr class="memitem:af6af0f026f832dd82a6989ba54c5bf25 inherit pub_methods_class_i_state" id="r_af6af0f026f832dd82a6989ba54c5bf25"><td class="memItemLeft" align="right" valign="top">
+&#160;</td><td class="memItemRight" valign="bottom"><b>IState</b> (<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;state_manager)</td></tr>
+<tr class="separator:af6af0f026f832dd82a6989ba54c5bf25 inherit pub_methods_class_i_state"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_i_window_keeper"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_i_window_keeper')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td></tr>
+<tr class="memitem:a5d2b968accf27ddf1b637e166dbf2243 inherit pub_methods_class_i_window_keeper" id="r_a5d2b968accf27ddf1b637e166dbf2243"><td class="memItemLeft" align="right" valign="top">
+&#160;</td><td class="memItemRight" valign="bottom"><b>IWindowKeeper</b> (const sf::VideoMode &amp;video_mode, const std::string &amp;window_title)</td></tr>
+<tr class="separator:a5d2b968accf27ddf1b637e166dbf2243 inherit pub_methods_class_i_window_keeper"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Дополнительные унаследованные члены</h2></td></tr>
+<tr class="inherit_header pro_attribs_class_i_state"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_attribs_class_i_state')"><img src="closed.png" alt="-"/>&#160;Защищенные данные унаследованные от <a class="el" href="class_i_state.html">IState</a></td></tr>
+<tr class="memitem:a394ae1a10e9e1d0bb9d0a14d59ef385f inherit pro_attribs_class_i_state" id="r_a394ae1a10e9e1d0bb9d0a14d59ef385f"><td class="memItemLeft" align="right" valign="top">
+<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>m_state_manager</b></td></tr>
+<tr class="separator:a394ae1a10e9e1d0bb9d0a14d59ef385f inherit pro_attribs_class_i_state"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_class_i_window_keeper"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_attribs_class_i_window_keeper')"><img src="closed.png" alt="-"/>&#160;Защищенные данные унаследованные от <a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td></tr>
+<tr class="memitem:aef0780725b6f210bcbeb3b03da2445b8 inherit pro_attribs_class_i_window_keeper" id="r_aef0780725b6f210bcbeb3b03da2445b8"><td class="memItemLeft" align="right" valign="top">sf::RenderWindow&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_window_keeper.html#aef0780725b6f210bcbeb3b03da2445b8">m_window</a></td></tr>
+<tr class="separator:aef0780725b6f210bcbeb3b03da2445b8 inherit pro_attribs_class_i_window_keeper"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p><a class="el" href="struct_select_state.html" title="SelectState - состояние, при котором происходит выбор уровня и выход из игры.">SelectState</a> - состояние, при котором происходит выбор уровня и выход из игры. </p>
+</div><h2 class="groupheader">Конструктор(ы)</h2>
+<a id="af3cc640f19d315eb79b7c9c0673a6562" name="af3cc640f19d315eb79b7c9c0673a6562"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af3cc640f19d315eb79b7c9c0673a6562">&#9670;&#160;</a></span>SelectState()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">SelectState::SelectState </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>state_manager</em></span>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const sf::VideoMode &amp;</td>          <td class="paramname"><span class="paramname"><em>video_mode</em></span>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const std::string &amp;</td>          <td class="paramname"><span class="paramname"><em>window_title</em></span>&#160;)</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>В конструкторе делегирует аргументы с режимом и названием окна конструктору <a class="el" href="class_i_window_keeper.html">IWindowKeeper</a> В конструктор <a class="el" href="class_menu.html">Menu</a> отправляет аргумент со ссылкой на менеджера состояний </p>
+
+</div>
+</div>
+<h2 class="groupheader">Методы</h2>
+<a id="a6ed12333bf35a4aac5878b44be220875" name="a6ed12333bf35a4aac5878b44be220875"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6ed12333bf35a4aac5878b44be220875">&#9670;&#160;</a></span>do_step()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool SelectState::do_step </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="class_i_state.html">IState</a>.</p>
+
+</div>
+</div>
+<a id="a42934d0842634240dafe15af750a6090" name="a42934d0842634240dafe15af750a6090"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a42934d0842634240dafe15af750a6090">&#9670;&#160;</a></span>event_handling()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void SelectState::event_handling </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="class_i_window_keeper.html">IWindowKeeper</a>.</p>
+
+</div>
+</div>
+<a id="a52b35ea72577fb2d5429daf43f9110e7" name="a52b35ea72577fb2d5429daf43f9110e7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a52b35ea72577fb2d5429daf43f9110e7">&#9670;&#160;</a></span>render()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void SelectState::render </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>обновление сцены </p>
+</blockquote>
+
+<p>Замещает <a class="el" href="class_i_window_keeper.html#a973ef4befa8fd3b1fbb7e05a2c5904da">IWindowKeeper</a>.</p>
+
+</div>
+</div>
+<a id="af82dbfa9bc9fc892d55baabc3f5b5243" name="af82dbfa9bc9fc892d55baabc3f5b5243"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af82dbfa9bc9fc892d55baabc3f5b5243">&#9670;&#160;</a></span>update()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void SelectState::update </td>
+          <td>(</td>
+          <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>обработка событий окна </p>
+</blockquote>
+
+<p>Замещает <a class="el" href="class_i_window_keeper.html#a46683ebaa51a36a8bb6bb22ed12b83b7">IWindowKeeper</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов структур находятся в файлах:<ul>
+<li>source/application/State/<a class="el" href="_select_state_8h_source.html">SelectState.h</a></li>
+<li>source/application/State/<b>SelectState.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="struct_select_state.html">SelectState</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/struct_select_state.js b/assets/docs/html/struct_select_state.js
new file mode 100644
index 0000000000000000000000000000000000000000..005ee11075bf312d3d649a210734064f64584b2d
--- /dev/null
+++ b/assets/docs/html/struct_select_state.js
@@ -0,0 +1,6 @@
+var struct_select_state =
+[
+    [ "SelectState", "struct_select_state.html#af3cc640f19d315eb79b7c9c0673a6562", null ],
+    [ "render", "struct_select_state.html#a52b35ea72577fb2d5429daf43f9110e7", null ],
+    [ "update", "struct_select_state.html#af82dbfa9bc9fc892d55baabc3f5b5243", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/struct_select_state.png b/assets/docs/html/struct_select_state.png
new file mode 100644
index 0000000000000000000000000000000000000000..5f8b2b0f9b05d90f17a9eb59d6de0110d78ddfc1
Binary files /dev/null and b/assets/docs/html/struct_select_state.png differ
diff --git a/assets/docs/html/struct_theme_colors-members.html b/assets/docs/html/struct_theme_colors-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..014eb6f991414aff13ea0ff7269d43d1558cc8db
--- /dev/null
+++ b/assets/docs/html/struct_theme_colors-members.html
@@ -0,0 +1,138 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('struct_theme_colors.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">ThemeColors Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="struct_theme_colors.html">ThemeColors</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>button_fill</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>button_frame</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>button_selection</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>button_text</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>button_text_score</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>game_background_ingame</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>game_background_lost</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>game_background_win</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>game_enemy</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>game_food</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>game_pacman</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>game_pacman_invisible</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>game_room</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>game_wall</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>room_color</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>select_level_background</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>title_text</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>wall_color</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/struct_theme_colors.html b/assets/docs/html/struct_theme_colors.html
new file mode 100644
index 0000000000000000000000000000000000000000..2382805ef6bc17574ff83a0af3874de7316052c3
--- /dev/null
+++ b/assets/docs/html/struct_theme_colors.html
@@ -0,0 +1,182 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Структура ThemeColors</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('struct_theme_colors.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-attribs">Открытые атрибуты</a> &#124;
+<a href="struct_theme_colors-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Структура ThemeColors</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
+Открытые атрибуты</h2></td></tr>
+<tr class="memitem:a7e6853ad92cdd20d0bc972785c729dfe" id="r_a7e6853ad92cdd20d0bc972785c729dfe"><td class="memItemLeft" align="right" valign="top"><a id="a7e6853ad92cdd20d0bc972785c729dfe" name="a7e6853ad92cdd20d0bc972785c729dfe"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>button_text</b></td></tr>
+<tr class="separator:a7e6853ad92cdd20d0bc972785c729dfe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adc2758350feba381e831e079431b1f49" id="r_adc2758350feba381e831e079431b1f49"><td class="memItemLeft" align="right" valign="top"><a id="adc2758350feba381e831e079431b1f49" name="adc2758350feba381e831e079431b1f49"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>button_fill</b></td></tr>
+<tr class="separator:adc2758350feba381e831e079431b1f49"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a113472858e4151bed0e43203f31c6192" id="r_a113472858e4151bed0e43203f31c6192"><td class="memItemLeft" align="right" valign="top"><a id="a113472858e4151bed0e43203f31c6192" name="a113472858e4151bed0e43203f31c6192"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>button_selection</b></td></tr>
+<tr class="separator:a113472858e4151bed0e43203f31c6192"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad808b1f08ba6edff3802389436a1958e" id="r_ad808b1f08ba6edff3802389436a1958e"><td class="memItemLeft" align="right" valign="top"><a id="ad808b1f08ba6edff3802389436a1958e" name="ad808b1f08ba6edff3802389436a1958e"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>button_frame</b></td></tr>
+<tr class="separator:ad808b1f08ba6edff3802389436a1958e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f81700886febcec01f79d3196914f2c" id="r_a6f81700886febcec01f79d3196914f2c"><td class="memItemLeft" align="right" valign="top"><a id="a6f81700886febcec01f79d3196914f2c" name="a6f81700886febcec01f79d3196914f2c"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>select_level_background</b></td></tr>
+<tr class="separator:a6f81700886febcec01f79d3196914f2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a003f79702deae034f387b9dfb80bb3" id="r_a4a003f79702deae034f387b9dfb80bb3"><td class="memItemLeft" align="right" valign="top"><a id="a4a003f79702deae034f387b9dfb80bb3" name="a4a003f79702deae034f387b9dfb80bb3"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>game_background_ingame</b></td></tr>
+<tr class="separator:a4a003f79702deae034f387b9dfb80bb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a72a76b1b214df7e8c9c4e548709287e7" id="r_a72a76b1b214df7e8c9c4e548709287e7"><td class="memItemLeft" align="right" valign="top"><a id="a72a76b1b214df7e8c9c4e548709287e7" name="a72a76b1b214df7e8c9c4e548709287e7"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>game_background_win</b></td></tr>
+<tr class="separator:a72a76b1b214df7e8c9c4e548709287e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0e52c3e335db05f6703201106c190e22" id="r_a0e52c3e335db05f6703201106c190e22"><td class="memItemLeft" align="right" valign="top"><a id="a0e52c3e335db05f6703201106c190e22" name="a0e52c3e335db05f6703201106c190e22"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>game_background_lost</b></td></tr>
+<tr class="separator:a0e52c3e335db05f6703201106c190e22"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab3d3900547e87ed94e76cec23653e6d3" id="r_ab3d3900547e87ed94e76cec23653e6d3"><td class="memItemLeft" align="right" valign="top"><a id="ab3d3900547e87ed94e76cec23653e6d3" name="ab3d3900547e87ed94e76cec23653e6d3"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>game_pacman</b></td></tr>
+<tr class="separator:ab3d3900547e87ed94e76cec23653e6d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a73b67c0a3462e0e7c3b06e6103d7cf56" id="r_a73b67c0a3462e0e7c3b06e6103d7cf56"><td class="memItemLeft" align="right" valign="top"><a id="a73b67c0a3462e0e7c3b06e6103d7cf56" name="a73b67c0a3462e0e7c3b06e6103d7cf56"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>game_pacman_invisible</b></td></tr>
+<tr class="separator:a73b67c0a3462e0e7c3b06e6103d7cf56"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2e9794e0936c9869a6bfe83e1721b9d8" id="r_a2e9794e0936c9869a6bfe83e1721b9d8"><td class="memItemLeft" align="right" valign="top"><a id="a2e9794e0936c9869a6bfe83e1721b9d8" name="a2e9794e0936c9869a6bfe83e1721b9d8"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>game_room</b></td></tr>
+<tr class="separator:a2e9794e0936c9869a6bfe83e1721b9d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad5046e9e7316ee883758590f05f301bd" id="r_ad5046e9e7316ee883758590f05f301bd"><td class="memItemLeft" align="right" valign="top"><a id="ad5046e9e7316ee883758590f05f301bd" name="ad5046e9e7316ee883758590f05f301bd"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>game_wall</b></td></tr>
+<tr class="separator:ad5046e9e7316ee883758590f05f301bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a51f6031f200e585f8f52a52ba9847528" id="r_a51f6031f200e585f8f52a52ba9847528"><td class="memItemLeft" align="right" valign="top"><a id="a51f6031f200e585f8f52a52ba9847528" name="a51f6031f200e585f8f52a52ba9847528"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>game_food</b></td></tr>
+<tr class="separator:a51f6031f200e585f8f52a52ba9847528"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a43e6375652d041c41f01ec06244c822b" id="r_a43e6375652d041c41f01ec06244c822b"><td class="memItemLeft" align="right" valign="top"><a id="a43e6375652d041c41f01ec06244c822b" name="a43e6375652d041c41f01ec06244c822b"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>game_enemy</b></td></tr>
+<tr class="separator:a43e6375652d041c41f01ec06244c822b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae040c25433c192e06451aa59518143be" id="r_ae040c25433c192e06451aa59518143be"><td class="memItemLeft" align="right" valign="top"><a id="ae040c25433c192e06451aa59518143be" name="ae040c25433c192e06451aa59518143be"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>title_text</b></td></tr>
+<tr class="separator:ae040c25433c192e06451aa59518143be"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9cb0ac57097ccc0bb5e121ce2f99af38" id="r_a9cb0ac57097ccc0bb5e121ce2f99af38"><td class="memItemLeft" align="right" valign="top"><a id="a9cb0ac57097ccc0bb5e121ce2f99af38" name="a9cb0ac57097ccc0bb5e121ce2f99af38"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>room_color</b></td></tr>
+<tr class="separator:a9cb0ac57097ccc0bb5e121ce2f99af38"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a352e588343ff40f5311636c5597ea8c9" id="r_a352e588343ff40f5311636c5597ea8c9"><td class="memItemLeft" align="right" valign="top"><a id="a352e588343ff40f5311636c5597ea8c9" name="a352e588343ff40f5311636c5597ea8c9"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>wall_color</b></td></tr>
+<tr class="separator:a352e588343ff40f5311636c5597ea8c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a2eec4e3dad104a5de00515cdf31d09" id="r_a9a2eec4e3dad104a5de00515cdf31d09"><td class="memItemLeft" align="right" valign="top"><a id="a9a2eec4e3dad104a5de00515cdf31d09" name="a9a2eec4e3dad104a5de00515cdf31d09"></a>
+sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>button_text_score</b></td></tr>
+<tr class="separator:a9a2eec4e3dad104a5de00515cdf31d09"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<hr/>Объявления и описания членов структуры находятся в файле:<ul>
+<li>source/application/State/<a class="el" href="_theme_manager_8h_source.html">ThemeManager.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="struct_theme_colors.html">ThemeColors</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/sync_off.png b/assets/docs/html/sync_off.png
new file mode 100644
index 0000000000000000000000000000000000000000..3b443fc62892114406e3d399421b2a881b897acc
Binary files /dev/null and b/assets/docs/html/sync_off.png differ
diff --git a/assets/docs/html/sync_on.png b/assets/docs/html/sync_on.png
new file mode 100644
index 0000000000000000000000000000000000000000..e08320fb64e6fa33b573005ed6d8fe294e19db76
Binary files /dev/null and b/assets/docs/html/sync_on.png differ
diff --git a/assets/docs/html/tab_a.png b/assets/docs/html/tab_a.png
new file mode 100644
index 0000000000000000000000000000000000000000..3b725c41c5a527a3a3e40097077d0e206a681247
Binary files /dev/null and b/assets/docs/html/tab_a.png differ
diff --git a/assets/docs/html/tab_ad.png b/assets/docs/html/tab_ad.png
new file mode 100644
index 0000000000000000000000000000000000000000..e34850acfc24be58da6d2fd1ccc6b29cc84fe34d
Binary files /dev/null and b/assets/docs/html/tab_ad.png differ
diff --git a/assets/docs/html/tab_b.png b/assets/docs/html/tab_b.png
new file mode 100644
index 0000000000000000000000000000000000000000..e2b4a8638cb3496a016eaed9e16ffc12846dea18
Binary files /dev/null and b/assets/docs/html/tab_b.png differ
diff --git a/assets/docs/html/tab_bd.png b/assets/docs/html/tab_bd.png
new file mode 100644
index 0000000000000000000000000000000000000000..91c25249869ffe5269c24f8c441e3f1bf75df400
Binary files /dev/null and b/assets/docs/html/tab_bd.png differ
diff --git a/assets/docs/html/tab_h.png b/assets/docs/html/tab_h.png
new file mode 100644
index 0000000000000000000000000000000000000000..fd5cb705488e60fcf30f56fcc951dee74f3b095b
Binary files /dev/null and b/assets/docs/html/tab_h.png differ
diff --git a/assets/docs/html/tab_hd.png b/assets/docs/html/tab_hd.png
new file mode 100644
index 0000000000000000000000000000000000000000..2489273d4ce1d11d3f7557335244c02b9959351b
Binary files /dev/null and b/assets/docs/html/tab_hd.png differ
diff --git a/assets/docs/html/tab_s.png b/assets/docs/html/tab_s.png
new file mode 100644
index 0000000000000000000000000000000000000000..ab478c95b67371d700a20869f7de1ddd73522d50
Binary files /dev/null and b/assets/docs/html/tab_s.png differ
diff --git a/assets/docs/html/tab_sd.png b/assets/docs/html/tab_sd.png
new file mode 100644
index 0000000000000000000000000000000000000000..757a565ced4730f85c833fb2547d8e199ae68f19
Binary files /dev/null and b/assets/docs/html/tab_sd.png differ
diff --git a/assets/docs/html/tabs.css b/assets/docs/html/tabs.css
new file mode 100644
index 0000000000000000000000000000000000000000..7fa4268a46fb63ee9e73b0ab9e3904c253560714
--- /dev/null
+++ b/assets/docs/html/tabs.css
@@ -0,0 +1 @@
+.sm{position:relative;z-index:9999}.sm,.sm ul,.sm li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;-webkit-tap-highlight-color:rgba(0,0,0,0)}.sm-rtl,.sm-rtl ul,.sm-rtl li{direction:rtl;text-align:right}.sm>li>h1,.sm>li>h2,.sm>li>h3,.sm>li>h4,.sm>li>h5,.sm>li>h6{margin:0;padding:0}.sm ul{display:none}.sm li,.sm a{position:relative}.sm a{display:block}.sm a.disabled{cursor:not-allowed}.sm:after{content:"\00a0";display:block;height:0;font:0/0 serif;clear:both;visibility:hidden;overflow:hidden}.sm,.sm *,.sm *:before,.sm *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.main-menu-btn{position:relative;display:inline-block;width:36px;height:36px;text-indent:36px;margin-left:8px;white-space:nowrap;overflow:hidden;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0)}.main-menu-btn-icon,.main-menu-btn-icon:before,.main-menu-btn-icon:after{position:absolute;top:50%;left:2px;height:2px;width:24px;background:var(--nav-menu-button-color);-webkit-transition:all .25s;transition:all .25s}.main-menu-btn-icon:before{content:'';top:-7px;left:0}.main-menu-btn-icon:after{content:'';top:7px;left:0}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon{height:0}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:before{top:0;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:after{top:0;-webkit-transform:rotate(45deg);transform:rotate(45deg)}#main-menu-state{position:absolute;width:1px;height:1px;margin:-1px;border:0;padding:0;overflow:hidden;clip:rect(1px,1px,1px,1px)}#main-menu-state:not(:checked) ~ #main-menu{display:none}#main-menu-state:checked ~ #main-menu{display:block}@media(min-width:768px){.main-menu-btn{position:absolute;top:-99999px}#main-menu-state:not(:checked) ~ #main-menu{display:block}}.sm-dox{background-image:var(--nav-gradient-image)}.sm-dox a,.sm-dox a:focus,.sm-dox a:hover,.sm-dox a:active{padding:0 12px;padding-right:43px;font-family:var(--font-family-nav);font-size:13px;font-weight:bold;line-height:36px;text-decoration:none;text-shadow:var(--nav-text-normal-shadow);color:var(--nav-text-normal-color);outline:0}.sm-dox a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:var(--nav-text-hover-shadow)}.sm-dox a.current{color:#d23600}.sm-dox a.disabled{color:#bbb}.sm-dox a span.sub-arrow{position:absolute;top:50%;margin-top:-14px;left:auto;right:3px;width:28px;height:28px;overflow:hidden;font:bold 12px/28px monospace !important;text-align:center;text-shadow:none;background:var(--nav-menu-toggle-color);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox a span.sub-arrow:before{display:block;content:'+'}.sm-dox a.highlighted span.sub-arrow:before{display:block;content:'-'}.sm-dox>li:first-child>a,.sm-dox>li:first-child>:not(ul) a{-moz-border-radius:5px 5px 0 0;-webkit-border-radius:5px;border-radius:5px 5px 0 0}.sm-dox>li:last-child>a,.sm-dox>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul{-moz-border-radius:0 0 5px 5px;-webkit-border-radius:0;border-radius:0 0 5px 5px}.sm-dox>li:last-child>a.highlighted,.sm-dox>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox ul{background:var(--nav-menu-background-color)}.sm-dox ul a,.sm-dox ul a:focus,.sm-dox ul a:hover,.sm-dox ul a:active{font-size:12px;border-left:8px solid transparent;line-height:36px;text-shadow:none;background-color:var(--nav-menu-background-color);background-image:none}.sm-dox ul a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:0 1px 1px black}.sm-dox ul ul a,.sm-dox ul ul a:hover,.sm-dox ul ul a:focus,.sm-dox ul ul a:active{border-left:16px solid transparent}.sm-dox ul ul ul a,.sm-dox ul ul ul a:hover,.sm-dox ul ul ul a:focus,.sm-dox ul ul ul a:active{border-left:24px solid transparent}.sm-dox ul ul ul ul a,.sm-dox ul ul ul ul a:hover,.sm-dox ul ul ul ul a:focus,.sm-dox ul ul ul ul a:active{border-left:32px solid transparent}.sm-dox ul ul ul ul ul a,.sm-dox ul ul ul ul ul a:hover,.sm-dox ul ul ul ul ul a:focus,.sm-dox ul ul ul ul ul a:active{border-left:40px solid transparent}@media(min-width:768px){.sm-dox ul{position:absolute;width:12em}.sm-dox li{float:left}.sm-dox.sm-rtl li{float:right}.sm-dox ul li,.sm-dox.sm-rtl ul li,.sm-dox.sm-vertical li{float:none}.sm-dox a{white-space:nowrap}.sm-dox ul a,.sm-dox.sm-vertical a{white-space:normal}.sm-dox .sm-nowrap>li>a,.sm-dox .sm-nowrap>li>:not(ul) a{white-space:nowrap}.sm-dox{padding:0 10px;background-image:var(--nav-gradient-image);line-height:36px}.sm-dox a span.sub-arrow{top:50%;margin-top:-2px;right:12px;width:0;height:0;border-width:4px;border-style:solid dashed dashed dashed;border-color:var(--nav-text-normal-color) transparent transparent transparent;background:transparent;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox a,.sm-dox a:focus,.sm-dox a:active,.sm-dox a:hover,.sm-dox a.highlighted{padding:0 12px;background-image:var(--nav-separator-image);background-repeat:no-repeat;background-position:right;-moz-border-radius:0 !important;-webkit-border-radius:0;border-radius:0 !important}.sm-dox a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:var(--nav-text-hover-shadow)}.sm-dox a:hover span.sub-arrow{border-color:var(--nav-text-hover-color) transparent transparent transparent}.sm-dox a.has-submenu{padding-right:24px}.sm-dox li{border-top:0}.sm-dox>li>ul:before,.sm-dox>li>ul:after{content:'';position:absolute;top:-18px;left:30px;width:0;height:0;overflow:hidden;border-width:9px;border-style:dashed dashed solid dashed;border-color:transparent transparent #bbb transparent}.sm-dox>li>ul:after{top:-16px;left:31px;border-width:8px;border-color:transparent transparent var(--nav-menu-background-color) transparent}.sm-dox ul{border:1px solid #bbb;padding:5px 0;background:var(--nav-menu-background-color);-moz-border-radius:5px !important;-webkit-border-radius:5px;border-radius:5px !important;-moz-box-shadow:0 5px 9px rgba(0,0,0,0.2);-webkit-box-shadow:0 5px 9px rgba(0,0,0,0.2);box-shadow:0 5px 9px rgba(0,0,0,0.2)}.sm-dox ul a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent var(--nav-menu-foreground-color);border-style:dashed dashed dashed solid}.sm-dox ul a,.sm-dox ul a:hover,.sm-dox ul a:focus,.sm-dox ul a:active,.sm-dox ul a.highlighted{color:var(--nav-menu-foreground-color);background-image:none;border:0 !important}.sm-dox ul a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:var(--nav-text-hover-shadow)}.sm-dox ul a:hover span.sub-arrow{border-color:transparent transparent transparent var(--nav-text-hover-color)}.sm-dox span.scroll-up,.sm-dox span.scroll-down{position:absolute;display:none;visibility:hidden;overflow:hidden;background:var(--nav-menu-background-color);height:36px}.sm-dox span.scroll-up:hover,.sm-dox span.scroll-down:hover{background:#eee}.sm-dox span.scroll-up:hover span.scroll-up-arrow,.sm-dox span.scroll-up:hover span.scroll-down-arrow{border-color:transparent transparent #d23600 transparent}.sm-dox span.scroll-down:hover span.scroll-down-arrow{border-color:#d23600 transparent transparent transparent}.sm-dox span.scroll-up-arrow,.sm-dox span.scroll-down-arrow{position:absolute;top:0;left:50%;margin-left:-6px;width:0;height:0;overflow:hidden;border-width:6px;border-style:dashed dashed solid dashed;border-color:transparent transparent var(--nav-menu-foreground-color) transparent}.sm-dox span.scroll-down-arrow{top:8px;border-style:solid dashed dashed dashed;border-color:var(--nav-menu-foreground-color) transparent transparent transparent}.sm-dox.sm-rtl a.has-submenu{padding-right:12px;padding-left:24px}.sm-dox.sm-rtl a span.sub-arrow{right:auto;left:12px}.sm-dox.sm-rtl.sm-vertical a.has-submenu{padding:10px 20px}.sm-dox.sm-rtl.sm-vertical a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-rtl>li>ul:before{left:auto;right:30px}.sm-dox.sm-rtl>li>ul:after{left:auto;right:31px}.sm-dox.sm-rtl ul a.has-submenu{padding:10px 20px !important}.sm-dox.sm-rtl ul a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-vertical{padding:10px 0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox.sm-vertical a{padding:10px 20px}.sm-dox.sm-vertical a:hover,.sm-dox.sm-vertical a:focus,.sm-dox.sm-vertical a:active,.sm-dox.sm-vertical a.highlighted{background:#fff}.sm-dox.sm-vertical a.disabled{background-image:var(--nav-gradient-image)}.sm-dox.sm-vertical a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-style:dashed dashed dashed solid;border-color:transparent transparent transparent #555}.sm-dox.sm-vertical>li>ul:before,.sm-dox.sm-vertical>li>ul:after{display:none}.sm-dox.sm-vertical ul a{padding:10px 20px}.sm-dox.sm-vertical ul a:hover,.sm-dox.sm-vertical ul a:focus,.sm-dox.sm-vertical ul a:active,.sm-dox.sm-vertical ul a.highlighted{background:#eee}.sm-dox.sm-vertical ul a.disabled{background:var(--nav-menu-background-color)}}