Esempio n. 1
0
bool CTorrent::MakeTorrent(uint64 uPieceLength, bool bMerkle, const QString& Name, bool bPrivate)
{
    CFile* pFile = GetFile();

    if(!pFile->IsComplete())
    {
        LogLine(LOG_DEBUG | LOG_ERROR, tr("A torrent can not be made form an Incompelte file %1").arg(pFile->GetFileName()));
        return false;
    }

    if(uPieceLength < KB2B(16)) //if(!uPieceLength)
    {
        uPieceLength = pFile->GetFileSize() / (KB2B(40) / 20); // target hast set size 40 KB

        uint64 i = KB2B(16);
        for (; i < MB2B(32); i *= 2)
        {
            if (i >= uPieceLength)
                break;
        }
        uPieceLength = i;
    }

    m_TorrentInfo = new CTorrentInfo(this);
    m_TorrentInfo->SetTorrentName(Name.isEmpty() ? pFile->GetFileName() : Name);
    m_TorrentInfo->SetTotalLength(pFile->GetFileSize());
    if(bPrivate)
        m_TorrentInfo->SetPrivate();

    m_TorrentInfo->SetProperty("CreationTime", QDateTime::currentDateTime());

    ASSERT(m_pHash.isNull());
    if(bMerkle)
        m_pHash = CFileHashPtr(new CFileHashTree(HashTorrent, m_TorrentInfo->GetTotalLength(), uPieceLength));
    else
        m_pHash = CFileHashPtr(new CFileHashSet(HashTorrent, m_TorrentInfo->GetTotalLength(), uPieceLength));
    return true;
}
Esempio n. 2
0
void waveform_update(const chunk_pt chunk){
    //const float alpha = 0.98;

    float vall = 0.;
    float vhigh = 0.;
    float vmid = 0.;
    float vlow = 0.;

    static float slow = 0.;
    static float shigh = 0.;

    static float qlow = 0.;
    static float qmid = 0.;
    static float qhigh = 0.;

#define MAX(a, b) ((a > b) ? a : b)
#define MIN(a, b) ((a < b) ? a : b)
#define LB1 0.03
#define LB2 0.0
//#define LA2 0.9914878835315175  // exp(-pi * f_1 / F_n); F_n = 22050Hz; f_1 = 60Hz
//#define LA2 0.9719069870254697  // exp(-pi * f_1 / F_n); F_n = 22050Hz; f_1 = 200Hz
#define LA2 0.98
#define L2A2 0.98 // DC-blocking 1-pole lpf
#define LN  ((1. - LA2) / (LB1 + LB2)) 
#define HB1 1.0
#define HB2 -1.0
//#define HA2 0.6521846367685737 // exp(-pi * f_1 / F_n); F_n = 22050Hz; f_1 = 3000Hz
#define HA2 0.65 // exp(-pi * f_1 / F_n); F_n = 22050Hz; f_1 = 3000Hz
#define HN  ((1. + LA2) / 2.) * 4
#define H2A2 0.7 // DC-blocking 1-pole lpf

#define LC1 0.9
#define MC1 0.8
#define HC1 0.7


    for(int i = 0; i < config.audio.chunk_size; i++){
        vall = MAX(vall, fabs(chunk[i]));

        //slow = slow * alpha + chunk[i] * (1 - alpha);
        //vlow = MAX(vlow, fabs(slow));
       
        //vlow = MAX(vlow, fabs( (chunk[i] - slow * LA2) * LB1 + slow * LB2) * LN);
        //slow = chunk[i] - slow * LA2;

        slow = LA2 * slow + (1. - LA2) * chunk[i];
        //vlow = MAX(vlow, fabs(slow));
        vlow = L2A2 * vlow + (1.0 - L2A2) * fabs(slow);

        //shigh = - shigh * alpha + chunk[i] * (1 - alpha);
        //vhigh = MAX(vhigh, fabs(shigh));
        
        //vhigh = MAX(vhigh, fabs( (chunk[i] - shigh * HA2) * HB1 + shigh * HB2) * HN);
        vhigh = H2A2 * vhigh + (1.0 - H2A2) * fabs(((chunk[i] - shigh * HA2) * HB1 + shigh * HB2) * HN);
        shigh = chunk[i] - shigh * HA2;
    }
    vhigh *= 1.5;
    vlow *= 2.0;
    vhigh = MIN(vhigh, vall);
    vlow = MIN(vlow, vall);
    vmid = MAX(0., vall - vlow - vhigh);

    waveform_bin_update(&waveform_bins[WF_LOW], (vlow + vmid + vhigh));
    waveform_bin_update(&waveform_bins[WF_MID], (vhigh + vmid));
    waveform_bin_update(&waveform_bins[WF_HIGH], (vhigh));
    waveform_bin_update(&beat_bin, MB2B(timebase_get() % 1000));

    qlow = LC1 * qlow + (1. - LC1) * vlow;
    qmid = MC1 * qmid + (1. - MC1) * vmid;
    qhigh = HC1 * qhigh + (1. - HC1) * vhigh;

    param_output_set(&waveform_bins[WF_LOW].output, MIN(qlow * 2., 1.));
    param_output_set(&waveform_bins[WF_MID].output, MIN(qmid * 2., 1.));
    param_output_set(&waveform_bins[WF_HIGH].output, MIN(qhigh * 2., 1.));

    memmove(beat_lines + 1, beat_lines, (WAVEFORM_HISTORY_SIZE - 1) * sizeof(char));
    beat_lines[0] = 0;
}
Esempio n. 3
0
QMap<QString, CSettings::SSetting> CNeoCore::GetDefaultCoreSettings()
{
	QMap<QString, CSettings::SSetting> Settings;

	// For values with limits is Default, Minimum, Maximum

	Settings.insert("Log/Merge", CSettings::SSetting(true));
	Settings.insert("Log/Store", CSettings::SSetting(false));
	Settings.insert("Log/Limit", CSettings::SSetting(10000,1000,100000));
	Settings.insert("Log/Level", CSettings::SSetting(1)); // 0 basic, 1 normal, 2 verbose

#ifdef _DEBUG
	Settings.insert("Modules/AutoStart",CSettings::SSetting(0));
#else
	Settings.insert("Modules/AutoStart",CSettings::SSetting(1));
#endif
	Settings.insert("Modules/NeoKad",CSettings::SSetting("NeoKad"));
	Settings.insert("Modules/MuleKad",CSettings::SSetting("MuleKad"));

	Settings.insert("Content/SaveInterval", CSettings::SSetting(MIN2S(5)));
	Settings.insert("Content/Temp", CSettings::SSetting(""));
	Settings.insert("Content/Incoming", CSettings::SSetting(""));
	Settings.insert("Content/UnifyedDirs", CSettings::SSetting(0));
	Settings.insert("Content/Shared", CSettings::SSetting(QStringList("")));
	Settings.insert("Content/VerifyTime", CSettings::SSetting(30));
	Settings.insert("Content/VerifySize", CSettings::SSetting(MB2B(5)));
	Settings.insert("Content/CacheLimit", CSettings::SSetting(MB2B(256), MB2B(128), MB2B(1024)));
	Settings.insert("Content/AddPaused", CSettings::SSetting(false));
	Settings.insert("Content/ShareNew", CSettings::SSetting(true));
	//Settings.insert("Content/ShowTemp", CSettings::SSetting(false));
	Settings.insert("Content/MagnetDomain", CSettings::SSetting("http://link.neoloader.to/"));
	Settings.insert("Content/MagnetRetry", CSettings::SSetting(MIN2S(10)));
#ifdef DECODER
	Settings.insert("Content/MagnetTimeLimit", CSettings::SSetting(MIN2S(60)));
	Settings.insert("Content/MagnetVolumeLimit", CSettings::SSetting(15));
	Settings.insert("Content/MagnetAllowDisplay", true);
#endif
	Settings.insert("Content/EndGameVolume", CSettings::SSetting(5,0,10));
	//Settings.insert("Content/AlwaysEndGame", CSettings::SSetting(true));
	Settings.insert("Content/FuseMount", CSettings::SSetting(""));
#ifndef WIN32
    Settings.insert("Content/FuseOptions", CSettings::SSetting("-o|allow_other"));
#endif
	Settings.insert("Content/IgnoreLastModified", CSettings::SSetting(0));
	Settings.insert("Content/ShareRatio", CSettings::SSetting(0)); // 0 means no ratio
	Settings.insert("Content/ShareTime", CSettings::SSetting(0)); // 0 means no limit
	Settings.insert("Content/AutoP2P", CSettings::SSetting(false));
	Settings.insert("Content/PreparePreview", CSettings::SSetting(false));
	Settings.insert("Content/Streamable", CSettings::SSetting("(mp4|m4v|divx|avi|mkv|mov|wmv|asf|mped|mpg|flv)"));
	Settings.insert("Content/FrontLoadSize", CSettings::SSetting(MB2B(8)));
	Settings.insert("Content/BackLoadSize", CSettings::SSetting(MB2B(2)));

	Settings.insert("Content/Preallocation", CSettings::SSetting(MB2B(100)));
	Settings.insert("Content/CalculateHashes", CSettings::SSetting(true));

	Settings.insert("Content/SaveSearch", CSettings::SSetting(true));

#ifdef _DEBUG
	Settings.insert("Other/PreventStandby", CSettings::SSetting(false));
#else
	Settings.insert("Other/PreventStandby", CSettings::SSetting(true));
#endif

	Settings.insert("Bandwidth/Upload", CSettings::SSetting(-1));
	Settings.insert("Bandwidth/Download", CSettings::SSetting(-1));
#ifdef _DEBUG
	Settings.insert("Bandwidth/UseUPnP",CSettings::SSetting(false));
#else
	Settings.insert("Bandwidth/UseUPnP",CSettings::SSetting(true));
#endif
	Settings.insert("Bandwidth/UseIPv6",CSettings::SSetting(false));
	Settings.insert("Bandwidth/DefaultNIC",CSettings::SSetting(""));
	Settings.insert("Bandwidth/WebProxy", CSettings::SSetting(""));
	Settings.insert("Bandwidth/MaxConnections", CSettings::SSetting(2500));
	Settings.insert("Bandwidth/MaxNewPer5Sec", CSettings::SSetting(250));
	Settings.insert("Bandwidth/TransportLimiting", CSettings::SSetting(true));
	Settings.insert("Bandwidth/FrameOverhead", CSettings::SSetting(18));

	Settings.insert("Upload/HistoryDepth", CSettings::SSetting(10,50,100));
	Settings.insert("Upload/UpWaitTime", CSettings::SSetting(HR2S(3),HR2S(1),HR2S(5)));
	Settings.insert("Upload/SlotSpeed", CSettings::SSetting(KB2B(8)));
	//Settings.insert("Upload/SlotFocus", CSettings::SSetting(false));
	Settings.insert("Upload/TrickleVolume", CSettings::SSetting(2));
	Settings.insert("Upload/TrickleSpeed", CSettings::SSetting(KB2B(1)));
	Settings.insert("Upload/DropBlocking", CSettings::SSetting(false));

	Settings.insert("Pinger/MinSpeed", CSettings::SSetting(KB2B(10))); // 10 kb/s
	Settings.insert("Pinger/MaxSpeed", CSettings::SSetting(-1));
	Settings.insert("Pinger/HostsToTrace", CSettings::SSetting(10));
	Settings.insert("Pinger/MaxFails", CSettings::SSetting(60));
	Settings.insert("Pinger/InitialPings", CSettings::SSetting(10));
	Settings.insert("Pinger/ToleranceVal", CSettings::SSetting(""));
	Settings.insert("Pinger/UpDivider", CSettings::SSetting(10));
	Settings.insert("Pinger/DownDivider", CSettings::SSetting(10));
	Settings.insert("Pinger/Average", CSettings::SSetting(3));
	Settings.insert("Pinger/Host", CSettings::SSetting(""));


	Settings.insert("PeerWatch/Enable",CSettings::SSetting(2));
	Settings.insert("PeerWatch/BlockTime", CSettings::SSetting(MIN2S(10),MIN2S(5),MIN2S(60)));
	Settings.insert("PeerWatch/BanTime", CSettings::SSetting(HR2S(2),HR2S(1),HR2S(6)));
	//Settings.insert("PeerWatch/IPFilter",CSettings::SSetting(""));

	Settings.insert("NeoShare/IdleTimeout",CSettings::SSetting(MIN2S(2),MIN2S(1),MIN2S(5)));
	Settings.insert("NeoShare/KeepAlive",CSettings::SSetting(60,30,MIN2S(3)));
	Settings.insert("NeoShare/ConnectTimeout",CSettings::SSetting(20,10,120));
	Settings.insert("NeoShare/RouteTimeout", CSettings::SSetting(MIN2S(5),MIN2S(1),MIN2S(15)));
	Settings.insert("NeoShare/MaxEntities", CSettings::SSetting(250));
	Settings.insert("NeoShare/RequestInterval",CSettings::SSetting(MIN2S(20),MIN2S(10),MIN2S(60)));
	Settings.insert("NeoShare/RequestLimit",CSettings::SSetting(100,10,250));
	Settings.insert("NeoShare/SaveInterval", CSettings::SSetting(MIN2S(5)));
	Settings.insert("NeoShare/SaveEntities",CSettings::SSetting(false));
	Settings.insert("NeoShare/KadPublishmentVolume",CSettings::SSetting(10,5,100));
	Settings.insert("NeoShare/KadLookupVolume",CSettings::SSetting(20,5,100));
	Settings.insert("NeoShare/KadLookupInterval",CSettings::SSetting(MIN2S(20),MIN2S(10),MIN2S(60)));
	Settings.insert("NeoShare/HubCheckoutInterval",CSettings::SSetting(MIN2S(40),MIN2S(20),MIN2S(120)));
	Settings.insert("NeoShare/LoadTreshold", CSettings::SSetting(75,50,100));
	Settings.insert("NeoShare/SaturationLimit", CSettings::SSetting(10,5,20));
	Settings.insert("NeoShare/Enable", CSettings::SSetting(true));
	Settings.insert("NeoShare/Anonymity", CSettings::SSetting(0, 0, 4));
	Settings.insert("NeoShare/Upload", CSettings::SSetting(-1));
	Settings.insert("NeoShare/Download", CSettings::SSetting(-1));
	Settings.insert("NeoShare/Priority", CSettings::SSetting(0));

	Settings.insert("NeoKad/Port", CSettings::SSetting(GetRandomInt(9000, 9999)));
	Settings.insert("NeoKad/TargetID", CSettings::SSetting(""));
	Settings.insert("NeoKad/LastDistance", CSettings::SSetting(0));
	Settings.insert("NeoKad/EntityKey", CSettings::SSetting(""));
	Settings.insert("NeoKad/StoreKey", CSettings::SSetting(""));

	Settings.insert("BitTorrent/Tracking", CSettings::SSetting("All-Tiers")); // "No-Trackers" "One-Tracker" "All-Trackers" "All-Tiers"
	Settings.insert("BitTorrent/MaxPeers", CSettings::SSetting(500, 10, 1000));
	Settings.insert("BitTorrent/ServerPort", CSettings::SSetting(GetRandomInt(6800, 6900)));
	Settings.insert("BitTorrent/AnnounceInterval",CSettings::SSetting(MIN2S(5),MIN2S(1),MIN2S(60)));
	Settings.insert("BitTorrent/AnnounceWanted",CSettings::SSetting(200,1,1000));
	Settings.insert("BitTorrent/ConnectTimeout",CSettings::SSetting(20,10,30));
	Settings.insert("BitTorrent/IdleTimeout",CSettings::SSetting(90,15,320));
	Settings.insert("BitTorrent/KeepAlive",CSettings::SSetting(30,15,60));
	Settings.insert("BitTorrent/RequestTimeout",CSettings::SSetting(60,15,120));
	Settings.insert("BitTorrent/RequestLimit",CSettings::SSetting(250,100,250));
	//Settings.insert("BitTorrent/RetryInterval",CSettings::SSetting(MIN2S(10),MIN2S(1),MIN2S(58)));
	Settings.insert("BitTorrent/Encryption", CSettings::SSetting("Support"));
	Settings.insert("BitTorrent/uTP", CSettings::SSetting(true));
	Settings.insert("BitTorrent/MaxRendezvous", CSettings::SSetting(5,3,10));
	Settings.insert("BitTorrent/CryptTCPPaddingLength",CSettings::SSetting(127,0,511));
	Settings.insert("BitTorrent/EnableTracker",CSettings::SSetting(1)); // 0 off, 1 on, 2 on but only for own torrents
	Settings.insert("BitTorrent/SavePeers",CSettings::SSetting(false));
	Settings.insert("BitTorrent/Enable", CSettings::SSetting(true));
	Settings.insert("BitTorrent/MaxTorrents", CSettings::SSetting(5));
	Settings.insert("BitTorrent/Upload", CSettings::SSetting(-1));
	Settings.insert("BitTorrent/Download", CSettings::SSetting(-1));
	Settings.insert("BitTorrent/Priority", CSettings::SSetting(0));

	Settings.insert("MainlineDHT/NodeID", CSettings::SSetting(""));
	Settings.insert("MainlineDHT/Address", CSettings::SSetting(""));
	Settings.insert("MainlineDHT/RouterNodes", CSettings::SSetting(QString("router.bittorrent.com:6881|router.utorrent.com:6881").split("|")));

	Settings.insert("Ed2kMule/UserHash", CSettings::SSetting(""));
	Settings.insert("Ed2kMule/NickName", CSettings::SSetting("http://neoloader.to"));
	Settings.insert("Ed2kMule/MaxSources", CSettings::SSetting(500, 50, 5000));
	Settings.insert("Ed2kMule/TCPPort", CSettings::SSetting(GetRandomInt(4600, 4700)));
	Settings.insert("Ed2kMule/UDPPort", CSettings::SSetting(GetRandomInt(4700, 4800)));
	Settings.insert("Ed2kMule/CheckFWInterval", CSettings::SSetting(MIN2S(15), MIN2S(10), MIN2S(60)));
	Settings.insert("Ed2kMule/ConnectTimeout",CSettings::SSetting(20,10,30));
	Settings.insert("Ed2kMule/IdleTimeout",CSettings::SSetting(60,15,320));
	Settings.insert("Ed2kMule/IncomingTimeOut",CSettings::SSetting(MIN2S(10),MIN2S(5),MIN2S(60)));
	Settings.insert("Ed2kMule/ReaskInterval",CSettings::SSetting(MIN2S(29),MIN2S(10),MIN2S(58)));
	Settings.insert("Ed2kMule/LanMode", CSettings::SSetting(false));
	Settings.insert("Ed2kMule/Obfuscation", CSettings::SSetting("Support"));
	Settings.insert("Ed2kMule/CryptTCPPaddingLength",CSettings::SSetting(127,0,254));
	Settings.insert("Ed2kMule/NatTraversal", CSettings::SSetting(true));
	Settings.insert("Ed2kMule/KadLookupInterval",CSettings::SSetting(MIN2S(29),MIN2S(10),MIN2S(58)));
	Settings.insert("Ed2kMule/KadMaxLookup",CSettings::SSetting(5,5,50));
	Settings.insert("Ed2kMule/SXInterval",CSettings::SSetting(MIN2S(10),MIN2S(5),MIN2S(40)));
	Settings.insert("Ed2kMule/SXVolume",CSettings::SSetting(20,5,50));
	Settings.insert("Ed2kMule/SaveSources",CSettings::SSetting(false));
	Settings.insert("Ed2kMule/Enable", CSettings::SSetting(true));
	Settings.insert("Ed2kMule/ShareDefault", CSettings::SSetting(false));
	Settings.insert("Ed2kMule/Upload", CSettings::SSetting(-1));
	Settings.insert("Ed2kMule/Download", CSettings::SSetting(-1));
	Settings.insert("Ed2kMule/Priority", CSettings::SSetting(0));
	Settings.insert("Ed2kMule/HashMode", CSettings::SSetting("Random-Secure")); // Random, Static, Random-Secure, Static-Secure
	Settings.insert("Ed2kMule/SUIKey", CSettings::SSetting(""));
	Settings.insert("Ed2kMule/HashAge", CSettings::SSetting(""));
	Settings.insert("Ed2kMule/UseServers", CSettings::SSetting("Static")); // None, Custom, Static, One, Booth
	Settings.insert("Ed2kMule/StaticServers", CSettings::SSetting(QString("ed2k://|server|91.200.42.46|1176|/\r\ned2k://|server|91.200.42.47|3883|/\r\ned2k://|server|91.200.42.119|9939|/\r\ned2k://|server|176.103.48.36|4184|/\r\ned2k://|server|77.120.115.66|5041|/\r\ned2k://|server|46.105.126.71|4661|/").split("\r\n")));
	Settings.insert("Ed2kMule/KeepServers",CSettings::SSetting(MIN2S(10),MIN2S(5),MIN2S(58)));
	Settings.insert("Ed2kMule/MinHordeSlots",CSettings::SSetting(1,0,10));

	Settings.insert("Hoster/MinWebTasks", CSettings::SSetting(10));
	Settings.insert("Hoster/MaxNewPer5Sec", CSettings::SSetting(25));
	Settings.insert("Hoster/MaxWebTasks", CSettings::SSetting(100));
	Settings.insert("Hoster/AccessFailedTimeOut", CSettings::SSetting(10));
	Settings.insert("Hoster/ServerBanTime", CSettings::SSetting(HR2S(2)));
	Settings.insert("Hoster/ServerBanTreshold", CSettings::SSetting(20));
	Settings.insert("Hoster/ServerDownTreshold", CSettings::SSetting(4));
	Settings.insert("Hoster/MaxUploads", CSettings::SSetting(1));
	Settings.insert("Hoster/MaxDownloads", CSettings::SSetting(5));
	Settings.insert("Hoster/MaxChecks", CSettings::SSetting(5));
	Settings.insert("Hoster/ReCheckInterval", CSettings::SSetting(HR2S(24),HR2S(1),HR2S(240)));
	Settings.insert("Hoster/AutoReUpload", CSettings::SSetting(true));
	Settings.insert("Hoster/MaxCheckouts", CSettings::SSetting(3));
	Settings.insert("Hoster/CheckoutInterval", CSettings::SSetting(MIN2S(60),MIN2S(30),HR2S(6)));
	Settings.insert("Hoster/MaxTransferRetry", CSettings::SSetting(3));
	Settings.insert("Hoster/ServerRetryDelay", CSettings::SSetting(MIN2S(2)));
	Settings.insert("Hoster/CaptchaRetryDelay", CSettings::SSetting(MIN2S(20)));
	Settings.insert("Hoster/MaxBadCaptcha", CSettings::SSetting(3));
	Settings.insert("Hoster/ManualCaptcha", CSettings::SSetting(1));
	Settings.insert("Hoster/AutoCleanUp", CSettings::SSetting(true));
	Settings.insert("Hoster/Encap", CSettings::SSetting("7z"));
	Settings.insert("Hoster/RarPath", CSettings::SSetting(""));
	Settings.insert("Hoster/RarComment", CSettings::SSetting(""));
#ifdef CRAWLER
	Settings.insert("Hoster/DecapCleanup", CSettings::SSetting("*.url;*.lnk;thumbs.db"));
	Settings.insert("Hoster/KeepSingleArchives", CSettings::SSetting(false));
#else
	Settings.insert("Hoster/KeepSingleArchives", CSettings::SSetting(true));
#endif
	Settings.insert("Hoster/EncryptUploads", CSettings::SSetting("RC4"));
	Settings.insert("Hoster/ProtectLinks", CSettings::SSetting(true));
	Settings.insert("Hoster/Enable", CSettings::SSetting(true));
	Settings.insert("Hoster/UseCaptcha", CSettings::SSetting(false));
	Settings.insert("Hoster/PartSize", CSettings::SSetting(0));
	Settings.insert("Hoster/MaxArcTasks", CSettings::SSetting(5));
	Settings.insert("Hoster/Upload", CSettings::SSetting(-1));
	Settings.insert("Hoster/Download", CSettings::SSetting(-1));
	Settings.insert("Hoster/Priority", CSettings::SSetting(0));

	Settings.insert("HosterCache/CacheMode", CSettings::SSetting("Off")); // Off, On, All
	Settings.insert("HosterCache/SelectionMode", CSettings::SSetting("Auto")); // All, Auto, Selected - hosters
	Settings.insert("HosterCache/PartSize", CSettings::SSetting(MB2B(100)));
	Settings.insert("HosterCache/MaxAvail", CSettings::SSetting(3));
	Settings.insert("HosterCache/MaxJoints", CSettings::SSetting(1));

	Settings.insert("HashInspector/Majority",CSettings::SSetting(90,80,100));
	Settings.insert("HashInspector/Quorum",CSettings::SSetting(10,5,20));

	Settings.insert("CorruptionLogger/MonitorTime", CSettings::SSetting(HR2S(4),HR2S(2),HR2S(16)));
	Settings.insert("CorruptionLogger/DropRatio", CSettings::SSetting(40, 10, 100));

	//Settings.insert("Script/AutoUpdate", CSettings::SSetting(true));
	//Settings.insert("Script/UserName", CSettings::SSetting(""));
	//Settings.insert("Script/Password", CSettings::SSetting(""));

	Settings.insert("Browser/MaxRetries", CSettings::SSetting(3));
	Settings.insert("Browser/TimeoutSecs", CSettings::SSetting(30));
	Settings.insert("Browser/ReplyBuffer", CSettings::SSetting(MB2B(4),KB2B(256),MB2B(64)));
	Settings.insert("Browser/TransferBuffer",CSettings::SSetting(KB2B(16),KB2B(4),KB2B(256)));

	return Settings;
}