private static async Task Interpretate(HttpListenerContext context)
        {
            using (var sr = new StreamReader(context.Request.InputStream, Encoding.GetEncoding(1251)))
            {
                var program = sr.ReadToEnd();
                if (program.StartsWith("aor="))
                {
                    program = HttpUtility.UrlDecode(program.Substring(4));
                }

                Log.Info(program);

                bool[,] matrix;
                var data = Encoding.UTF8.GetBytes(GeneratePage(Interpretator2.Iterpretate(program, out matrix), matrix, program));
                await context.Response.OutputStream.WriteAsync(data, 0, data.Length);
            }
        }
        private static string GeneratePage(InterpretatorEndState state, bool[,] matrix, string program)
        {
            var page = @"
<!DOCTYPE html>
<html lang=""en"">
<head>
	<meta charset=""utf-8""/>
	<title style=""line-height: 0px;"">◃◝◜◃◊▱◅▹▭ ◊▱◚◓◊□ ◓▼▹▤▦◜▯◊◁◌◛</title>
</head>
<body>
	<h1>◃◝◜◃◊▱◅▹▭ ◊▱◚◓◊□ ◓▼▹▤▦◜▯◊◁◌◛</h1>
	<div>◔▲▴◆▼▹◃○ ▴◌◛ ◓▼▹▤▦◜▯◊◁◌◛</div>
	{4}

	<form method=""POST"" style=""margin-top: 12px;"">
		<div>
			<textarea id=""input"" name=""aor"" rows=""10"" cols=""80"">{3}</textarea>
		</div>

		<button id=""e2m"" type=""submit"" style=""margin-top: 12px;"">▱○○●◈ ▥▻◒◎</button>
	<form>
	<div>
		{0}
	</div>
	<pre>
		{1}
	</pre>
	<div>
		{2}
	</div>
</body>
</html>";

            return(string.Format(page, ConvertInterpretatorEndState(state), ConvertMatrixToString(matrix), GetAnswer(matrix), HttpUtility.HtmlEncode(program), Interpretator2.GetRulesHtml()));
        }