<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AHK: В чем "злость" Goto?]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=10655</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=10655&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: В чем "злость" Goto?».]]></description>
		<lastBuildDate>Sun, 02 Oct 2016 11:45:36 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: В чем "злость" Goto?]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=108149#p108149</link>
			<description><![CDATA[<p>Моё первое знакомство с подробным описанием &quot;GoTo&quot; впервые произошло на страницах учебника &quot;Visual C# 2008. Базовый курс&quot;, где этому оператору как и всем остальным технологиям был посвящён ознакомительный раздел. Там, это столкновение субъективных версий выражено менее экспрессивно, нежели любые иные источники в интернетах включая эту беседу, не отбирая у процесса познания его конструктивной нити. Главная особенность этого оператора позволяющая &quot;нырять&quot; в теле сценария в любом направлении, плохо понимающему задачу поставленную перед собой даёт иллюзорное ощущение контроля над своим &quot;детищем&quot;, всё более превращая его труд в бессмысленный набор символов с увеличением количества переходов. &quot;GoTo&quot; - это путь наименьшего сопротивления приводящий в эквивалентный тупик, как и любое другое описание кода в неумелых руках, уводящее кодера от вожделенной развязки. Разница правда в том, что пользование остальных технологий формирует рамки, в пределах которых существует их &quot;зона ответственности&quot;, а &quot;GoTo&quot; не только их не имеет, но и нарушает. И напротив, в &quot;GoTo&quot; нет никакой опасности, как нет опасности в скальпеле в руках хирурга, или резце скульптора, если конечная форма его применения видна заблаговременно. &quot;GoTo&quot; - это запятая в &quot;Казнить нельзя помиловать&quot;, ставить которую неправильный поступок, если не представляешь последствий. Лучше использовать другие сочетания слов, чаще окажущиеся не менее обоснованными. А новичкам он &quot;мешает думать&quot;. Лишает возможности чувствовать тонкости экспериментов к которым направленно их стремление, потому что - &quot;...метка перехода в конкретный момент течения мысли обеспечивает выполнение следующего необходимого действия, описание которого уже произошло некоторыми строками ранее/позднее...&quot; Код может и будет живуч, будет выполнять требуемые операции, но это будет как раз тот самый показательный опыт жизни, к которому будет апеллировать подсознание только лишь потому, что он оказался удачным, а не закономерным, не рассматривая при этом разницы последнего.<br />После прочтения той статьи я перестал пользоваться &quot;GoTo&quot;. Без него стало труднее, но только потому лишь, что приходилось думать головой, в попытке понять - &quot;как устроен велосипед&quot;. Не могу похвастаться богатством опыта, но сейчас просто не представляю для чего он вообще нужен. Наверняка есть какие-то случаи, когда переход к метке будет оправдан, или даже необходим, но мне они пока не встречались. Более того, прерывание циклов в AHK может происходить в одном месте до любого уровня вложенности указанием через запятую после &quot;break&quot; необходимого значения(например: break, 3), что по своей сути ставит свою красивую, лаконичную точку в очень весомом принципе, на который часто ссылаются оппозиционеры движения &quot;Против GoTo&quot;. <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /><br />Но право применения тех или иных технологий, конечно же остаётся за Вами, уважаемый читатель. Если у Вас хватило терпения дочитать этот текст до сего момента, то, вероятно, Ваше любопытство ищет наиболее верное решение, а не просто свет в конце тоннеля.</p>]]></description>
			<author><![CDATA[null@example.com (KusochekDobra)]]></author>
			<pubDate>Sun, 02 Oct 2016 11:45:36 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=108149#p108149</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: В чем "злость" Goto?]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=94116#p94116</link>
			<description><![CDATA[<div class="quotebox"><cite>Malcev пишет:</cite><blockquote><p>Александр_, помню опубликовал:</p></blockquote></div><p> Так там у него Goto только вниз (последовательность не нарушается), нет выпрыгиваний из циклов. В данном случае это <em>Goto, Clear</em> равнозначно использованию <em>Return</em> в функции или <em>break</em> в цикле.<br /></p><div class="quotebox"><blockquote><p>Мне твой вариант более награможденным кажется.</p></blockquote></div><p> Ну, тут ничего не поделаешь. Показаться что угодно может. <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Thu, 21 May 2015 04:59:08 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=94116#p94116</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: В чем "злость" Goto?]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=94113#p94113</link>
			<description><![CDATA[<div class="quotebox"><cite>Eduard пишет:</cite><blockquote><p>И все эти ваши процедурное программирование, функциональное программирование, ООП, ААП, замыкания, циклы и прочая синтаксическая ересь — после компиляции превращается в сотни, тысячи, миллионы GOTO (а точнее, в JMP, JE, JLE, JGE, JNE, etc.), я гарантирую это!</p></blockquote></div><p>А call и ret куда делись? А loop?</p>]]></description>
			<author><![CDATA[null@example.com (YMP)]]></author>
			<pubDate>Thu, 21 May 2015 02:44:54 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=94113#p94113</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: В чем "злость" Goto?]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=94112#p94112</link>
			<description><![CDATA[<div class="quotebox"><blockquote><p>Ну, так это и говорит о том, что в постоянных прыжках туда-сюда без поллитра не разберёшься.</p></blockquote></div><p>В моем случае прыжек идет только в начало кода посвященного конкретному действию.<br /></p><div class="quotebox"><blockquote><p>Это если публиковать не собирается.</p></blockquote></div><p>Александр_, помню опубликовал:<br /><a href="http://forum.script-coding.com/viewtopic.php?pid=56302#p56302">http://forum.script-coding.com/viewtopi … 302#p56302</a><br /></p><div class="quotebox"><blockquote><p>Есть комментарии.</p></blockquote></div><p>В них отпадает нужда в моем случае с меткой.<br /></p><div class="quotebox"><blockquote><p>Примерно так:</p></blockquote></div><p>Мне твой вариант более награможденным кажется.</p>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Thu, 21 May 2015 01:47:13 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=94112#p94112</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: В чем "злость" Goto?]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=94110#p94110</link>
			<description><![CDATA[<div class="quotebox"><cite>teadrinker пишет:</cite><blockquote><p>всё же понимание кода повышается, если он разделён на логические блоки, такие, как функции и подпрограммы, и эти блоки не превышают размера одного экрана.</p></blockquote></div><p>&nbsp; Ну, блоки и подпрограммы, тут спора нет, а вот про &quot;размер одного экрана&quot; для них, как-то не задумывался.&nbsp; Посмотрел - абсолютное большинство в один-два укладывается. Надо будет подумать над тем, чтобы дробить мельче, но не в ущерб наглядности. Так как я её понимаю.</p>]]></description>
			<author><![CDATA[null@example.com (Foma)]]></author>
			<pubDate>Wed, 20 May 2015 20:48:02 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=94110#p94110</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: В чем "злость" Goto?]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=94109#p94109</link>
			<description><![CDATA[<div class="quotebox"><cite>Foma пишет:</cite><blockquote><p>Тогда дело именно в порядке? Как в &quot;портянке&quot;, так и в наборе функций разобраться одинаково просто, если код не &quot;беспорядочно составлен&quot;.</p></blockquote></div><p>В общем да. Но ведь мы как раз и говорим, что GoTo нарушает порядок, прыгая в самые непредсказуемые места. Что касается портянки — всё же понимание кода повышается, если он разделён на логические блоки, такие, как функции и подпрограммы, и эти блоки не превышают размера одного экрана.</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Wed, 20 May 2015 20:30:24 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=94109#p94109</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: В чем "злость" Goto?]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=94107#p94107</link>
			<description><![CDATA[<p>На самом деле, GOTO — это единственный оператор, который используется для управления выполнением кода этими вашими центральными процессорами. Для всякого ЦП есть в сущности два способа управлять кодом: условный оператор (если да, то выполнить следующую команду, иначе выполнить послеследующую) и перейти на другой участок кода (GOTO). Всё. И все эти ваши процедурное программирование, функциональное программирование, ООП, ААП, замыкания, циклы и прочая синтаксическая ересь — после компиляции превращается в сотни, тысячи, миллионы GOTO (а точнее, в JMP, JE, JLE, JGE, JNE, etc.), я гарантирую это! Несогласные goto 30.</p><p>(GoTo, <a href="http://lurkmore.to/GOTO">http://lurkmore.to/GOTO</a>)</p>]]></description>
			<author><![CDATA[null@example.com (Eduard)]]></author>
			<pubDate>Wed, 20 May 2015 20:03:55 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=94107#p94107</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: В чем "злость" Goto?]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=94106#p94106</link>
			<description><![CDATA[<div class="quotebox"><cite>teadrinker пишет:</cite><blockquote><p><strong>Foma</strong>, может тут не в функциях проблема, а в беспорядочно составленном коде?</p></blockquote></div><p>&nbsp; Тогда дело именно в порядке? Как в &quot;портянке&quot;, так и в наборе функций разобраться одинаково просто, если код не &quot;беспорядочно составлен&quot;.</p>]]></description>
			<author><![CDATA[null@example.com (Foma)]]></author>
			<pubDate>Wed, 20 May 2015 19:50:28 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=94106#p94106</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: В чем "злость" Goto?]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=94103#p94103</link>
			<description><![CDATA[<div class="quotebox"><cite>Malcev пишет:</cite><blockquote><p>Имхо, главное, чтоб сам автор кода разбирался.</p></blockquote></div><p>Это если публиковать не собирается.<br /></p><div class="quotebox"><blockquote><p>И я лично по метке сразу вижу, что речь идет о Pastebin.</p></blockquote></div><p>Есть комментарии.<br /></p><div class="quotebox"><blockquote><p>А как ты бы изменил код под меткой Youtube из 23 поста?</p></blockquote></div><p>Примерно так:<br /></p><div class="codebox"><pre><code>global oIE
DetectHiddenWindows, On

YoutubeUpload = 1
Upload(YoutubeUpload)
Loop
{
   While oIE.readyState != 4 || oIE.document.readyState != &quot;complete&quot; || oIE.busy
      Sleep, 10
   text := oIE.document.documentElement.InnerText
   If InStr(text, &quot;This page can’t be displayed&quot;)  {
      Upload(YoutubeUpload)
      continue
   }
   CreateScript(YoutubeUpload)
   
   if YoutubeUpload = 2
   {
      oIE.document.querySelector(&quot;input[name=&quot;&quot;title&quot;&quot;]&quot;).value := name1
      oIE.document.querySelector(&quot;textarea[name=&quot;&quot;description&quot;&quot;]&quot;).value := description
   }
   oIE.document.querySelector(&quot;button[class=&quot;&quot;yt-uix-button yt-uix-button-size-default save-changes-button yt-uix-tooltip yt-uix-button-primary&quot;&quot;]&quot;).click()
   loop
   {
      text := oIE.document.documentElement.InnerText
      if InStr(text, &quot;1 of 1 uploaded&quot;)  {
         if (YoutubeUpload = 1 &amp;&amp; YoutubeUpload := 2)
            break
         else
            break 2
      }
      sleep, 100
   }
}
oIE.Quit   
   
Upload(var)
{
   if (var = 1)
      oIE.navigate(&quot;https://www.youtube.com/signin?feature=masthead_switcher&amp;next=`%2Fupload&amp;authuser=1&amp;action_handle_signin=true&amp;skip_identity_prompt=False&quot;)
   else if (var = 2)  {
      CloseProcess(&quot;iexplore.exe&quot;)
      oIE := ComObjCreate(&quot;InternetExplorer.Application&quot;) 
      oIE.visible := True, oIEHWND := oIE.HWND 
      WinMaximize ahk_id %oIEHWND%
      oIE.navigate(&quot;https://www.youtube.com/signin?feature=masthead_switcher&amp;next=`%2Fupload&amp;skip_identity_prompt=False&amp;pageid=110507430261645574853&amp;authuser=0&amp;action_handle_signin=true&quot;)
   }
}

CreateScript(var)
{
   UploadFile := (var = 1 ? &quot;G:\RITS\youtube\astrolog.mpg&quot; : &quot;G:\RITS\youtube\utroLTV7.mpg&quot;)
   FileDelete, WinWait.ahk
   FileAppend, 
   (
   #NoTrayIcon
   WinWait, Choose File to Upload
   loop
   {
      ControlSetText, Edit1, &quot;%UploadFile%&quot;, Choose File to Upload
      ControlClick, Button1, Choose File to Upload,,,, NA
      WinWaitClose, Choose File to Upload,,5
      if ErrorLevel != 1
         ExitApp
   }
   ), WinWait.ahk
   Run, WinWait.ahk
   WinWait, WinWait.ahk
   oIE.document.querySelector(&quot;span[class=&quot;&quot;init-upload-action-icon yt-sprite&quot;&quot;]&quot;).click()
   WinWaitClose, WinWait.ahk
   FileDelete, WinWait.ahk
}</code></pre></div><p>Возможно, где-то есть ошибки, но главный принцип — последовательность — сохранён.</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Wed, 20 May 2015 19:22:26 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=94103#p94103</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: В чем "злость" Goto?]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=94102#p94102</link>
			<description><![CDATA[<p>Имхо, главное, чтоб сам автор кода разбирался.<br />И я лично по метке сразу вижу, что речь идет о Pastebin.<br />А как ты бы изменил код под меткой YoutubeUpload из 23 поста?</p>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Wed, 20 May 2015 18:18:31 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=94102#p94102</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: В чем "злость" Goto?]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=94101#p94101</link>
			<description><![CDATA[<div class="quotebox"><cite>teadrinker пишет:</cite><blockquote><div class="quotebox"><cite>_gruz пишет:</cite><blockquote><p>не знаю, AHK компилятор как-то оптимизирует их или нет</p></blockquote></div><div class="quotebox"><cite>_gruz пишет:</cite><blockquote><p>Так что с точки зрения компилятора goto будет даже более практичным.</p></blockquote></div><p>Вижу противоречие между первым и вторым высказываниями. Если нужна скорость выполнения, то вообще AHK бессмысленно использовать.</p></blockquote></div><p>Первое - про <em>конкретно</em> AHK компилятор, второе - обобщенное понятие.<br />АНК как раз и должна быть оптимизирована для скорости и малого объема, т.к. в реальном времени должна обрабатывать и реагировать на события. Конечно я понимаю, что мат. вычисления это не к AHK но тем не менее, что есть то есть.</p>]]></description>
			<author><![CDATA[null@example.com (_gruz)]]></author>
			<pubDate>Wed, 20 May 2015 18:15:28 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=94101#p94101</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: В чем "злость" Goto?]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=94100#p94100</link>
			<description><![CDATA[<div class="quotebox"><blockquote><p>Код неверен.</p></blockquote></div><p>Ну, так это и говорит о том, что в постоянных прыжках туда-сюда без поллитра не разберёшься.<br /></p><div class="codebox"><pre><code>oIE.navigate(&quot;http://pastebin.com/index/0ivKzH0R&quot;)
loop
{
   text := oIE.document.documentElement.InnerText
   If InStr(text, &quot;This page can’t be displayed&quot;)  {
      oIE.navigate(&quot;http://pastebin.com/index/0ivKzH0R&quot;)
      continue
   }
   text := oIE.document.querySelector(&quot;#paste_code&quot;).outerText
   If text !=
      break
   sleep, 100
}

</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Wed, 20 May 2015 18:04:32 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=94100#p94100</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: В чем "злость" Goto?]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=94099#p94099</link>
			<description><![CDATA[<p>Код неверен.<br />Зачем каждый раз делать oIE.navigate(&quot;http://pastebin.com/index/0ivKzH0R&quot;)?<br />В моем коде туда идет переход только в случае:<br /></p><div class="codebox"><pre><code>if InStr(text, &quot;This page can’t be displayed&quot;)</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Wed, 20 May 2015 17:48:30 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=94099#p94099</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: В чем "злость" Goto?]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=94098#p94098</link>
			<description><![CDATA[<p><strong>Malcev</strong>, адЪ!</p><div class="codebox"><pre><code>loop
{
   oIE.navigate(&quot;http://pastebin.com/index/0ivKzH0R&quot;)
   text := oIE.document.documentElement.InnerText
   if InStr(text, &quot;This page can’t be displayed&quot;)
      continue
   text := oIE.document.querySelector(&quot;#paste_code&quot;).outerText
   if (text != &quot;&quot;)
      break
   sleep, 100
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Wed, 20 May 2015 17:43:24 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=94098#p94098</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: В чем "злость" Goto?]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=94097#p94097</link>
			<description><![CDATA[<div class="quotebox"><blockquote><p>Лучше на примере, так неясно.</p></blockquote></div><div class="codebox"><pre><code>PasteBin:
oIE.navigate(&quot;http://pastebin.com/index/0ivKzH0R&quot;)
loop
{
   text := oIE.document.documentElement.InnerText
   If InStr(text, &quot;This page can’t be displayed&quot;)
      GoTo, PasteBin
   text := oIE.document.querySelector(&quot;#paste_code&quot;).outerText
   If text !=
      break
   sleep, 100
} 
RegexMatch(text, &quot;(^.*?\R)&quot;, name)
Description := RegExReplace(text, &quot;(^.*?\R)&quot;)


DetectHiddenWindows, On
YoutubeUpload = 1
YoutubeUpload:
if YoutubeUpload = 1
{
   UploadFile := &quot;G:\RITS\youtube\astrolog.mpg&quot;
   oIE.navigate(&quot;https://www.youtube.com/signin?feature=masthead_switcher&amp;next=`%2Fupload&amp;authuser=1&amp;action_handle_signin=true&amp;skip_identity_prompt=False&quot;)
}
if YoutubeUpload = 2
{
   UploadFile := &quot;G:\RITS\youtube\utroLTV7.mpg&quot;
   CloseProcess(&quot;iexplore.exe&quot;)
   oIE := ComObjCreate(&quot;InternetExplorer.Application&quot;) 
   oIE.visible := True, oIEHWND := oIE.HWND 
   WinMaximize ahk_id %oIEHWND%
   oIE.navigate(&quot;https://www.youtube.com/signin?feature=masthead_switcher&amp;next=`%2Fupload&amp;skip_identity_prompt=False&amp;pageid=110507430261645574853&amp;authuser=0&amp;action_handle_signin=true&quot;)
}
While oIE.readyState != 4 || oIE.document.readyState != &quot;complete&quot; || oIE.busy
   Sleep, 10
text := oIE.document.documentElement.InnerText
If InStr(text, &quot;This page can’t be displayed&quot;)
   GoTo, YoutubeUpload
FileDelete, WinWait.ahk
FileAppend, 
(
#NoTrayIcon
WinWait, Choose File to Upload
loop
{
   ControlSetText, Edit1, &quot;%UploadFile%&quot;, Choose File to Upload
   ControlClick, Button1, Choose File to Upload,,,, NA
   WinWaitClose, Choose File to Upload,,5
   if ErrorLevel != 1
      ExitApp
}
), WinWait.ahk
Run, WinWait.ahk
WinWait, WinWait.ahk
oIE.document.querySelector(&quot;span[class=&quot;&quot;init-upload-action-icon yt-sprite&quot;&quot;]&quot;).click()
WinWaitClose, WinWait.ahk
FileDelete, WinWait.ahk
if YoutubeUpload = 2
{
   oIE.document.querySelector(&quot;input[name=&quot;&quot;title&quot;&quot;]&quot;).value := name1
   oIE.document.querySelector(&quot;textarea[name=&quot;&quot;description&quot;&quot;]&quot;).value := description
}
oIE.document.querySelector(&quot;button[class=&quot;&quot;yt-uix-button yt-uix-button-size-default save-changes-button yt-uix-tooltip yt-uix-button-primary&quot;&quot;]&quot;).click()
loop
{
   text := oIE.document.documentElement.InnerText
   if InStr(text, &quot;1 of 1 uploaded&quot;) and (YoutubeUpload = 1)
   {
      YoutubeUpload = 2
      GoTo, YoutubeUpload
   }
   if InStr(text, &quot;1 of 1 uploaded&quot;) and (YoutubeUpload = 2)
      break
   sleep, 100
}
oIE.Quit</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Wed, 20 May 2015 17:33:20 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=94097#p94097</guid>
		</item>
	</channel>
</rss>
