<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AHK: генератор Gmail адресов с точками [Решено]]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=12742</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=12742&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: генератор Gmail адресов с точками [Решено]».]]></description>
		<lastBuildDate>Mon, 12 Jun 2017 11:27:31 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: генератор Gmail адресов с точками [Решено]]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=116552#p116552</link>
			<description><![CDATA[<p>Так должно работать:<br /></p><div class="codebox"><pre><code>email := &quot;abcdefghijklmnopqrstuvwxyz&quot;
path := &quot;d:\test.txt&quot;

setbatchlines -1

jsCode = 
(
function generateEmails(username, path) {
    var fso = new ActiveXObject(&quot;Scripting.FileSystemObject&quot;);
    var a = fso.CreateTextFile(path, true);
    var username_length = username.length;
    var combinations = Math.pow(2, username_length - 1);
    for (i = 0; i &lt; combinations; i++) {
        var bin = decbin(i, username_length - 1);
        var full_email = &quot;&quot;;
        for (j = 0; j &lt; (username_length - 1); j++) { full_email += username[j];
            if (bin[j] == 1) { full_email += &quot;.&quot;; } }
        full_email += username[j] + &quot;@gmail.com&quot;;
        a.WriteLine(full_email);
    }
    a.Close();
    return   
}

function decbin(dec, length) {
    var out = &quot;&quot;;
    while (length--)
        out += (dec &gt;&gt; length) &amp; 1;
    return out;
}
)

JS := new ActiveScript(&quot;JScript&quot;)
JS.Exec(jsCode)
JS.generateEmails(email, path)
msgbox Done</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Mon, 12 Jun 2017 11:27:31 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=116552#p116552</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: генератор Gmail адресов с точками [Решено]]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=116535#p116535</link>
			<description><![CDATA[<p><strong>Malcev</strong>, на строке &gt; 20 символов процесс съедает 2 гига памяти и завершается, не отработав.<br />На ahk процесс укладывается в 40-70 Мб памяти, по времени получается одинаково.<br />Видимо в JS движке от MS на выходе из ф-ии сборщик не вызывается.<br />Что интересно, в браузере строка в 20 символов обрабатывается в 6 раз быстрее, чем вышеуказанными способами и памяти дополнительно не отнимает, но строка в 26 символов сжирает память и рушит браузер. Все равно сохранить результаты некуда.</p>]]></description>
			<author><![CDATA[null@example.com (stealzy)]]></author>
			<pubDate>Sun, 11 Jun 2017 11:17:00 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=116535#p116535</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: генератор Gmail адресов с точками [Решено]]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=116534#p116534</link>
			<description><![CDATA[<p>Хотя с моими исправлениями происходит утечка памяти.<br />Как от нее избавиться, наверное, нужно у знатоков JS спрашивать.</p>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Sun, 11 Jun 2017 09:39:07 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=116534#p116534</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: генератор Gmail адресов с точками [Решено]]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=116533#p116533</link>
			<description><![CDATA[<div class="quotebox"><cite>Malcev пишет:</cite><blockquote><p>джаваскрипт напрямую из автохотки</p></blockquote></div><p>О как! Даже не знал, что так можно. Большое спасибо за помощь!</p>]]></description>
			<author><![CDATA[null@example.com (Жмопель)]]></author>
			<pubDate>Sun, 11 Jun 2017 02:08:35 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=116533#p116533</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: генератор Gmail адресов с точками [Решено]]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=116532#p116532</link>
			<description><![CDATA[<p><strong>Жмопель</strong>, если тяжело или лень вникать в алгоритм и переделывать его на автохотки, то вы можете запускать немного исправленный джаваскрипт напрямую из автохотки (35000 комбинаций в секунду):<br /></p><div class="codebox"><pre><code>email := &quot;abcdefgh&quot;

#MaxMem 4095
setbatchlines -1

jsCode = 
(
function generateEmails(username) {
    var username_length = username.length;
    var combinations = Math.pow(2, username_length - 1);
    var full_email = &quot;&quot;;
    for (i = 0; i &lt; combinations; i++) {
        var bin = decbin(i, username_length - 1);
        for (j = 0; j &lt; (username_length - 1); j++) { full_email += username[j];
            if (bin[j] == 1) { full_email += &quot;.&quot;; } }
        full_email += username[j] + &quot;@gmail.com\n&quot;;
    }
    return full_email;
}

function decbin(dec, length) {
    var out = &quot;&quot;;
    while (length--)
        out += (dec &gt;&gt; length) &amp; 1;
    return out;
}
)

JS := new ActiveScript(&quot;JScript&quot;)
JS.Exec(jsCode)
msgbox % JS.generateEmails(email)



/*
 *  ActiveScript for AutoHotkey v1.1
 *
 *  Provides an interface to Active Scripting languages like VBScript and JScript,
 *  without relying on Microsoft&#039;s ScriptControl, which is not available to 64-bit
 *  programs.
 *
 *  License: Use, modify and redistribute without limitation, but at your own risk.
 */
class ActiveScript extends ActiveScript._base
{
    __New(Language)
    {
        if this._script := ComObjCreate(Language, ActiveScript.IID)
            this._scriptParse := ComObjQuery(this._script, ActiveScript.IID_Parse)
        if !this._scriptParse
            throw Exception(&quot;Invalid language&quot;, -1, Language)
        this._site := new ActiveScriptSite(this)
        this._SetScriptSite(this._site.ptr)
        this._InitNew()
        this._objects := {}
        this.Error := &quot;&quot;
        this._dsp := this._GetScriptDispatch()  ; Must be done last.
        try
            if this.ScriptEngine() = &quot;JScript&quot;
                this.SetJScript58()
    }

    SetJScript58()
    {
        static IID_IActiveScriptProperty := &quot;{4954E0D0-FBC7-11D1-8410-006008C3FBFC}&quot;
        if !prop := ComObjQuery(this._script, IID_IActiveScriptProperty)
            return false
        VarSetCapacity(var, 24, 0), NumPut(2, NumPut(3, var, &quot;short&quot;) + 6)
        hr := DllCall(NumGet(NumGet(prop+0)+4*A_PtrSize), &quot;ptr&quot;, prop, &quot;uint&quot;, 0x4000
            , &quot;ptr&quot;, 0, &quot;ptr&quot;, &amp;var), ObjRelease(prop)
        return hr &gt;= 0
    }
    
    Eval(Code)
    {
        pvar := NumGet(ComObjValue(arr:=ComObjArray(0xC,1)) + 8+A_PtrSize)
        this._ParseScriptText(Code, 0x20, pvar)  ; SCRIPTTEXT_ISEXPRESSION := 0x20
        return arr[0]
    }
    
    Exec(Code)
    {
        this._ParseScriptText(Code, 0x42, 0)  ; SCRIPTTEXT_ISVISIBLE := 2, SCRIPTTEXT_ISPERSISTENT := 0x40
        this._SetScriptState(2)  ; SCRIPTSTATE_CONNECTED := 2
    }
    
    AddObject(Name, DispObj, AddMembers := false)
    {
        static a, supports_dispatch ; Test for built-in IDispatch support.
            := a := ((a:=ComObjArray(0xC,1))[0]:=[42]) &amp;&amp; a[0][1]=42
        if IsObject(DispObj) &amp;&amp; !(supports_dispatch || ComObjType(DispObj))
            throw Exception(&quot;Adding a non-COM object requires AutoHotkey v1.1.17+&quot;, -1)
        this._objects[Name] := DispObj
        this._AddNamedItem(Name, AddMembers ? 8 : 2)  ; SCRIPTITEM_ISVISIBLE := 2, SCRIPTITEM_GLOBALMEMBERS := 8
    }
    
    _GetObjectUnk(Name)
    {
        return !IsObject(dsp := this._objects[Name]) ? dsp  ; Pointer
            : ComObjValue(dsp) ? ComObjValue(dsp)  ; ComObject
            : &amp;dsp  ; AutoHotkey object
    }
    
    class _base
    {
        __Call(Method, Params*)
        {
            if ObjHasKey(this, &quot;_dsp&quot;)
                try
                    return (this._dsp)[Method](Params*)
                catch e
                    throw Exception(e.Message, -1, e.Extra)
        }
        
        __Get(Property, Params*)
        {
            if ObjHasKey(this, &quot;_dsp&quot;)
                try
                    return (this._dsp)[Property, Params*]
                catch e
                    throw Exception(e.Message, -1, e.Extra)
        }
        
        __Set(Property, Params*)
        {
            if ObjHasKey(this, &quot;_dsp&quot;)
            {
                Value := Params.Pop()
                try
                    return (this._dsp)[Property, Params*] := Value
                catch e
                    throw Exception(e.Message, -1, e.Extra)
            }
        }
    }
    
    _SetScriptSite(Site)
    {
        hr := DllCall(NumGet(NumGet((p:=this._script)+0)+3*A_PtrSize), &quot;ptr&quot;, p, &quot;ptr&quot;, Site)
        if (hr &lt; 0)
            this._HRFail(hr, &quot;IActiveScript::SetScriptSite&quot;)
    }
    
    _SetScriptState(State)
    {
        hr := DllCall(NumGet(NumGet((p:=this._script)+0)+5*A_PtrSize), &quot;ptr&quot;, p, &quot;int&quot;, State)
        if (hr &lt; 0)
            this._HRFail(hr, &quot;IActiveScript::SetScriptState&quot;)
    }
    
    _AddNamedItem(Name, Flags)
    {
        hr := DllCall(NumGet(NumGet((p:=this._script)+0)+8*A_PtrSize), &quot;ptr&quot;, p, &quot;wstr&quot;, Name, &quot;uint&quot;, Flags)
        if (hr &lt; 0)
            this._HRFail(hr, &quot;IActiveScript::AddNamedItem&quot;)
    }
    
    _GetScriptDispatch()
    {
        hr := DllCall(NumGet(NumGet((p:=this._script)+0)+10*A_PtrSize), &quot;ptr&quot;, p, &quot;ptr&quot;, 0, &quot;ptr*&quot;, pdsp)
        if (hr &lt; 0)
            this._HRFail(hr, &quot;IActiveScript::GetScriptDispatch&quot;)
        return ComObject(9, pdsp, 1)
    }
    
    _InitNew()
    {
        hr := DllCall(NumGet(NumGet((p:=this._scriptParse)+0)+3*A_PtrSize), &quot;ptr&quot;, p)
        if (hr &lt; 0)
            this._HRFail(hr, &quot;IActiveScriptParse::InitNew&quot;)
    }
    
    _ParseScriptText(Code, Flags, pvarResult)
    {
        VarSetCapacity(excp, 8 * A_PtrSize, 0)
        hr := DllCall(NumGet(NumGet((p:=this._scriptParse)+0)+5*A_PtrSize), &quot;ptr&quot;, p
            , &quot;wstr&quot;, Code, &quot;ptr&quot;, 0, &quot;ptr&quot;, 0, &quot;ptr&quot;, 0, &quot;uptr&quot;, 0, &quot;uint&quot;, 1
            , &quot;uint&quot;, Flags, &quot;ptr&quot;, pvarResult, &quot;ptr&quot;, 0)
        if (hr &lt; 0)
            this._HRFail(hr, &quot;IActiveScriptParse::ParseScriptText&quot;)
    }
    
    _HRFail(hr, what)
    {
        if e := this.Error
        {
            this.Error := &quot;&quot;
            throw Exception(&quot;`nError code:`t&quot; this._HRFormat(e.HRESULT)
                . &quot;`nSource:`t`t&quot; e.Source &quot;`nDescription:`t&quot; e.Description
                . &quot;`nLine:`t`t&quot; e.Line &quot;`nColumn:`t`t&quot; e.Column
                . &quot;`nLine text:`t`t&quot; e.LineText, -3)
        }
        throw Exception(what &quot; failed with code &quot; this._HRFormat(hr), -2)
    }
    
    _HRFormat(hr)
    {
        return Format(&quot;0x{1:X}&quot;, hr &amp; 0xFFFFFFFF)
    }
    
    _OnScriptError(err) ; IActiveScriptError err
    {
        VarSetCapacity(excp, 8 * A_PtrSize, 0)
        DllCall(NumGet(NumGet(err+0)+3*A_PtrSize), &quot;ptr&quot;, err, &quot;ptr&quot;, &amp;excp) ; GetExceptionInfo
        DllCall(NumGet(NumGet(err+0)+4*A_PtrSize), &quot;ptr&quot;, err, &quot;uint*&quot;, srcctx, &quot;uint*&quot;, srcline, &quot;int*&quot;, srccol) ; GetSourcePosition
        DllCall(NumGet(NumGet(err+0)+5*A_PtrSize), &quot;ptr&quot;, err, &quot;ptr*&quot;, pbstrcode) ; GetSourceLineText
        code := StrGet(pbstrcode, &quot;UTF-16&quot;), DllCall(&quot;OleAut32\SysFreeString&quot;, &quot;ptr&quot;, pbstrcode)
        if fn := NumGet(excp, 6 * A_PtrSize) ; pfnDeferredFillIn
            DllCall(fn, &quot;ptr&quot;, &amp;excp)
        wcode := NumGet(excp, 0, &quot;ushort&quot;)
        hr := wcode ? 0x80040200 + wcode : NumGet(excp, 7 * A_PtrSize, &quot;uint&quot;)
        this.Error := {HRESULT: hr, Line: srcline, Column: srccol, LineText: code}
        static Infos := &quot;Source,Description,HelpFile&quot;
        Loop Parse, % Infos, `,
            if pbstr := NumGet(excp, A_Index * A_PtrSize)
                this.Error[A_LoopField] := StrGet(pbstr, &quot;UTF-16&quot;), DllCall(&quot;OleAut32\SysFreeString&quot;, &quot;ptr&quot;, pbstr)
        return 0x80004001 ; E_NOTIMPL (let Exec/Eval get a fail result)
    }
    
    __Delete()
    {
        if this._script
        {
            DllCall(NumGet(NumGet((p:=this._script)+0)+7*A_PtrSize), &quot;ptr&quot;, p)  ; Close
            ObjRelease(this._script)
        }
        if this._scriptParse
            ObjRelease(this._scriptParse)
    }
    
    static IID := &quot;{BB1A2AE1-A4F9-11cf-8F20-00805F2CD064}&quot;
    static IID_Parse := A_PtrSize=8 ? &quot;{C7EF7658-E1EE-480E-97EA-D52CB4D76D17}&quot; : &quot;{BB1A2AE2-A4F9-11cf-8F20-00805F2CD064}&quot;
}

class ActiveScriptSite
{
    __New(Script)
    {
        ObjSetCapacity(this, &quot;_site&quot;, 3 * A_PtrSize)
        NumPut(&amp;Script
        , NumPut(ActiveScriptSite._vftable(&quot;_vft_w&quot;, &quot;31122&quot;, 0x100)
        , NumPut(ActiveScriptSite._vftable(&quot;_vft&quot;, &quot;31125232211&quot;, 0)
            , this.ptr := ObjGetAddress(this, &quot;_site&quot;))))
    }
    
    _vftable(Name, PrmCounts, EIBase)
    {
        if p := ObjGetAddress(this, Name)
            return p
        ObjSetCapacity(this, Name, StrLen(PrmCounts) * A_PtrSize)
        p := ObjGetAddress(this, Name)
        Loop Parse, % PrmCounts
        {
            cb := RegisterCallback(&quot;_ActiveScriptSite&quot;, &quot;F&quot;, A_LoopField, A_Index + EIBase)
            NumPut(cb, p + (A_Index-1) * A_PtrSize)
        }
        return p
    }
}

_ActiveScriptSite(this, a1:=0, a2:=0, a3:=0, a4:=0, a5:=0)
{
    Method := A_EventInfo &amp; 0xFF
    if A_EventInfo &gt;= 0x100  ; IActiveScriptSiteWindow
    {
        if Method = 4  ; GetWindow
        {
            NumPut(0, a1+0) ; *phwnd := 0
            return 0 ; S_OK
        }
        if Method = 5  ; EnableModeless
        {
            return 0 ; S_OK
        }
        this -= A_PtrSize     ; Cast to IActiveScriptSite
    }
    ;else: IActiveScriptSite
    if Method = 1  ; QueryInterface
    {
        iid := _AS_GUIDToString(a1)
        if (iid = &quot;{00000000-0000-0000-C000-000000000046}&quot;  ; IUnknown
         || iid = &quot;{DB01A1E3-A42B-11cf-8F20-00805F2CD064}&quot;) ; IActiveScriptSite
        {
            NumPut(this, a2+0)
            return 0 ; S_OK
        }
        if (iid = &quot;{D10F6761-83E9-11cf-8F20-00805F2CD064}&quot;) ; IActiveScriptSiteWindow
        {
            NumPut(this + A_PtrSize, a2+0)
            return 0 ; S_OK
        }
        NumPut(0, a2+0)
        return 0x80004002 ; E_NOINTERFACE
    }
    if Method = 5  ; GetItemInfo
    {
        a1 := StrGet(a1, &quot;UTF-16&quot;)
        , (a3 &amp;&amp; NumPut(0, a3+0))  ; *ppiunkItem := NULL
        , (a4 &amp;&amp; NumPut(0, a4+0))  ; *ppti := NULL
        if (a2 &amp; 1) ; SCRIPTINFO_IUNKNOWN
        {
            if !(unk := Object(NumGet(this + A_PtrSize*2))._GetObjectUnk(a1))
                return 0x8002802B ; TYPE_E_ELEMENTNOTFOUND
            ObjAddRef(unk), NumPut(unk, a3+0)
        }
        return 0 ; S_OK
    }
    if Method = 9  ; OnScriptError
        return Object(NumGet(this + A_PtrSize*2))._OnScriptError(a1)
    
    ; AddRef and Release don&#039;t do anything because we want to avoid circular references.
    ; The site and IActiveScript are both released when the AHK script releases its last
    ; reference to the ActiveScript object.
    
    ; All of the other methods don&#039;t require implementations.
    return 0x80004001 ; E_NOTIMPL
}

_AS_GUIDToString(pGUID)
{
    VarSetCapacity(String, 38*2)
    DllCall(&quot;ole32\StringFromGUID2&quot;, &quot;ptr&quot;, pGUID, &quot;str&quot;, String, &quot;int&quot;, 39)
    return String
} </code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Sun, 11 Jun 2017 01:45:35 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=116532#p116532</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: генератор Gmail адресов с точками [Решено]]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=116529#p116529</link>
			<description><![CDATA[<div class="quotebox"><cite>stealzy пишет:</cite><blockquote><p>Ваш список</p></blockquote></div><p>Спасибо, конечно, но это был придуманный email-адрес чисто для примера. Очень хотелось бы научиться подобное делать самому. Возьмусь за разбор кода завтра.</p><div class="quotebox"><cite>stealzy пишет:</cite><blockquote><p>таки зачем вам все эти адреса?</p></blockquote></div><p>Для использования по прямому назначению. Это не относится к данной теме.</p>]]></description>
			<author><![CDATA[null@example.com (Жмопель)]]></author>
			<pubDate>Sat, 10 Jun 2017 19:52:41 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=116529#p116529</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: генератор Gmail адресов с точками [Решено]]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=116527#p116527</link>
			<description><![CDATA[<p>При ограничени в 2 точки алгоритм можно наверно упростить, но я просто добавил условие в оригинальный.<br />Ваш список из 26*(26-1)/2+1 адресов:<br /></p><div class="codebox"><pre><code>abcdefghijklmnopqrstuvwxyz@gmail.com
a.bcdefghijklmnopqrstuvwxyz@gmail.com
abcdefghijklmnopqrstuvwxy.z@gmail.com
a.bcdefghijklmnopqrstuvwxy.z@gmail.com
abcdefghijklmnopqrstuvwx.yz@gmail.com
a.bcdefghijklmnopqrstuvwx.yz@gmail.com
abcdefghijklmnopqrstuvwx.y.z@gmail.com
abcdefghijklmnopqrstuvw.xyz@gmail.com
a.bcdefghijklmnopqrstuvw.xyz@gmail.com
abcdefghijklmnopqrstuvw.xy.z@gmail.com
abcdefghijklmnopqrstuvw.x.yz@gmail.com
abcdefghijklmnopqrstuv.wxyz@gmail.com
a.bcdefghijklmnopqrstuv.wxyz@gmail.com
abcdefghijklmnopqrstuv.wxy.z@gmail.com
abcdefghijklmnopqrstuv.wx.yz@gmail.com
abcdefghijklmnopqrstuv.w.xyz@gmail.com
abcdefghijklmnopqrstu.vwxyz@gmail.com
a.bcdefghijklmnopqrstu.vwxyz@gmail.com
abcdefghijklmnopqrstu.vwxy.z@gmail.com
abcdefghijklmnopqrstu.vwx.yz@gmail.com
abcdefghijklmnopqrstu.vw.xyz@gmail.com
abcdefghijklmnopqrstu.v.wxyz@gmail.com
abcdefghijklmnopqrst.uvwxyz@gmail.com
a.bcdefghijklmnopqrst.uvwxyz@gmail.com
abcdefghijklmnopqrst.uvwxy.z@gmail.com
abcdefghijklmnopqrst.uvwx.yz@gmail.com
abcdefghijklmnopqrst.uvw.xyz@gmail.com
abcdefghijklmnopqrst.uv.wxyz@gmail.com
abcdefghijklmnopqrst.u.vwxyz@gmail.com
abcdefghijklmnopqrs.tuvwxyz@gmail.com
a.bcdefghijklmnopqrs.tuvwxyz@gmail.com
abcdefghijklmnopqrs.tuvwxy.z@gmail.com
abcdefghijklmnopqrs.tuvwx.yz@gmail.com
abcdefghijklmnopqrs.tuvw.xyz@gmail.com
abcdefghijklmnopqrs.tuv.wxyz@gmail.com
abcdefghijklmnopqrs.tu.vwxyz@gmail.com
abcdefghijklmnopqrs.t.uvwxyz@gmail.com
abcdefghijklmnopqr.stuvwxyz@gmail.com
a.bcdefghijklmnopqr.stuvwxyz@gmail.com
abcdefghijklmnopqr.stuvwxy.z@gmail.com
abcdefghijklmnopqr.stuvwx.yz@gmail.com
abcdefghijklmnopqr.stuvw.xyz@gmail.com
abcdefghijklmnopqr.stuv.wxyz@gmail.com
abcdefghijklmnopqr.stu.vwxyz@gmail.com
abcdefghijklmnopqr.st.uvwxyz@gmail.com
abcdefghijklmnopqr.s.tuvwxyz@gmail.com
abcdefghijklmnopq.rstuvwxyz@gmail.com
a.bcdefghijklmnopq.rstuvwxyz@gmail.com
abcdefghijklmnopq.rstuvwxy.z@gmail.com
abcdefghijklmnopq.rstuvwx.yz@gmail.com
abcdefghijklmnopq.rstuvw.xyz@gmail.com
abcdefghijklmnopq.rstuv.wxyz@gmail.com
abcdefghijklmnopq.rstu.vwxyz@gmail.com
abcdefghijklmnopq.rst.uvwxyz@gmail.com
abcdefghijklmnopq.rs.tuvwxyz@gmail.com
abcdefghijklmnopq.r.stuvwxyz@gmail.com
abcdefghijklmnop.qrstuvwxyz@gmail.com
a.bcdefghijklmnop.qrstuvwxyz@gmail.com
abcdefghijklmnop.qrstuvwxy.z@gmail.com
abcdefghijklmnop.qrstuvwx.yz@gmail.com
abcdefghijklmnop.qrstuvw.xyz@gmail.com
abcdefghijklmnop.qrstuv.wxyz@gmail.com
abcdefghijklmnop.qrstu.vwxyz@gmail.com
abcdefghijklmnop.qrst.uvwxyz@gmail.com
abcdefghijklmnop.qrs.tuvwxyz@gmail.com
abcdefghijklmnop.qr.stuvwxyz@gmail.com
abcdefghijklmnop.q.rstuvwxyz@gmail.com
abcdefghijklmno.pqrstuvwxyz@gmail.com
a.bcdefghijklmno.pqrstuvwxyz@gmail.com
abcdefghijklmno.pqrstuvwxy.z@gmail.com
abcdefghijklmno.pqrstuvwx.yz@gmail.com
abcdefghijklmno.pqrstuvw.xyz@gmail.com
abcdefghijklmno.pqrstuv.wxyz@gmail.com
abcdefghijklmno.pqrstu.vwxyz@gmail.com
abcdefghijklmno.pqrst.uvwxyz@gmail.com
abcdefghijklmno.pqrs.tuvwxyz@gmail.com
abcdefghijklmno.pqr.stuvwxyz@gmail.com
abcdefghijklmno.pq.rstuvwxyz@gmail.com
abcdefghijklmno.p.qrstuvwxyz@gmail.com
abcdefghijklmn.opqrstuvwxyz@gmail.com
a.bcdefghijklmn.opqrstuvwxyz@gmail.com
abcdefghijklmn.opqrstuvwxy.z@gmail.com
abcdefghijklmn.opqrstuvwx.yz@gmail.com
abcdefghijklmn.opqrstuvw.xyz@gmail.com
abcdefghijklmn.opqrstuv.wxyz@gmail.com
abcdefghijklmn.opqrstu.vwxyz@gmail.com
abcdefghijklmn.opqrst.uvwxyz@gmail.com
abcdefghijklmn.opqrs.tuvwxyz@gmail.com
abcdefghijklmn.opqr.stuvwxyz@gmail.com
abcdefghijklmn.opq.rstuvwxyz@gmail.com
abcdefghijklmn.op.qrstuvwxyz@gmail.com
abcdefghijklmn.o.pqrstuvwxyz@gmail.com
abcdefghijklm.nopqrstuvwxyz@gmail.com
a.bcdefghijklm.nopqrstuvwxyz@gmail.com
abcdefghijklm.nopqrstuvwxy.z@gmail.com
abcdefghijklm.nopqrstuvwx.yz@gmail.com
abcdefghijklm.nopqrstuvw.xyz@gmail.com
abcdefghijklm.nopqrstuv.wxyz@gmail.com
abcdefghijklm.nopqrstu.vwxyz@gmail.com
abcdefghijklm.nopqrst.uvwxyz@gmail.com
abcdefghijklm.nopqrs.tuvwxyz@gmail.com
abcdefghijklm.nopqr.stuvwxyz@gmail.com
abcdefghijklm.nopq.rstuvwxyz@gmail.com
abcdefghijklm.nop.qrstuvwxyz@gmail.com
abcdefghijklm.no.pqrstuvwxyz@gmail.com
abcdefghijklm.n.opqrstuvwxyz@gmail.com
abcdefghijkl.mnopqrstuvwxyz@gmail.com
a.bcdefghijkl.mnopqrstuvwxyz@gmail.com
abcdefghijkl.mnopqrstuvwxy.z@gmail.com
abcdefghijkl.mnopqrstuvwx.yz@gmail.com
abcdefghijkl.mnopqrstuvw.xyz@gmail.com
abcdefghijkl.mnopqrstuv.wxyz@gmail.com
abcdefghijkl.mnopqrstu.vwxyz@gmail.com
abcdefghijkl.mnopqrst.uvwxyz@gmail.com
abcdefghijkl.mnopqrs.tuvwxyz@gmail.com
abcdefghijkl.mnopqr.stuvwxyz@gmail.com
abcdefghijkl.mnopq.rstuvwxyz@gmail.com
abcdefghijkl.mnop.qrstuvwxyz@gmail.com
abcdefghijkl.mno.pqrstuvwxyz@gmail.com
abcdefghijkl.mn.opqrstuvwxyz@gmail.com
abcdefghijkl.m.nopqrstuvwxyz@gmail.com
abcdefghijk.lmnopqrstuvwxyz@gmail.com
a.bcdefghijk.lmnopqrstuvwxyz@gmail.com
abcdefghijk.lmnopqrstuvwxy.z@gmail.com
abcdefghijk.lmnopqrstuvwx.yz@gmail.com
abcdefghijk.lmnopqrstuvw.xyz@gmail.com
abcdefghijk.lmnopqrstuv.wxyz@gmail.com
abcdefghijk.lmnopqrstu.vwxyz@gmail.com
abcdefghijk.lmnopqrst.uvwxyz@gmail.com
abcdefghijk.lmnopqrs.tuvwxyz@gmail.com
abcdefghijk.lmnopqr.stuvwxyz@gmail.com
abcdefghijk.lmnopq.rstuvwxyz@gmail.com
abcdefghijk.lmnop.qrstuvwxyz@gmail.com
abcdefghijk.lmno.pqrstuvwxyz@gmail.com
abcdefghijk.lmn.opqrstuvwxyz@gmail.com
abcdefghijk.lm.nopqrstuvwxyz@gmail.com
abcdefghijk.l.mnopqrstuvwxyz@gmail.com
abcdefghij.klmnopqrstuvwxyz@gmail.com
a.bcdefghij.klmnopqrstuvwxyz@gmail.com
abcdefghij.klmnopqrstuvwxy.z@gmail.com
abcdefghij.klmnopqrstuvwx.yz@gmail.com
abcdefghij.klmnopqrstuvw.xyz@gmail.com
abcdefghij.klmnopqrstuv.wxyz@gmail.com
abcdefghij.klmnopqrstu.vwxyz@gmail.com
abcdefghij.klmnopqrst.uvwxyz@gmail.com
abcdefghij.klmnopqrs.tuvwxyz@gmail.com
abcdefghij.klmnopqr.stuvwxyz@gmail.com
abcdefghij.klmnopq.rstuvwxyz@gmail.com
abcdefghij.klmnop.qrstuvwxyz@gmail.com
abcdefghij.klmno.pqrstuvwxyz@gmail.com
abcdefghij.klmn.opqrstuvwxyz@gmail.com
abcdefghij.klm.nopqrstuvwxyz@gmail.com
abcdefghij.kl.mnopqrstuvwxyz@gmail.com
abcdefghij.k.lmnopqrstuvwxyz@gmail.com
abcdefghi.jklmnopqrstuvwxyz@gmail.com
a.bcdefghi.jklmnopqrstuvwxyz@gmail.com
abcdefghi.jklmnopqrstuvwxy.z@gmail.com
abcdefghi.jklmnopqrstuvwx.yz@gmail.com
abcdefghi.jklmnopqrstuvw.xyz@gmail.com
abcdefghi.jklmnopqrstuv.wxyz@gmail.com
abcdefghi.jklmnopqrstu.vwxyz@gmail.com
abcdefghi.jklmnopqrst.uvwxyz@gmail.com
abcdefghi.jklmnopqrs.tuvwxyz@gmail.com
abcdefghi.jklmnopqr.stuvwxyz@gmail.com
abcdefghi.jklmnopq.rstuvwxyz@gmail.com
abcdefghi.jklmnop.qrstuvwxyz@gmail.com
abcdefghi.jklmno.pqrstuvwxyz@gmail.com
abcdefghi.jklmn.opqrstuvwxyz@gmail.com
abcdefghi.jklm.nopqrstuvwxyz@gmail.com
abcdefghi.jkl.mnopqrstuvwxyz@gmail.com
abcdefghi.jk.lmnopqrstuvwxyz@gmail.com
abcdefghi.j.klmnopqrstuvwxyz@gmail.com
abcdefgh.ijklmnopqrstuvwxyz@gmail.com
a.bcdefgh.ijklmnopqrstuvwxyz@gmail.com
abcdefgh.ijklmnopqrstuvwxy.z@gmail.com
abcdefgh.ijklmnopqrstuvwx.yz@gmail.com
abcdefgh.ijklmnopqrstuvw.xyz@gmail.com
abcdefgh.ijklmnopqrstuv.wxyz@gmail.com
abcdefgh.ijklmnopqrstu.vwxyz@gmail.com
abcdefgh.ijklmnopqrst.uvwxyz@gmail.com
abcdefgh.ijklmnopqrs.tuvwxyz@gmail.com
abcdefgh.ijklmnopqr.stuvwxyz@gmail.com
abcdefgh.ijklmnopq.rstuvwxyz@gmail.com
abcdefgh.ijklmnop.qrstuvwxyz@gmail.com
abcdefgh.ijklmno.pqrstuvwxyz@gmail.com
abcdefgh.ijklmn.opqrstuvwxyz@gmail.com
abcdefgh.ijklm.nopqrstuvwxyz@gmail.com
abcdefgh.ijkl.mnopqrstuvwxyz@gmail.com
abcdefgh.ijk.lmnopqrstuvwxyz@gmail.com
abcdefgh.ij.klmnopqrstuvwxyz@gmail.com
abcdefgh.i.jklmnopqrstuvwxyz@gmail.com
abcdefg.hijklmnopqrstuvwxyz@gmail.com
a.bcdefg.hijklmnopqrstuvwxyz@gmail.com
abcdefg.hijklmnopqrstuvwxy.z@gmail.com
abcdefg.hijklmnopqrstuvwx.yz@gmail.com
abcdefg.hijklmnopqrstuvw.xyz@gmail.com
abcdefg.hijklmnopqrstuv.wxyz@gmail.com
abcdefg.hijklmnopqrstu.vwxyz@gmail.com
abcdefg.hijklmnopqrst.uvwxyz@gmail.com
abcdefg.hijklmnopqrs.tuvwxyz@gmail.com
abcdefg.hijklmnopqr.stuvwxyz@gmail.com
abcdefg.hijklmnopq.rstuvwxyz@gmail.com
abcdefg.hijklmnop.qrstuvwxyz@gmail.com
abcdefg.hijklmno.pqrstuvwxyz@gmail.com
abcdefg.hijklmn.opqrstuvwxyz@gmail.com
abcdefg.hijklm.nopqrstuvwxyz@gmail.com
abcdefg.hijkl.mnopqrstuvwxyz@gmail.com
abcdefg.hijk.lmnopqrstuvwxyz@gmail.com
abcdefg.hij.klmnopqrstuvwxyz@gmail.com
abcdefg.hi.jklmnopqrstuvwxyz@gmail.com
abcdefg.h.ijklmnopqrstuvwxyz@gmail.com
abcdef.ghijklmnopqrstuvwxyz@gmail.com
a.bcdef.ghijklmnopqrstuvwxyz@gmail.com
abcdef.ghijklmnopqrstuvwxy.z@gmail.com
abcdef.ghijklmnopqrstuvwx.yz@gmail.com
abcdef.ghijklmnopqrstuvw.xyz@gmail.com
abcdef.ghijklmnopqrstuv.wxyz@gmail.com
abcdef.ghijklmnopqrstu.vwxyz@gmail.com
abcdef.ghijklmnopqrst.uvwxyz@gmail.com
abcdef.ghijklmnopqrs.tuvwxyz@gmail.com
abcdef.ghijklmnopqr.stuvwxyz@gmail.com
abcdef.ghijklmnopq.rstuvwxyz@gmail.com
abcdef.ghijklmnop.qrstuvwxyz@gmail.com
abcdef.ghijklmno.pqrstuvwxyz@gmail.com
abcdef.ghijklmn.opqrstuvwxyz@gmail.com
abcdef.ghijklm.nopqrstuvwxyz@gmail.com
abcdef.ghijkl.mnopqrstuvwxyz@gmail.com
abcdef.ghijk.lmnopqrstuvwxyz@gmail.com
abcdef.ghij.klmnopqrstuvwxyz@gmail.com
abcdef.ghi.jklmnopqrstuvwxyz@gmail.com
abcdef.gh.ijklmnopqrstuvwxyz@gmail.com
abcdef.g.hijklmnopqrstuvwxyz@gmail.com
abcde.fghijklmnopqrstuvwxyz@gmail.com
a.bcde.fghijklmnopqrstuvwxyz@gmail.com
abcde.fghijklmnopqrstuvwxy.z@gmail.com
abcde.fghijklmnopqrstuvwx.yz@gmail.com
abcde.fghijklmnopqrstuvw.xyz@gmail.com
abcde.fghijklmnopqrstuv.wxyz@gmail.com
abcde.fghijklmnopqrstu.vwxyz@gmail.com
abcde.fghijklmnopqrst.uvwxyz@gmail.com
abcde.fghijklmnopqrs.tuvwxyz@gmail.com
abcde.fghijklmnopqr.stuvwxyz@gmail.com
abcde.fghijklmnopq.rstuvwxyz@gmail.com
abcde.fghijklmnop.qrstuvwxyz@gmail.com
abcde.fghijklmno.pqrstuvwxyz@gmail.com
abcde.fghijklmn.opqrstuvwxyz@gmail.com
abcde.fghijklm.nopqrstuvwxyz@gmail.com
abcde.fghijkl.mnopqrstuvwxyz@gmail.com
abcde.fghijk.lmnopqrstuvwxyz@gmail.com
abcde.fghij.klmnopqrstuvwxyz@gmail.com
abcde.fghi.jklmnopqrstuvwxyz@gmail.com
abcde.fgh.ijklmnopqrstuvwxyz@gmail.com
abcde.fg.hijklmnopqrstuvwxyz@gmail.com
abcde.f.ghijklmnopqrstuvwxyz@gmail.com
abcd.efghijklmnopqrstuvwxyz@gmail.com
a.bcd.efghijklmnopqrstuvwxyz@gmail.com
abcd.efghijklmnopqrstuvwxy.z@gmail.com
abcd.efghijklmnopqrstuvwx.yz@gmail.com
abcd.efghijklmnopqrstuvw.xyz@gmail.com
abcd.efghijklmnopqrstuv.wxyz@gmail.com
abcd.efghijklmnopqrstu.vwxyz@gmail.com
abcd.efghijklmnopqrst.uvwxyz@gmail.com
abcd.efghijklmnopqrs.tuvwxyz@gmail.com
abcd.efghijklmnopqr.stuvwxyz@gmail.com
abcd.efghijklmnopq.rstuvwxyz@gmail.com
abcd.efghijklmnop.qrstuvwxyz@gmail.com
abcd.efghijklmno.pqrstuvwxyz@gmail.com
abcd.efghijklmn.opqrstuvwxyz@gmail.com
abcd.efghijklm.nopqrstuvwxyz@gmail.com
abcd.efghijkl.mnopqrstuvwxyz@gmail.com
abcd.efghijk.lmnopqrstuvwxyz@gmail.com
abcd.efghij.klmnopqrstuvwxyz@gmail.com
abcd.efghi.jklmnopqrstuvwxyz@gmail.com
abcd.efgh.ijklmnopqrstuvwxyz@gmail.com
abcd.efg.hijklmnopqrstuvwxyz@gmail.com
abcd.ef.ghijklmnopqrstuvwxyz@gmail.com
abcd.e.fghijklmnopqrstuvwxyz@gmail.com
abc.defghijklmnopqrstuvwxyz@gmail.com
a.bc.defghijklmnopqrstuvwxyz@gmail.com
abc.defghijklmnopqrstuvwxy.z@gmail.com
abc.defghijklmnopqrstuvwx.yz@gmail.com
abc.defghijklmnopqrstuvw.xyz@gmail.com
abc.defghijklmnopqrstuv.wxyz@gmail.com
abc.defghijklmnopqrstu.vwxyz@gmail.com
abc.defghijklmnopqrst.uvwxyz@gmail.com
abc.defghijklmnopqrs.tuvwxyz@gmail.com
abc.defghijklmnopqr.stuvwxyz@gmail.com
abc.defghijklmnopq.rstuvwxyz@gmail.com
abc.defghijklmnop.qrstuvwxyz@gmail.com
abc.defghijklmno.pqrstuvwxyz@gmail.com
abc.defghijklmn.opqrstuvwxyz@gmail.com
abc.defghijklm.nopqrstuvwxyz@gmail.com
abc.defghijkl.mnopqrstuvwxyz@gmail.com
abc.defghijk.lmnopqrstuvwxyz@gmail.com
abc.defghij.klmnopqrstuvwxyz@gmail.com
abc.defghi.jklmnopqrstuvwxyz@gmail.com
abc.defgh.ijklmnopqrstuvwxyz@gmail.com
abc.defg.hijklmnopqrstuvwxyz@gmail.com
abc.def.ghijklmnopqrstuvwxyz@gmail.com
abc.de.fghijklmnopqrstuvwxyz@gmail.com
abc.d.efghijklmnopqrstuvwxyz@gmail.com
ab.cdefghijklmnopqrstuvwxyz@gmail.com
a.b.cdefghijklmnopqrstuvwxyz@gmail.com
ab.cdefghijklmnopqrstuvwxy.z@gmail.com
ab.cdefghijklmnopqrstuvwx.yz@gmail.com
ab.cdefghijklmnopqrstuvw.xyz@gmail.com
ab.cdefghijklmnopqrstuv.wxyz@gmail.com
ab.cdefghijklmnopqrstu.vwxyz@gmail.com
ab.cdefghijklmnopqrst.uvwxyz@gmail.com
ab.cdefghijklmnopqrs.tuvwxyz@gmail.com
ab.cdefghijklmnopqr.stuvwxyz@gmail.com
ab.cdefghijklmnopq.rstuvwxyz@gmail.com
ab.cdefghijklmnop.qrstuvwxyz@gmail.com
ab.cdefghijklmno.pqrstuvwxyz@gmail.com
ab.cdefghijklmn.opqrstuvwxyz@gmail.com
ab.cdefghijklm.nopqrstuvwxyz@gmail.com
ab.cdefghijkl.mnopqrstuvwxyz@gmail.com
ab.cdefghijk.lmnopqrstuvwxyz@gmail.com
ab.cdefghij.klmnopqrstuvwxyz@gmail.com
ab.cdefghi.jklmnopqrstuvwxyz@gmail.com
ab.cdefgh.ijklmnopqrstuvwxyz@gmail.com
ab.cdefg.hijklmnopqrstuvwxyz@gmail.com
ab.cdef.ghijklmnopqrstuvwxyz@gmail.com
ab.cde.fghijklmnopqrstuvwxyz@gmail.com
ab.cd.efghijklmnopqrstuvwxyz@gmail.com
ab.c.defghijklmnopqrstuvwxyz@gmail.com</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (stealzy)]]></author>
			<pubDate>Sat, 10 Jun 2017 19:31:27 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=116527#p116527</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: генератор Gmail адресов с точками [Решено]]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=116524#p116524</link>
			<description><![CDATA[<p>Да, я попутал порядок, цифру посчитал как раз из js исходника.<br />Перевести алгоритм на ahk получилось <img src="//forum.script-coding.com/img/smilies/cool.png" width="15" height="15" />.<br />Файлик кстати получается немаленький: 3 гига в utf или полтора в CP кодировке.<br />В архиве может занимать до 50 раз меньше места, но ждать придется огого <img src="//forum.script-coding.com/img/smilies/tongue.png" width="15" height="15" />.<br />AHK обрабатывает около 60 тысяч комбинаций в секунду, но уверен исполнение оригинального кода на node.js будет на порядок быстрее.</p>]]></description>
			<author><![CDATA[null@example.com (stealzy)]]></author>
			<pubDate>Sat, 10 Jun 2017 18:41:11 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=116524#p116524</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: генератор Gmail адресов с точками [Решено]]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=116521#p116521</link>
			<description><![CDATA[<p>В личных, разумеется <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p><div class="quotebox"><cite>stealzy пишет:</cite><blockquote><p>И зачем вам 33 тысячи адресов?</p></blockquote></div><p>33 миллиона. Но после отсеивания &quot;лишних&quot; их получится совсем немного. Лишние – с тремя и более точками в адресе, которые могут не приниматься в качестве валидного email-адреса.</p><p><em>Добавлено позже...</em><br />Взял JS-исходник генератора с того сайта по ссылке в первом посте. Сразу не подумал, что так можно <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /><br />Пример реализации отличный, хоть и на неизвестном мне языке, буду изучать.</p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><div class="codebox"><pre><code>self.addEventListener(&#039;message&#039;, function(e) {
    var data = e.data;
    generateEmails(data); }, false);

function generateEmails(username) {
    var username_length = username.length;
    var combinations = Math.pow(2, username_length - 1);
    for (i = 0; i &lt; combinations; i++) {
        var bin = decbin(i, username_length - 1);
        var full_email = &quot;&quot;;
        for (j = 0; j &lt; (username_length - 1); j++) { full_email += username[j];
            if (bin[j] == 1) { full_email += &quot;.&quot;; } }
        full_email += username[j] + &quot;@gmail.com\n&quot;;
        self.postMessage(full_email);
    }
}

function decbin(dec, length) {
    var out = &quot;&quot;;
    while (length--)
        out += (dec &gt;&gt; length) &amp; 1;
    return out;
}</code></pre></div></div></div>]]></description>
			<author><![CDATA[null@example.com (Жмопель)]]></author>
			<pubDate>Sat, 10 Jun 2017 16:06:02 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=116521#p116521</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: генератор Gmail адресов с точками [Решено]]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=116520#p116520</link>
			<description><![CDATA[<p>В каких целях хотите использовать?<br />И зачем вам 33 тысячи адресов?</p>]]></description>
			<author><![CDATA[null@example.com (stealzy)]]></author>
			<pubDate>Sat, 10 Jun 2017 16:02:29 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=116520#p116520</guid>
		</item>
		<item>
			<title><![CDATA[AHK: генератор Gmail адресов с точками [Решено]]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=116519#p116519</link>
			<description><![CDATA[<p>Доброго времени суток!</p><p>Испробовал несколько различных генераторов. Ни один из них не справился с задачей генерации вариаций адресов с точками из одного длинного email-адреса (например из &quot;abcdefghijklmnopqrstuvwxyz&quot; – 26 символов). По этой причине захотел написать свой генератор на AHK, но совершенно не представляю с чего начать, по какому алгоритму реализовать подобное. Прошу вас натолкнуть меня на мысль <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p><p>P.S.<br />На всякий случай поясню, что подразумеваю. Есть email-адрес, например &quot;12345@gmail.com&quot;. Генератор адресов с точкой, например как <a href="http://thebot.net/api/gmail/">этот</a>, из &quot;12345&quot; создаёт список:</p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><p>12345@gmail.com<br />1234.5@gmail.com<br />123.45@gmail.com<br />123.4.5@gmail.com<br />12.345@gmail.com<br />12.34.5@gmail.com<br />12.3.45@gmail.com<br />12.3.4.5@gmail.com<br />1.2345@gmail.com<br />1.234.5@gmail.com<br />1.23.45@gmail.com<br />1.23.4.5@gmail.com<br />1.2.345@gmail.com<br />1.2.34.5@gmail.com<br />1.2.3.45@gmail.com<br />1.2.3.4.5@gmail.com</p></div></div>]]></description>
			<author><![CDATA[null@example.com (Жмопель)]]></author>
			<pubDate>Sat, 10 Jun 2017 15:22:44 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=116519#p116519</guid>
		</item>
	</channel>
</rss>
